扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
#include <stdlib.h> #include <GL/glut.h> void background(void) { glClearColor(0.0,0.0,0.0,0.0);//设置背景颜色为黑色 } void myDisplay(void) { glClear(GL_COLOR_BUFFER_BIT);//buffer设置为颜色可写 glBegin(GL_TRIANGLES);//开始画三角形 glShadeModel(GL_SMOOTH);//设置为光滑明暗模式 glColor3f(1.0,0.0,0.0);//设置第一个顶点为红色 glVertex2f(-1.0,-1.0);//设置第一个顶点的坐标为(-1.0,-1.0) glColor3f(0.0,1.0,0.0);//设置第二个顶点为绿色 glVertex2f(0.0,-1.0);//设置第二个顶点的坐标为(0.0,-1.0) glColor3f(0.0,0.0,1.0);//设置第三个顶点为蓝色 glVertex2f(-0.5,1.0);//设置第三个顶点的坐标为(-0.5,1.0) glEnd();//三角形结束 glFlush();//强制OpenGL函数在有限时间内运行 } void myReshape(GLsizei w,GLsizei h) { glViewport(0,0,w,h);//设置视口 glMatrixMode(GL_PROJECTION);//指明当前矩阵为GL_PROJECTION glLoadIdentity();//将当前矩阵置换为单位阵 if(w <= h) gluOrtho2D(-1.0,1.5,-1.5,1.5*(GLfloat)h/(GLfloat)w);//定义二维正视投影矩阵 else gluOrtho2D(-1.0,1.5*(GLfloat)w/(GLfloat)h,-1.5,1.5); glMatrixMode(GL_MODELVIEW);//指明当前矩阵为GL_MODELVIEW } int main(int argc,char ** argv) { /*初始化*/ glutInit(&argc,argv); glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB); glutInitWindowSize(400,400); glutInitWindowPosition(200,200); /*创建窗口*/ glutCreateWindow("Triangle"); /*绘制与显示*/ background(); glutReshapeFunc(myReshape); glutDisplayFunc(myDisplay); glutMainLoop(); return(0); } |
图一:一个彩色的三角形 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者