中国科学技术大学:《计算机图形学》课程教学资源(讲义)第四章 输入与交互

第四章输入与交互 中国斜学我术大草 University of Science and Technology of China 4.1输入设备 4.2事件驱动编程 4.3弹出式菜单 4.4更多的交互
第四章 输入与交互 4.1 输入设备 4.2 事件驱动编程 4.3 弹出式菜单 4.4 更多的交互 2

4.1输入设备 中国斜草我术大草 University of Science and Technology of China ·物理设备 ·逻辑设备 ·输入模式
4.1 输入设备 • 物理设备 • 逻辑设备 • 输入模式 3

图形输入设备 简中国斜学术大 University ofScience and Technology of Chin ·输入设备可以用下述两种属性中的一种进行描述 一物理属性 ·鼠标键盘跟踪球 一逻辑属性 ·设备通过AP|返回给程序的内容是什么? -位置 一对象标识符(一个整数值) ·模式 一如何以及何时获取输入? ·请求(主动)或者事件(被动)
图形输入设备 • 输入设备可以用下述两种属性中的一种进行描述 – 物理属性 • 鼠标 键盘 跟踪球 – 逻辑属性 • 设备通过API返回给程序的内容是什么? – 位置 – 对象标识符(一个整数值) • 模式 – 如何以及何时获取输入? • 请求(主动)或者事件(被动) 5

物理输入设备 中国斜学我术大草 University of Science and Technology of China ·指向设备:允许用户在屏幕上指定点的位 置,有一个或多个按钮用来向计算机发送 信号或中断请求 ·键盘设备:几乎总是指键盘,也可泛指任 何能向计算机传送字符编码的设备(如, 软键盘) 6
物理输入设备 • 指向设备:允许用户在屏幕上指定点的位 置,有一个或多个按钮用来向计算机发送 信号或中断请求 • 键盘设备:几乎总是指键盘,也可泛指任 何能向计算机传送字符编码的设备(如, 软键盘) •6

指向设备一绝对定位 中国斜学我术大享 University of Science and Technology of China ·绝对定位设备:直接向 操作系统返回屏幕位置 -数据板 一光笔 光电探测器 一触摸屏 阈值探测器 计算机 光笔 数据板
指向设备 – 绝对定位 • 绝对定位设备:直接向 操作系统返回屏幕位置 – 数据板 – 光笔 – 触摸屏 阈值探测器 计算机 光电探测器 光笔 数据板 7

指向设备一相对定位 中国斜学我术大三 versity of scie nce and Technology of China 跟踪球 游戏操纵杆 三维空间球
指向设备 – 相对定位 鼠标 跟踪球 游戏操纵杆 三维空间球 8

相对定位设备 中国斜学我术大 University of Science and Technology of China ·鼠标、跟踪球以及游戏操纵杆等设备向操 作系统返回两个正交的速度分量值 一当鼠标移动时,对两个速度分量进行积分得到x 和y方向上的偏移值,加到初始位置上转化为屏 幕上某点的位置坐标 一利用球的位置改变来确定位置,并没有利用球 的绝对位置
相对定位设备 • 鼠标、跟踪球以及游戏操纵杆等设备向操 作系统返回两个正交的速度分量值 – 当鼠标移动时,对两个速度分量进行积分得到x 和y方向上的偏移值,加到初始位置上转化为屏 幕上某点的位置坐标 – 利用球的位置改变来确定位置,并没有利用球 的绝对位置 9

逻辑设备 中国斜草我术大草 University of Science and Technology of China ·考虑C与C++代码: -C++:cin >X; -C: scanf(“%d",&x); ·输入设备是什么? 一代码中并没有指明 可以是键盘、文件、或者其它程序的输出 ·上述代码要求的就是逻辑输入 -不管物理设备是什么,程序得到一个数(nt)作 为输入 10
逻辑设备 • 考虑C与C++代码: – C++:cin >> x; – C: scanf (“%d”, &x); • 输入设备是什么? – 代码中并没有指明 – 可以是键盘、文件、或者其它程序的输出 • 上述代码要求的就是逻辑输入 – 不管物理设备是什么,程序得到一个数(int)作 为输入 10

图形逻辑设备 中国斜学我术大三 University ofScie nce and Technology of China ·相对于非图形程序中的输入通常只是数字、字 符或者字节而言,图形输入的形式更多 ·在GKS和PHIGS这两个老的API中,定义了六 种类型的逻辑输入: -定位(Locator):返回一个位置 -拾取(PiCk):返回对象的标识ID -键盘(Keyboard):返回字符串 -笔划(Stroke):返回一组位置数据 -定值(Valuator):返回模拟量输入(浮点数) -选择(Choice:返回n项中的一项
图形逻辑设备 • 相对于非图形程序中的输入通常只是数字、字 符或者字节而言,图形输入的形式更多 • 在GKS和PHIGS这两个老的API中,定义了六 种类型的逻辑输入: – 定位(Locator):返回一个位置 – 拾取(Pick):返回对象的标识ID – 键盘(Keyboard):返回字符串 – 笔划(Stroke):返回一组位置数据 – 定值(Valuator):返回模拟量输入(浮点数) – 选择(Choice):返回n项中的一项 11

输入模式 中国斜学我术大草 University of Science and Technology of China ·在输入设备中具有一个触发器(trigger),它可 以向操作系统发送一个信号 一鼠标上的按钮 一按下/释放键盘上的键 ·当触发后,输入设备向系统返回信息,即相应 的测量值(measure) 一鼠标返回位置信息 -键盘返回ASCII码 ·三种模式:采样模式、请求模式和事件模式 13
输入模式 • 在输入设备中具有一个触发器 (trigger), 它可 以向操作系统发送一个信号 – 鼠标上的按钮 – 按下/释放键盘上的键 • 当触发后,输入设备向系统返回信息,即相应 的测量值(measure) – 鼠标返回位置信息 – 键盘返回ASCII码 • 三种模式:采样模式、请求模式和事件模式 13
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国科学技术大学:《计算机图形学》课程教学资源(讲义)第五章 几何对象与变换.pdf
- 中国科学技术大学:《计算机图形学》课程教学资源(讲义)第二章 计算机图形系统.pdf
- 中国科学技术大学:《计算机图形学》课程教学资源(讲义)第三章 OpenGL编程.pdf
- 中国科学技术大学:《计算机图形学》课程教学资源(讲义)第一章 计算机图形学概述 Computer Graphics.pdf
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第九章 群体类和群体数据的组织.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第八章 多态性.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第七章 继承与派生.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第六章 数组、指针与字符串.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第五章 C++程序的结构.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第四章 类与对象.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第三章 函数.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第二章 C++简单程序设计.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十二章 异常处理.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十一章 流类库与输入/输出.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第十章 C++标准模板库.ppt
- 清华大学:《C++语言程序设计》课程教学资源(PPT课件)第一章 绪论(主讲:郑莉).ppt
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十二章 异常处理.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十一章 流类库与输入输出.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第十章 C++标准模板库.pdf
- 中国科学技术大学:《C++语言程序设计》课程教学资源(讲义)第九章 群体类和群体数据的组织.pdf
- 中国科学技术大学:《计算机图形学》课程教学资源(讲义)第六章 观察(主讲:黄章进).pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验一 Switches, Lights, and Multiplexers.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验二 Numbers and Displays.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验三 Latches, Flip-flops, and Registers.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验四 Counters.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验五 Clocks and Timers.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验六 Adders, Subtractors, and Multipliers.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验七 Finite State Machines.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验八 Memory Blocks.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验九 A Simple Processor.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(实验指导)实验十 An Enhanced Processor.pdf
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)前言(负责人:张健).ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第1章 概述.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第2章 可编程逻辑器件.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第3章 集成开发平台QuartusII操作基础.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第4章 VHDL编程基础.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第5章 VHDL主要描述语句.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第6章 VHDL设计共享.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第7章 基本逻辑电路设计.ppt
- 广东海洋大学:《VHDL程序设计语言》课程教学资源(PPT课件)第8章 有限状态机的VHDL设计.ppt