opengl函数总结以及算法课程复习3

用户接口 和 交互式技术
用户接口user interface
用户接口设计
好的用户接口特点 易于被用户理解并接受 使用户能迅速掌握系统的特点
易于操作和使用 用户可以通过用户接口以最简单的方式提出自己的应用要求 使用图形系统的全部功能
高效率 可靠性 适用性 保证用户在运行系统时能经常高效的工作 并尽可能地减少错误
用户模型
User Mode 是用户接口设计的基础 他提供给用户有关他所处理的对象以及作用域这些对象的处理过程的一个概念模型 用户模型依照所定义的对象和对象操作来定义图形系统 简单体现在模型中图形对象数目和对象操作数目应根据应用的必要性达到最小化 一致性指对于不同对象与操作 不应当由差别很大的定义方式
显示屏幕的有效利用
显示屏幕地有效利用是指以最有效的方式在显示屏幕上表现信息 最有效方式 是指能促进用户与计算机之间进行最有效对话的方式
信息显示的布局合理性
将屏幕分为三部分 用户工作区 菜单区 显示提示及反馈信息区
多窗口显示 弹出式菜单pop-up Menu 滚动与移屏 缩放zooming
充分而与又正确的使用图符
icons 应用图符 application icons 用来代表家具或电子元件 等操作对象 另一类 控制图符control icons 代表旋转放大 比例裁剪和粘贴 等对对象的操作和控制 图符不好设计 可以当光标在图符上停留数秒后 下方出现文字说明
恰当地使用各种显示方法进行选择性的信息
减少用户疲劳感
反馈 What You See Is What You Get
反馈信息当用户发出命令后动态的显示系统运行所发生的一些变化
要求系统在接收到每次输入后给出某种类型的反应
信息简洁清晰 不能过分突出 干扰用户注意力
实现反馈必须考虑速度 光栅显示器 像素亮度可以和方便的反转(反视频很快)某些输入过程需要回显Echo 式反馈
一致性原则
设计系统的各个环节
一个特定的图符应该始终只有一个含义而不能依靠上下文来代表多个动作或对象 菜单总是放在相同的关联位置 是用户不必总是去寻找 键盘上的功能键 控制键 以及鼠标上按钮的定义需要前后一致 总是使用一种彩色编码 相同颜色在不同情况下不会有不同的含义 输入时交互式命令的语法的一致性
一致性可能会与系统其他设计原则相冲突 因此 原则按用户认为最正常最合乎逻辑的方式去做
减少记忆量
用户接口操作容易理解和记忆重要地原则式唤醒用户识别而不是记忆
回退和出错处理
回退undo 绘图系统允许用户 沿着执行过地操作步骤一步步倒退 并删除已做的操作 用栈
其次任何错误和失误 都应有一定的改错取消和修复措施
诊断程序或提出出错信息
进行对某些可能导致错误的动作约束 不允许做
联机帮助
on line help 在程序调用地地方返回
视觉效果设计
屏幕的布局 色彩的使用信息的安排 色彩的使用 主要与眼镜的分辨能力和视觉疲劳有关
实验证明 在视野范围内 人的视觉适应能力在有色彩对比时较仅有亮度对比时要强一些 对色调而言 最容易引起视觉疲劳的是蓝色和紫色 其次是 红色和橙色 而黄色和绿色和淡青色不容易引起视觉疲劳程度 保持均匀的色彩明亮度 明亮度差别不要太大
适应不同的用户
热键和提示无需离开键盘
逻辑输入设备与输入处理
确定坐标位置的数值 代表图名的字符串 指定菜单的选项 以及表视图的成分
逻辑输入设备
使图形软件具有设备无关性
PHIGS和GKS等图形软件标准 定位设备locator指定一个点的坐标位置
笔画设备stroke 指定一系列点的坐标
数值设备valuator 输入一个整数或实数
字符串设备 string 输入一串字符
选择设备 choice 选择某个菜单项
拾取设备 pick 选择显示着的图形的组成部分
定位设备
定位的过程大多是 将物理设备的位移转换成相应的屏幕光标的位移 当屏幕坐标处于所需要的位置时 通过按装置上的按钮用以保存该点的坐标 绝对坐标设备包括数字化仪和触摸屏 他们包括绝对远点 定位坐标相对原点来确定 相对坐标设备有鼠标器跟踪球 操纵杆 定位坐标相对于浅一点位置来确定 只有绝对坐标设备才能作为数字化绘图设备
直接设备注入触摸屏一类的 间接设备 鼠标操纵杆 连续设备 把手的连续运动变成光标的连续运动 键盘光标为离散设备
笔画设备
在屏幕上交互的指定多个点的位置坐标
定值设备
典型键盘
字符串设备
典型键盘
选择设备
功能键 按下功能键即可实现用户希望的功能 热键 经过应用程序的重新定义而具有选择功能
拾取设备
在屏幕上是要改变该对象的颜色亮度或者让该对象闪烁在存储 用户图形的数据结构中则要找到该对象的集合参数及属性的地址 进一步的增删改 利用定位设备 对象区域同时包围光标坐标 三种方法 在图形对象生成时 对其确定优先级 而是采用依次对拾取图像设立标志 三是找距离最近的对象优先拾取
指定拾取窗口 根据光标位置指定拾取窗口
矩形包围
直接输入结构名字
通常 根据拾取对象的不同 需要制定相关的算法策略 如点拾取 折线集的拾取 曲线的拾取 许多情况下需要加速策略 如 区域粗判 算法硬件固化
设备层 硬件性能 任务层 相同交互任务用不同的交互设备比较 对话层 对一系列交互任务进行比较
输入模式
对于一个应用程序而言 可以有多个输入设备 同一个输入设备可能为多个任务服务 管理方式
请求方式request 如对话框 应用程序先以请求方式指定 输入设备 所请求的设备指定后 可以向该设备发出输入请求当一个输入请求发出后 处理过程(程序)等待接收数据 输入设备在应用程序的控制下工作 程序在输入请求发出后 一直被置于等待状态知道数据输入
取样方式sample 一旦对一台或多台设备设置了取样方式立即就可以进行数据输入 如搜索框 不必等待程序中的输入语句 此时应用程序和输入设备同时工作 当输入设备工作时 存储输入数据 并不断更新当前数据 当程序要求输入时 程序采用当前数据值 当鼠标被指为取样方式下的定位设备时 系统则会立即存储鼠标的当前位置坐标 并且当鼠标的位置变化时立即更新当前的的坐标位置
事件方式event 每次用户对输入设备的一次操作及形成的数据叫做一个事件 一般一个事件发生时往往来不及进行处理 于是时间按先后次序拍成队列 以便先进先出 即先到的事件进入排队 先被取出来进行处理 当某台设备被置成事件方式后 程序和设备同时工作 输入设备来初始化数据输入 控制数据处理进程 一旦有一种逻辑输入设备以及特定的物理设备已被设为相应的方式后即可用来输入数据或命令 他与取样方式不同的是 从设备输入的数据都存放在一个事件队列中 在任一时刻 事件队列 存储了尽可能多的最近发生的 输入数据事件 在队列中的输入数据可按照逻辑设备类型 工作站好 物理设备码进行检索
组合方式combine 一个应用程序同时可以在几种输入方式下 应用几个不同的输入设备来工作 在屏幕上绘制一个⚪ 首先鼠标确定圆心位置 鼠标被设为取样方式 按下鼠标左键确定圆心位置 此时鼠标被设为事件方式 接着在对话框中用键盘输入圆的半径此时键盘被设为请求方式
交互式绘图技术

基本交互式绘图技术
回显
如定位 所选位置显示 参数或特殊标记
约束
绘制过程中 对图形的方向 对齐方式进行规定校准
网格
叠加在屏幕绘图坐标去的矩形网格可用来定位和对准图像或文本
引力域
橡皮筋技术
针对用户的要求 动态的将绘图过程表现出来 直到产生用户满意的结果位置 其中最基本的工作是动态连续的改变相关点的设备坐标
草拟技术
实现用户任意画图的要求草拟技术的实现分为两类 一类是在光标移动时 沿光标移动的路径保留但各点的坐标 以点阵方式保存草图 另一类 是采样取点后用着线获取先将采样点连接起来用直线或曲线拟合 最终画出许多端点相连的线构成物体的草图 基于距离采样取点 基于时间采样取点
拖动
将图形对象在空间的移动过程动态连续的表示出来 直到满足用户的位置要求位置
旋转
旋转图形
形变

三维交互技术
困难 在于难以区分屏幕上的光标选择对象的深度值 和其他显示对象的深度值 二维设备需要采用策略适应三维交互
三维图形数据的输入
键入 系统用软件的方法借用二维设备对三维设备的输入 结合人工智能自行脑补
三维定位
利用三视图 3dmax
两条虚线光标相交的位置就唯一的确定一个三维点的坐标
三位定向
是在三维坐标系中 规定对象的一个方向 考虑坐标系旋转中心 观察效果
三维定向坐标系一般选取永固坐标系 可以指定用户坐标系的原点也可以指定物体中心点或其他参考点作为旋转中心

你可能感兴趣的:(OpenGL,计算机图形)