欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

opengl绘制长方体线框_OpenGL绘制长方体

发布时间:2023/12/15 编程问答 37 豆豆
生活随笔 收集整理的这篇文章主要介绍了 opengl绘制长方体线框_OpenGL绘制长方体 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

#include   //引用相关包

void display(void)

{

glClear(GL_COLOR_BUFFER_BIT);  //清空颜色缓冲区

glColor3f(0,1,1);   //重置颜色

glLoadIdentity();   //清空矩阵

glTranslatef(0,0,-5); //将场景中的物体沿z轴负方向移动5个单位长

glRotatef(40,0,1,0);

//gluLookAt(0,0,5,0,0,0,0,2,0); //视点变换

glScalef(1,2,1);  //模型变换

glutWireCube(1.0); //绘制实心立方体和线框立方体

glFlush();   //刷新窗口以显示当前绘制图形

}

void init(void)

{

glClearColor(0,0,0,0);

glShadeModel(GL_FLAT); //选择平面明暗模式或光滑明暗模式

}

void reshape(int w,int h)

{

glViewport(0,0,(GLsizei)w,(GLsizei)h);   //设置机口

glMatrixMode(GL_PROJECTION);  //指定哪一个矩阵是当前矩阵

glLoadIdentity();

gluPerspective(60,1,1.5,20);   //创建透视投影矩阵(fovy,aspect,zNear,zFar);

//glFrustum(-1,1,-1,1,1.5,20.0);  //用透视矩阵乘以当前矩阵(left,Right,bottom,top,near,far);

glMatrixMode(GL_MODELVIEW);

}

int main(int argc, char *argv[])

{

glutInit(&argc, argv); //固定格式

glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);   //缓存模式

glutInitWindowSize(400, 400);    //显示框的大小

glutInitWindowPosition(400,400); //确定显示框左上角的位置

glutCreateWindow("第⑤个OpenGL程序(绘制立方体)");

init();

glutDisplayFunc(display);

glutReshapeFunc(reshape);

glutMainLoop(); //进人GLUT事件处理循环

return 0;

}

运行结果:

创作挑战赛新人创作奖励来咯,坚持创作打卡瓜分现金大奖

总结

以上是生活随笔为你收集整理的opengl绘制长方体线框_OpenGL绘制长方体的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。