实验四-鼠标交互.doc

实验四-鼠标交互.doc

ID:58427592

大小:117.00 KB

页数:9页

时间:2020-09-03

实验四-鼠标交互.doc_第1页
实验四-鼠标交互.doc_第2页
实验四-鼠标交互.doc_第3页
实验四-鼠标交互.doc_第4页
实验四-鼠标交互.doc_第5页
资源描述:

《实验四-鼠标交互.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、OpenGL的鼠标交互一、实验目的1、掌握OpenGL的鼠标按钮响应函数2、掌握OpenGL的鼠标移动响应函数3、进一步巩固OpenGL的基本图元绘制的基础二、实验环境硬件要求:PC机,主流配置,最好为独立显卡,显存512M以上。软件环境:操作系统:WindowsXP。语言开发工具:MicrosoftVisualstudio2008,VisualC++。三、实验内容与要求要求:实验课上老师要求的效果截图、及其相应代码拷贝到实验报告文档里。WORD文档命名方式:学号姓名-实验序号-实验名称。内容:1)鼠标画草图-实现鼠标点到

2、哪,线就画到哪思路:1.在主程序注册鼠标响应和鼠标移动子函数glutMouseFunc(mymouse);glutMotionFunc(mymotion);放在display注册之后和mainloop之前2.在程序头部声明鼠标响应和鼠标移动子函数voidmyMouse(intbutton,intstate,intx,inty);voidmyMotion(intx,inty);3.构造鼠标响应子函数//鼠标按钮响应事件..voidmyMouse(intbutton,intstate,intx,inty){//鼠标左键按下—确

3、定起始点//鼠标左键松开___画最后一个顶点,画线结束}4.构造鼠标移动子函数//鼠标移动时获得鼠标移动中的坐标-----------------------------------------------------voidmyMotion(intx,inty){//鼠标移动__线画到哪}5.修改显示函数Display();附:画直线程序框架#include"stdafx.h"#includeintww,hh;//fordisplaywindowwidthandheightvoidMyinit(void)

4、;voidReshape(intw,inth);voidDisplay(void);intAPIENTRY_tWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPTSTRlpCmdLine,intnCmdShow){UNREFERENCED_PARAMETER(hPrevInstance);UNREFERENCED_PARAMETER(lpCmdLine);char*argv[]={"hello",""};intargc=2;//must/shouldmatchthenu

5、mberofstringsinargvglutInit(&argc,argv);//初始化GLUT库;glutInitWindowSize(800,600);//设置显示窗口大小glutInitDisplayMode(GLUT_DOUBLE

6、GLUT_RGB);//设置显示模式;(注意双缓冲)glutCreateWindow("鼠标画线小程序演示");//创建显示窗口Myinit();glutDisplayFunc(Display);//注册显示回调函数glutReshapeFunc(Reshape);//注册窗口改变回调

7、函数glutMainLoop();//进入事件处理循环return0;}voidMyinit(void){glClearColor(0.0,0.0,0.0,0.0);glLineWidth(3.0);}//渲染绘制子程序--------------------------------------------------------------------------voidDisplay(void){glClear(GL_COLOR_BUFFER_BIT);//刷新颜色缓冲区;glBegin(GL_LINES);glVer

8、tex2f(0,0);glVertex2f(ww,hh);glEnd();glutSwapBuffers();//双缓冲的刷新模式;}//-----------------------------------------------voidReshape(intw,inth)//窗口改变时自动获取显示窗口的宽w和高h{glMatrixMode(GL_PROJECTION);//投影矩阵模式glLoadIdentity();//矩阵堆栈清空glViewport(0,0,w,h);//设置视区大小gluOrtho2D(0,w,

9、0,h);//设置裁剪窗口大小ww=w;hh=h;}2)鼠标画线阅读OpenGL鼠标画线程序,能够实现在绘制窗口用鼠标交互绘制若干条直线,鼠标左键首先按下,确定直线的起始点,鼠标左键按下同时移动,看到画线过程,鼠标左键松开时,确定直线的终点,可重复画多条直线。实现主要思路:1)写出画静止若干条直线程序框

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

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

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