实验五opengl交互快捷菜单学生用

实验五opengl交互快捷菜单学生用

ID:22982222

大小:168.35 KB

页数:8页

时间:2018-11-02

实验五opengl交互快捷菜单学生用_第1页
实验五opengl交互快捷菜单学生用_第2页
实验五opengl交互快捷菜单学生用_第3页
实验五opengl交互快捷菜单学生用_第4页
实验五opengl交互快捷菜单学生用_第5页
资源描述:

《实验五opengl交互快捷菜单学生用》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验五:使用键盘、菜单的方式完成对三维物体的交互1.实验目的:理解掌握一个OpenGL程序的常见交互方法---键盘,快捷菜单。2.实验内容.•1)利用现成的绘制立体的API,如glutWireSphere绘制球,glutWireCone绘制椎体,glutWireCube绘制立体,glutWireTorus绘制圆环,glutWireTeapot绘制茶壶,glutWireOctahedron绘制八面体。2)使用键盘、菜单的方式绘制三维物体3)单击鼠标右键在弹出的菜单里可以选择需要绘制的立体以及是wire还是solid填充的,4)按键盘的UP、DOWN、

2、LEFT、RIGHT按键可以旋转坐标系。5)由于Glut提供的多面体API默认半径是l.Of的,使用gIScalef对其进行了放大。显示结果如下:ijkeymenudr^w3objModelWireOrSolidSphereConeCubeTorusDodecahedronTeapotOctahedronTetrahedronZM

3、Msny:**//色ilH纟及菜i*pMs^gMgPM=K!MtPl绅teMenuQnyMjj.pjj);一&j.M讲冬PMlPkCy(Sphere’’,1):*»K!-MtMs!M?r?jjfePkCyXGone’,2):豕1MtW曲?屢知玄?xCCube”.3):K!姓A賊MgflM尽PkC乂.Torus’.4):艮t!X(Dodecahedron•’,5);♦运PVy(了eapot’•6)••pKlMtA如M叨冰Pk〔yCOctahedron•••7):wgIwtM辦rahedron••.8):尺jMtMdHgrWjfegkCyCIcosah

4、edron".9)DljxgM印Aj=glutGrcateMenu(myMenu);&!•啦蝴-卿賊jy.CWire’.10):一gJ-MtA相Henufotty(’SoIid".11):nMajnMenu=gjutCreatcMenu(myMenu);//创建主菜单w&!jAtAsisj知feM?PMCModeI".nModeMenu):glutAddSublilenuCWireOrSolid'.nWireMenu):glutAttachMenu(GLUT_R16HT.BUTT0N)://将菜单榜定到鼠标右键上p添加特殊键回调函数glutSpec

5、iaIFunc(specialKey);//设置按键输入处理回调函数2、增加myMenu菜单回调子函数://菜单回调函数voidmyMenu(intvalue)1gwjJ^feXvaIuc){55551:case2;case3:挪?4:case5:S55S6:case7:iModeI=SPHERE;break;vkAAMMMWWMMWiModel=CONE;break;iModel=CUBE;break;jModel=TORUS;break;iMode!^DODECAHEDRON:break;jJ(g49l=TEAP0T:break;iModel=

6、OCTAHEDRON.break;fw*禮wc^sg8:iModei=TETRAHEDRON:break;case9.iModeI=ICOSAHEDRON.break.g轉g10.坤ij,=QL_TRUE.break;.'pase11:bWir^=GLFALSE,break;pdefault:break;)&bd£p§l!Mispjjy0;//重新绘制并在程序开头设置相关变量说明:明朔MODELS{SPHERE=O.pCONE.一CUBE.TORUS.DODECAHEDRON.TEAPOT.OCTAHEDRON,pTETRAHEDRON.ICOSA

7、HEDRONp}:GLintiModel=SPHERE;3、添加键盘特殊键控制子函数voidspeciaIKey(intkey.intx.inty)^{if(key=GLUTKEYUP)(xRot^5.Of;}el5Sif(key~GLUT_KEY_DOWN)p

8、

9、oatyRot-0.Of;//绕y轴旋转角度4、修改相关窗口人小改变时的代码voidReshape(GLintw.6Lin

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。