- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五讲 二维观察
Computer Graphics 计算机图形学 吴 伟 计算机学院 E-mail: wuwei_imu@163.com 第五讲 二维观察 5.1 观察流程 5.2 窗口到视口的变换 5.3 直线段裁剪 直接求交算法; Cohen-Sutherland算法;中点算法 Nicholl-Lee-Nicholl算法 5.4 多边形裁剪 Sutlerland_Hodgman算法 5.5 文字裁剪 第五讲 要求 掌握二维图形的显示流程图,窗口到视区的变换 掌握什么是裁剪、裁剪窗口,裁剪算法的基本内容; 掌握裁剪直线段的Cohen-Sutherland算法、中点分割算法; 了解裁剪直线段的Nicholl-Lee-Nicholl算法 掌握裁剪多边形的Sutherland-Hodgman算法(又称逐边裁剪算法); 掌握如何裁剪一个字符串,如何裁剪一个点阵表示(或矢量表示)的字符 二维图形的显示流程图(1/4) 坐标系:建立了图形与数之间的对应联系 世界坐标系(world coordinate) 用户坐标系(user coordinate) 局部坐标系(local coordinate) 二维图形的显示流程图(2/4) 屏幕坐标系(screen coordinate) 设备坐标系(device coordinate) 二维图形的显示流程图(3/4) 窗口 在世界坐标系中指定的矩形区域 用来指定要显示的图形 视区 在设备坐标系(屏幕或绘图纸)上指定的矩形区域 用来指定窗口内的图形在屏幕上显示的大小及位置 窗口到视区的变换 二维图形的显示流程图(4/4) 窗口到视区的变换(1/2) 目标 将窗口之中的图形变换到视区中 变换的求法 变换的分解与合成 窗口到视区的变换(2/2) 5.3 直线段裁剪(1/18) 裁剪的目的 判断图形元素是否落在裁剪窗口之内并找出其位于内部的部分 裁剪处理的基础 图元关于窗口内外关系的判别 图元与窗口的求交 假定条件 矩形裁剪窗口: [xmin,xmax] X [ymin,ymax] 待裁剪线段: 5.3直线段裁剪(2/18) 待裁剪线段和窗口的关系 线段完全可见 显然不可见 线段至少有一端点在窗口之外,但非显然不可见 5.3 直线段裁剪(3/18) 点裁剪 点(x, y)在窗口内的充分必要条件是: 5.3直接求交算法 直线与窗口边都 写成参数形式, 求参数值。 5.3 Cohen-Sutherland 算法 (编码算法) 5.3 Cohen-SutherLand算法(编码算法) 特点:对显然不可见线段的快速判别 编码方法:由窗口四条边所在直线把二维平面分成9个区域,每个区域赋予一个四位编码, CtCbCrCl,上下右左; 5.3 Cohen-SutherLand算法(编码算法) 端点编码:定义为它所在区域的编码 结论:当线段的两个端点的编码的逻辑“与”非零时 ,线段为显然不可见的 5.3 Cohen-SutherLand算法(编码算法) 求交测试顺序固定(左上右下) 最坏情形,线段求交四次。 5.3 中点分割法 想法:从P0点出发找出距P0最近的可见点,从P1点出发找出距P1最近的可见点。 取中点Pm=(P1+P2)/2。 5.3 Nicholl-Lee-Nicholl算法(1/4) 消除C-S算法中多次求交的情况。 基本想法:对2D平面的更细的划分。 5.3 Nicholl-Lee-Nicholl算法(2/4) 假定待裁剪线段P0P1为非完全可见且非显然不可见。 步骤: 第一步,窗口四边所在的直线将二维平面划分成9个区域,假定 落在区域0、4、5 5.3 Nicholl-Lee-Nicholl算法(3/4) 第二步:从P0点向窗口的四个角点发出射线,这四条射线和窗口的四条边所在的直线一起将二维平面划分为更多的小区域 。 此时P1的位置决定了P0P1和窗口边的相交关系。 5.3 Nicholl-Lee-Nicholl算法(4/4) 第三步,确定P1所在的区域(判断P1所在区域位置,可判定P0、P1与窗口那条边求交) 。 根据窗口四边的坐标值及P0 P1和各射线的斜率可确定P1所在的区域。 第四步,求交点,确定P0P1的可见部分 。 梁友栋-Barsky算法 梁-Barsky算法的几何含义:入边、出边与端点 梁友栋-Barsky算法 * 写入图形学教科书的唯一中国人的算法 * Communication of ACM的论文 梁有栋教授的二三事 Liang-Barsky算法 几何连续理论 从几何学与纤维缠绕理论到基因工程 梁友栋-Barsky算法 参数化形式写出裁剪条件:
文档评论(0)