本文主要是介绍使用opengl画框,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
以下是使用OpenGL画框的示例代码:
#include <GL/glut.h>void display()
{glClear(GL_COLOR_BUFFER_BIT);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(0, 800, 0, 600);glMatrixMode(GL_MODELVIEW);glLoadIdentity();glColor3f(1.0f, 0.0f, 0.0f);glLineWidth(2.0f);glBegin(GL_LINE_LOOP);glVertex2f(100, 100);glVertex2f(700, 100);glVertex2f(700, 500);glVertex2f(100, 500);glEnd();glFlush();
}int main(int argc, char** argv)
{glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(800, 600);glutCreateWindow("OpenGL Box");glClearColor(0.0f, 0.0f, 0.0f, 1.0f);glutDisplayFunc(display);glutMainLoop();return 0;
}
这个程序使用了OpenGL的固定功能管线来绘制一个框。在display
函数中,我们首先清除颜色缓冲区,然后通过以下步骤设置投影矩阵和模型视图矩阵:
- 选择投影矩阵堆栈,并重置为单位矩阵;
- 使用
gluOrtho2D
函数来设置一个二维正交投影; - 选择模型视图矩阵堆栈,并重置为单位矩阵。
然后,我们使用红色绘制线框的颜色和线宽。通过glBegin
和glEnd
函数,我们在顶点模式下绘制四个线段,形成一个闭合的矩形。最后,我们调用glFlush
函数将绘制的内容刷新到屏幕上。
在main
函数中,我们使用glutInit
和glutInitDisplayMode
初始化OpenGL环境和显示模式。然后,我们创建一个窗口,设置窗口尺寸,并设置窗口标题。接下来,我们设置清除颜色,并将display
函数作为显示回调函数。最后,我们进入主循环,等待窗口事件。
编译运行这个程序,将会在窗口中绘制一个红色的矩形框。
这篇关于使用opengl画框的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!