- 1、本文档共3页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpenGL编程轻松入门之堆栈操作
OpenGL编程轻松入门之堆栈操作
2006-05-17 09:20作者:黄燕出处:天极开发责任编辑:方舟
本节中的例子其结构和例1一样,仅改变myDisplay和myReshape。 例4:利用堆栈绘制三个物体--一个绿色的茶壶,一个蓝色的茶壶,一个红色的立方体(部分代码)
void myDisplay void glClear GL_COLOR_BUFFER_BIT ; /*蓝色茶壶*/ glPushMatrix ; glColor3f 0.0,0.0,1.0 ; glutSolidTeapot 1.5 ; glPopMatrix ; /*红色立方体*/ glPushMatrix ; glTranslatef 5.0,0.0,0.0 ;//坐标变换 glColor3f 1.0,0.0,0.0 ; glutSolidCube 1.0 ; glPopMatrix ; /*绿色茶壶*/ glPushMatrix ; glTranslatef -5.0,0.0,0.0 ;//坐标变换 glColor3f 0.0,1.0,0.0 ; glutSolidTeapot 1.0 ; glPopMatrix ; glFlush ; void myReshape GLsizei w,GLsizei h glViewport 0,0,w,h ; glMatrixMode GL_PROJECTION ; glLoadIdentity ; gluPerspective 80.0, GLdouble w/ GLdouble h,1.0,20.0 ;//创建透视投影矩阵 glMatrixMode GL_MODELVIEW ; glLoadIdentity ; glTranslatef 0.0,0.0,-8.0 ; 运行后,我们可以看到左边为一个绿色的茶壶,中间为蓝色的茶壶,右边为红色的立方体,如图四。现在我们注释掉所有的glPushMatrix ;glPopMatrix ;运行后我们会发现两个茶壶重叠在一起,如图五。这是因为glPushMatrix ;glPopMatrix ;使得坐标转换的原始坐标都是最初始的坐标。而将glPushMatrix ; glPopMatrix 注释掉后,glTranslatef 5.0,0.0,0.0 ; glTranslatef -5.0,0.0,0.0 ;两行语句使得绿色茶壶回到了(0,0)就和蓝色的茶壶重叠在一起。 除此之外还有很多堆栈操作,需要用时可以通过查MSDN或网络或有关书籍。
图四:三个不重叠的物体 图五:两个茶壶重叠在一起
文档评论(0)