三 OpenGL常见平面图形绘制代码
// 代码模板
#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常见平面图形绘制代码相关推荐
- 《视觉开发专题》之 OpenGL 3D动画绘制图形学概念的理解
知识前导 计算机图形学的终极目标--讨好人类视觉系统 最近在啃的书中有一本叫<计算机图形学 原理及实践>,这本书让我深有感触的是其绪论中对计算机构建真实感图像的理解:我们所致力的最终目 ...
- Qt OpenGL(三十六)——Qt OpenGL 核心模式-绘制雷达坐标系
提示:本系列文章的索引目录在下面文章的链接里(点击下面可以跳转查看): Qt OpenGL 核心模式版本文章目录 Qt OpenGL(三十六)--Qt OpenGL 核心模式-绘制雷达坐标系 一.场景 ...
- OpenGL十二讲代码
文章目录 OpenGL十二讲代码-by yjq 参考资料 第一讲 画一个矩形 第二讲 画一个五角星 画一个圆 画一个正弦函数 第三讲 画点 画虚线 多边形 多边形的两面 前后反转 剔除多边形表面 镂空 ...
- opengl学习2 绘制三角形和矩形
在OpenGL中,任何事物都在3D空间中,而屏幕和窗口却是2D像素数组,这导致OpenGL的大部分工作都是关于把3D坐标转变为适应你屏幕的2D像素.3D坐标转为2D坐标的处理过程是由OpenGL的图形 ...
- 第三章 使用 matplotlib 绘制直方图
系列文章目录 第一章 使用 matplotlib 绘制折线图 第二章 使用 matplotlib 绘制条形图 第三章 使用 matplotlib 绘制直方图 第四章 使用 matplotlib 绘制散 ...
- 学习OpenGL ES之绘制圆柱体
获取示例代码 本文将要介绍如何使用代码绘制一个圆柱体,通过绘制圆柱体可以更好的掌握法线,UV,TriangleFan,TriangleStrip等相关知识.在绘制之前,先进行一些准备工作. GLGeo ...
- 【OpenGL学习】绘制三角形
绘制三角形 上节中完成了窗口的绘制,这节我们主要实现在窗口中完成一个最简单的三角形的绘制,同样,要完成一个三角形的绘制,需要以下内容: Vertex Array 存放顶点数据的数组(实际上存放的是顶点 ...
- OpenGL实验:绘制彩色五角星
OpenGL实验:绘制彩色五角星 第二次编程作业内容 用配置好的OpenGL环境实现彩色五角星效果,以及把五角星作为3D对象绘制出来,通过按键能够调整角度(用J.K.L三个键分别控制三个互相正交方向上 ...
- Android使用NDK OpenGL ES3.0绘制一个三角形
Android使用NDK OpenGL ES3.0绘制一个三角形 [尊重原创,转载请注明出处]https://blog.csdn.net/guyuealian/article/details/820 ...
最新文章
- 目标检测模型从训练到部署!
- 题目1168:字符串的查找删除
- TCP/IP / TIME_WAIT 状态的作用 / MSL、TTL、RTT
- 【Android】Android中WIFI开发总结(一)
- Java中的紧凑堆外结构/组合
- 第48课 加加乐 《小学生C++趣味编程》
- 龙星电脑横机制版软件_简用仓库管理软件v8.6.3-简用仓库管理软件电脑版下载...
- 程序哲学how to make love,简称 html
- OpenAI公布强化学习新算法,可控制复杂机器人
- 计算存储和网络是推动云计算发展的三驾马车
- wireshark IP地址域名解析
- office365服务器没有响应,office 365 使用过程中频繁出现无响应
- 推荐系统中learning to rank(学习排名)
- 利用匿名管道实现远程CMD---我的解读
- 扇贝编程python无法退款_扇贝编程python学习笔记-基础篇1
- 相关公式如下:v=at;s=1/2*a*t2;其中v是速度,a是加速度,t是时间,s是距离。编写程序计算该飞机的加速度。
- YII2 beforeSave 的应用
- 创业启动第一步,就是写一份规范的商业计划书(BP)
- 使用定时器的中断方式。具体功能描述如下:使用定时器控制三位数码管显示时间,也可以轻易改为两位数码管显示时间
- 【保姆级教程】在龙芯3A5000上编译arrow-0.15.1
热门文章
- 手机开发之H5+规范的手机按键处理
- php分析抓取视频网站视频链接与截图[zz]
- Tampermonkey---浏览器安装扩展程序教程(DSYY)
- macos 环境下搭建 windbg 虚拟机双机调试环境
- 华三交换机IRF做堆叠
- 计算机硬件 系统安装维护教程 04系统安装-Win-04:Windows To Go便携式系统U盘制作
- 预言择天记最大的坑!陈长生到底是谁!
- java 本质_java final本质解释,_Java_ 少侠科技
- 电动汽车仿真系列-基于Simulink的并联混合动力汽车建模分析
- IT互联网创业公司网站搭建模板