- 1、本文档共26页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机图形与图像 第三章 第二节 回调函数的应用
计算机图形与图像
计算机学院黄章进
zhuang@
第三章第二节
回调函数的应用
2
主要内容
• 事件驱动编程
– 鼠标
–键盘
– 窗口改变
• 弹出式菜单
3
使用定位设备
• 一般把定位设备假定成鼠标,不过定位设备也
可以是跟踪球或数据板
• 有两类事件和定位设备相关联
– 鼠标事件(mouse event):当鼠标的一个按键被按
下或释放。
• 返回的信息包括:生成这个事件的鼠标按键、事件之后
按键的状态(释放或按下)、窗口坐标系(原点位于左
上角)中鼠标光标位置
– 移动事件:如果鼠标在某个按键被按下时移动,就
发生了移动事件(move event);如果移动时没有按
键被按下,这个事件称为被动移动事件(passive
move event)
4
鼠标回调函数
glutMouseFunc(mouse)
void mouse(int button, int state, int
x, int y)
– 其中button的值可能是
GLUT_LEFT_BUTTON,
GLUT_MIDDLE_BUTTON,
GLUT_RIGHT_BUTTON
表示哪个按钮导致了事件发生
– state表示相应按钮的状态:
GLUT_UP, GLUT_DOWN
– x, y表示在窗口中的位置
5
定位
• 在屏幕上的位置通常是以像素为单位的,原点在左上
角
– 因为显示器自顶向下刷新显示内容
• 在OpenGL 中使用的世界坐标系,其原点在左下角
• 在这个坐标系中的y坐标需要从窗口高度中减去回调函
数返回的y值:y = h - y
w
y
(0,0) h
(x,y)
h-y
6
获取窗口尺寸
• 为了完成y坐标的转换,需要知道窗口的尺
寸
– 在程序执行过程中,高度可能发生改变
– 需要利用一个全局变量跟踪其变化
– 新高度值返回给形状改变回调函数(见后)
– 也可以用查询函数glGetIntegerv()和
glGetFloatv() 获取,因为高度是状态的一部分
7
结束程序
• 在以前的程序中没有办法通过OpenGL结束
当前程序
• 可以利用简单的鼠标回调函数做到这一点
void mouse(int btn , int state, int x, int y)
{
if(btn==GLUT_RIGHT_BUTTON state==GLUT_DOWN)
您可能关注的文档
- CP 系列操作手册.pdf
- 驾驶舱中英对照.pdf
- 长红小学 U4 I live in a big house.ppt
- Tek_PA1000泰克功率计使用手册.pdf
- 7A Unit7 Period3(ReadingⅡ).doc
- What_do_you_do_on_Sundays?.ppt
- PEP五年级下册英语Unit 1 My day Part B.ppt
- 2024X医院党风廉政建设工作总结报告(精选).docx
- 2024二建《市政工程》考前基础特训内部模拟题含答案.docx
- 2024安徽辅警招聘考试题库(通用题型).docx
- 2025届江苏省无锡江阴市要塞片十校联考最后历史试题含解析.doc
- 江苏省扬州市江都区达标名校2025届中考历史模拟试题含解析.doc
- 湖北省襄阳市谷城县重点中学2025届中考二模历史试题含解析.doc
- 广西南宁市良庆区重点达标名校2025届中考历史考前最后一卷含解析.doc
- 黑龙江省鸡西市第十六中学2025届中考历史对点突破模拟试卷含解析.doc
- 上海市普陀区2025届中考生物模拟预测题含解析.doc
- 2025届内蒙古乌兰察布市重点达标名校中考生物全真模拟试题含解析.doc
- 2024辅警面试问题及答案.docx
- 3-6岁幼儿学习与发展指南测试题及答案2.docx
- 8卫生管理师职称考试之《医院管理学》知识点及试题.docx
最近下载
- 人教版八下英语语法.doc VIP
- 七年级历史下期末试卷2012.doc VIP
- 2024年上半年教师资格证考试《教育教学知识与能力》(小学)真题.docx
- 2022-2023年八年级会考一模生物试卷(山东省青岛市市北区).docx VIP
- 恒生PB系统介绍.pptx VIP
- U盘盖注塑模模具设计.doc VIP
- 2024年中考语文复习【整本书阅读之12部名著内容勾连题】精练附答案解析.docx VIP
- 2025年安全月主题宣贯课件ppt65页.pptx VIP
- 小型水库雨水情测报和大坝安全监测设施建设与运行技术指南.pdf VIP
- 2024年上半年教师资格证考试《教育教学知识与能力》(小学)真题.pdf
文档评论(0)