// 代码模板

#include <glut.h>void displayFunc()
{glClearColor(0.0f, 0.0f, 0.0f, 0.0f);// 在RGB模式下,使用glClearColor清空之后画布的颜色glClear(GL_COLOR_BUFFER_BIT);// 清空画布glColor3f(1.0f, 0.0f, 0.0f);// 设置画笔颜色// do somethinsglFlush();// 清空缓冲区,立即执行绘制命令
}int main(int argc, char* argv[])
{glutInit(&argc, argv);// 对GLUT进行初始化glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);// 设置显示模式(RGB颜色|单缓冲,对应的还有索引颜色和双缓冲)glutInitWindowPosition(100, 100);// 设置窗口的默认显示位置glutInitWindowSize(400, 400);// 设置窗口的大小glutCreateWindow("OpenGL");// 设置窗口的标题glutDisplayFunc(&displayFunc);// 设置绘图函数glutMainLoop();// 开启消息循环return 0;
}

// 画点

void displayFunc()
{glClearColor(0.0f, 0.0f, 0.0f, 0.0f);// 在RGB模式下,使用glClearColor清空之后画布的颜色glClear(GL_COLOR_BUFFER_BIT);// 清空画布glRectf(0.0f, 0.0f, 0.5f, 0.5f);// 换一个矩形glColor3f(1.0f, 0.0f, 0.0f);// 设置画笔颜色glPointSize(5.0f);// 设置点的大小// 画直线glBegin(GL_POINTS);// 设置绘制模式为点glVertex2f(-0.5f, 0.0f);glVertex2f(-0.5f, -0.5f);glEnd();glFlush();// 清空缓冲区,立即执行绘制命令
}

// 画线
将画点中的GL_POINTS改为GL_LINE就可以画线;
将画点中的glPointSize改为glLineWidth可以设置线宽。

// 画三角形

void displayFunc()
{glClearColor(0.0f, 0.0f, 0.0f, 0.0f);// 在RGB模式下,使用glClearColor清空之后画布的颜色glClear(GL_COLOR_BUFFER_BIT);// 清空画布glColor3f(1.0f, 0.0f, 0.0f);// 设置画笔颜色// 画三角形glBegin(GL_TRIANGLES);// GL_POLYGON绘制模式三角形glVertex2f(-0.5f, 0.0f);glVertex2f(-0.5f, -0.5f);glVertex2f(0.0f, -0.5f);glEnd();glFlush();// 清空缓冲区,立即执行绘制命令
}

// 画矩形

void displayFunc()
{glClearColor(0.0f, 0.0f, 0.0f, 0.0f);// 在RGB模式下,使用glClearColor清空之后画布的颜色glClear(GL_COLOR_BUFFER_BIT);// 清空画布glColor3f(1.0f, 0.0f, 0.0f);// 设置画笔颜色// 画两个点glBegin(GL_POLYGON);// GL_POLYGON绘制模式为多边形glVertex2f(-0.5f, 0.0f);glVertex2f(-0.5f, -0.5f);glVertex2f(0.0f, -0.5f);glVertex2f(0.0f, 0.0f);glEnd();glFlush();// 清空缓冲区,立即执行绘制命令
}

三 OpenGL常见平面图形绘制代码相关推荐

  1. 《视觉开发专题》之 OpenGL 3D动画绘制图形学概念的理解

    知识前导 计算机图形学的终极目标--讨好人类视觉系统   最近在啃的书中有一本叫<计算机图形学 原理及实践>,这本书让我深有感触的是其绪论中对计算机构建真实感图像的理解:我们所致力的最终目 ...

  2. Qt OpenGL(三十六)——Qt OpenGL 核心模式-绘制雷达坐标系

    提示:本系列文章的索引目录在下面文章的链接里(点击下面可以跳转查看): Qt OpenGL 核心模式版本文章目录 Qt OpenGL(三十六)--Qt OpenGL 核心模式-绘制雷达坐标系 一.场景 ...

  3. OpenGL十二讲代码

    文章目录 OpenGL十二讲代码-by yjq 参考资料 第一讲 画一个矩形 第二讲 画一个五角星 画一个圆 画一个正弦函数 第三讲 画点 画虚线 多边形 多边形的两面 前后反转 剔除多边形表面 镂空 ...

  4. opengl学习2 绘制三角形和矩形

    在OpenGL中,任何事物都在3D空间中,而屏幕和窗口却是2D像素数组,这导致OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素.3D坐标转为2D坐标的处理过程是由OpenGL的图形 ...

  5. 第三章 使用 matplotlib 绘制直方图

    系列文章目录 第一章 使用 matplotlib 绘制折线图 第二章 使用 matplotlib 绘制条形图 第三章 使用 matplotlib 绘制直方图 第四章 使用 matplotlib 绘制散 ...

  6. 学习OpenGL ES之绘制圆柱体

    获取示例代码 本文将要介绍如何使用代码绘制一个圆柱体,通过绘制圆柱体可以更好的掌握法线,UV,TriangleFan,TriangleStrip等相关知识.在绘制之前,先进行一些准备工作. GLGeo ...

  7. 【OpenGL学习】绘制三角形

    绘制三角形 上节中完成了窗口的绘制,这节我们主要实现在窗口中完成一个最简单的三角形的绘制,同样,要完成一个三角形的绘制,需要以下内容: Vertex Array 存放顶点数据的数组(实际上存放的是顶点 ...

  8. OpenGL实验:绘制彩色五角星

    OpenGL实验:绘制彩色五角星 第二次编程作业内容 用配置好的OpenGL环境实现彩色五角星效果,以及把五角星作为3D对象绘制出来,通过按键能够调整角度(用J.K.L三个键分别控制三个互相正交方向上 ...

  9. Android使用NDK OpenGL ES3.0绘制一个三角形

    Android使用NDK  OpenGL ES3.0绘制一个三角形 [尊重原创,转载请注明出处]https://blog.csdn.net/guyuealian/article/details/820 ...

最新文章

  1. 目标检测模型从训练到部署!
  2. 题目1168:字符串的查找删除
  3. TCP/IP / TIME_WAIT 状态的作用 / MSL、TTL、RTT
  4. 【Android】Android中WIFI开发总结(一)
  5. Java中的紧凑堆外结构/组合
  6. 第48课 加加乐 《小学生C++趣味编程》
  7. 龙星电脑横机制版软件_简用仓库管理软件v8.6.3-简用仓库管理软件电脑版下载...
  8. 程序哲学how to make love,简称 html
  9. OpenAI公布强化学习新算法,可控制复杂机器人
  10. 计算存储和网络是推动云计算发展的三驾马车
  11. wireshark IP地址域名解析
  12. office365服务器没有响应,office 365 使用过程中频繁出现无响应
  13. 推荐系统中learning to rank(学习排名)
  14. 利用匿名管道实现远程CMD---我的解读
  15. 扇贝编程python无法退款_扇贝编程python学习笔记-基础篇1
  16. 相关公式如下:v=at;s=1/2*a*t2;其中v是速度,a是加速度,t是时间,s是距离。编写程序计算该飞机的加速度。
  17. YII2 beforeSave 的应用
  18. 创业启动第一步,就是写一份规范的商业计划书(BP)
  19. 使用定时器的中断方式。具体功能描述如下:使用定时器控制三位数码管显示时间,也可以轻易改为两位数码管显示时间
  20. 【保姆级教程】在龙芯3A5000上编译arrow-0.15.1

热门文章

  1. 手机开发之H5+规范的手机按键处理
  2. php分析抓取视频网站视频链接与截图[zz]
  3. Tampermonkey---浏览器安装扩展程序教程(DSYY)
  4. macos 环境下搭建 windbg 虚拟机双机调试环境
  5. 华三交换机IRF做堆叠
  6. 计算机硬件 系统安装维护教程 04系统安装-Win-04:Windows To Go便携式系统U盘制作
  7. 预言择天记最大的坑!陈长生到底是谁!
  8. java 本质_java final本质解释,_Java_ 少侠科技
  9. 电动汽车仿真系列-基于Simulink的并联混合动力汽车建模分析
  10. IT互联网创业公司网站搭建模板