《计算机图形学》交互技术与用户接口.pptVIP

《计算机图形学》交互技术与用户接口.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《计算机图形学》交互技术与用户接口描述:本文介绍了计算机图形学中的一些关键概念和应用,包括直线段的拾取、折线集的拾取、曲线的拾取以及字符串的拾取等。概述:本文介绍了计算机图形学的基本概念和应用,包括直线段的拾取、折线集的拾取、曲线的拾取以及字符串的拾取等。同时,还介绍了这些概念如何应用于实际编程中,以及如何通过各种方法实现它们。最后,本文分析了这些概念如何影响用户体验,以及如何改进用户体验。标题:《计算机图形学》交互技术与用户接口正文:在计算机图形学领域,数据处理和实时性是非常

3.直线段的拾取P1P2直线段的拾取领域 设直线段的端点为P1(x1,y1)和P2(x2,y2),该线段的显示领域为一个矩形区域,如图3.2.9所示。P1P2的直线方程为: (y1- y2) x-( x1- x2) y- x1 (y1- y2)+ y1 (x1- x2) =0 直线的斜率为 当定位器定位点P0落在该矩形内,则表示 直线段拾取成功。 4.折线集的拾取 依次判断每条直线段的显示领域是否包含拾取点,如该图素的某一条线段满足拾取条件,则对该图素拾取成功。 5.曲线的拾取 曲线在显示时输出时,已离散成折线集,故曲线拾取算法与折线集拾取算法类似。 6.字符串的拾取 需要依次判断每个字符的显示领域是否包含了拾取点。 3.3 输入控制 图形软件包一般向用户提供三种基本的输入控制方式:请求方式、采样方式和事件驱动方式。可以用如下的命令设置一个输入设备的输入控制方式: set_locator_mode(ws,device_code,input_mode) 其中,ws是工作站的标识号,device_code是用来指定被采用的物理定位设备的设备码,input_mode对应请求、取样和事件三种输入控制方式之一。 3.3.1 请求输入方式 请求输入方式按照以下步骤工作: (1)应用程序向输入设备发出输入请求命令。例如,希望从定位器中获得一个定位坐标时,可用如下请求命令: request_locator(ws,device_code,x,y) 该命令是把定位器设置成请求输入控制方式,其中x、y用来存储一个点的坐标值。 (2)等待用户输入数据; (3)用户开始输入操作,如移动鼠标到定位点,再按确认键; (4)在用户输入操作完成后,应用程序得到输入数据,即定位点的坐标(x,y)。 请求输入方式一次只能对一个输入设备进行操作,而且只支持那些由RS-232端口联到计算机上的老式图形终端或其它交互设备。 3.3.2 取样输入方式 一个输入设备一旦设置成取样输入方式,立即就可以进行数据输入,而不必等待程序中的输入语句。例如,操纵杆设置成灾取样方式下的定位设备,则操纵杆的当前位置坐标立即就被存储起来,如果操纵杆的位置发生变化,就立即用当前的坐标来代替以前的位置坐标值。设置定位设备为取样方式的命令是: sample_locator(ws,device_code,x,y) 取样方式允许用户同时使用多个设备。设备设置成取样方式后,应用程序按一定的周期反复测试输入设备,随时读取数据,所以应用程序可以对用户的动作给出及时地反馈。这是取样方式的好处。 3.3.3 事件输入方式 在事件输入方式中,输入设备与应用程序是异步的。应用程序先将输入设备置成事件方式,并允许由设备输入。一旦设备是可输入的,不管应用程序是否准备好接收数据,用户都可以在这个输入设备上进行输入操作了。任何一个输入操作的数据都将作为事件按其发生的次序被送到一个输入队列中。应用程序随时可以检查这个输入队列,处理队列中的事件,或删除队列中的事件。有数据就处理,无数据就等待,即应用程序和输入设备各自独立地进行,输入设备可以随时输入数据,并保存在输入队列中,而应用程序不断地检查输入队列,一旦有输入数据就进行相应的处理。事件输入方式避免了请求方式和取样方式中存在输入数据丢失的问题。 在输入队列中的数据可按照逻辑设备类型、工作站号、物理设备编码进行检索。在应用程序中,检索事件输入队列可用下述命令: await_event(time, device_class, ws, device_code) 其中,time是应用程序设置的最长等待时间。当事件队列为空时,事件处理进程就挂起,直到最长等待时间已过或又有一个事件进入,才恢复事件的处理。若在输入数据之前,等待时间就已过去,则参数device_class就返回一个空值。当time被赋成零或当队列为空,程序就立即返回到其它的处理进程。 当用await_event命令使某个设备进入事件输入控制方式,而且事件队列为非空时,在队列的第一个事件就被传送到当前事件记录中,对于定位器、笔划设备,在device_class参数中存放了它们的类型。为了从当前事件记录中检索一个输入的数据,还需要采用一个事件输入方式命令,其格式类似于请求、取样方式的命令,但在命令中不需要有工作

文档评论(0)

东风继续吹 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档