用c++语言调用opengl接口创建一个菱形的代码
时间: 2024-05-05 10:15:36 浏览: 11
```c
#include <GL/glut.h>
#include <stdio.h>
void display(){
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_POLYGON);
glVertex2f(-0.5, 0);
glVertex2f(0, 0.5);
glVertex2f(0.5, 0);
glVertex2f(0, -0.5);
glEnd();
glFlush();
}
int main(int argc, char ** argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(500, 500);
glutInitWindowPosition(100, 100);
glutCreateWindow("Diamond");
glClearColor(1.0, 1.0, 1.0, 1.0);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(-1.0, 1.0, -1.0, 1.0);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
```
这个代码使用了OpenGL的基本接口,创建一个菱形,然后在屏幕上显示出来。使用GLUT库来创建窗口并处理事件。在display函数中使用glBegin和glEnd来定义绘制的形状,使用glVertex2f来指定形状的顶点。使用glClearColor来设置背景颜色,使用glMatrixMode和gluOrtho2D来设置视口和投影矩阵。最后调用glutMainLoop来进入事件处理循环。