opengl 绘制正方形
时间: 2023-07-10 09:12:30 浏览: 107
OPEN GL绘制正方形
下面是使用 OpenGL 绘制正方形的示例代码:
```c++
#include <OpenGL/gl.h>
#include <GLUT/glut.h>
void display() {
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-1, 1, -1, 1, -1, 1);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glBegin(GL_QUADS);
glVertex2f(-0.5f, -0.5f);
glVertex2f(0.5f, -0.5f);
glVertex2f(0.5f, 0.5f);
glVertex2f(-0.5f, 0.5f);
glEnd();
glFlush();
}
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500, 500);
glutCreateWindow("OpenGL Square");
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
```
在 `display()` 函数中,我们首先清空了颜色缓冲区,并设置了正交投影矩阵。然后使用 `glBegin()` 和 `glEnd()` 包围了一个矩形,使用 `glVertex2f()` 设置了四个顶点的坐标。最后使用 `glFlush()` 刷新缓冲区即可。
在 `main()` 函数中,我们初始化了 GLUT,并创建了一个窗口。然后将 `display()` 函数设置为回调函数,并调用 `glutMainLoop()` 进入主循环。
阅读全文