- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
每条线段端点S、P与裁剪线比较后可输出0至2个顶点。 情况1: S、P都在可见一侧,则输出P。 情况2: S、P都在不可见一侧,则不输出顶点。 情况3: S在可见一侧,P在不可见一侧,则输出SP与裁剪线的交点点I。 情况4: S在不可见一侧,P在可见一侧,则输出SP与裁剪线的交点点I和P 。 图4.21 S、P与裁剪线的四种位置关系 (b) (c) (d) S 可见侧 可见侧 可见侧 可见侧 S P S P S P P (a) I I 多边形的裁剪:Sutherland-Hodgman算法 算法框图 图4.22 Sutherland-Hodgman算法流程图 (1)主框图 开始 第一个顶点→S,F 顶点输入完毕 输入顶点P 处理线段SP P→S F→P 处理线段SP 结束 N Y (2)处理线段SP子过程 SP与裁剪线相交 求SP与裁剪线的交点I 输出I P位于可见侧 输出P N N Y Y 图4.23 ABC不该显示 B A C 用Sutherland-Hodgman算法对多边形进行裁剪有时会出现问题,如图4.23的这种情况正确结果是两个分离的多边形,但是用这种方法后结果两个多边形连在一起,连线是ABC. 4.4.4 字符裁剪 字符裁剪的策略有三种(如图4.24,待裁剪的字符串为(a)中的 “STRING”) 字符裁剪分三种方法:串精度裁剪(如(b)所示) 字符精度裁剪(如(c)所示) 基于构成字符最小元素的裁剪(如(d)所示) (a) (b) ? (d) 图4.24 字符裁剪 * 同理: 绕y和x轴的旋转变换公式分别为 和 4.3.1 基本变换-旋转 绕过原点的轴旋转 绕空间任一通过坐标原点的轴,做旋转变换,需给出这根轴的方向(Ax,Ay,Az)。 首先建立一个新的坐标系Ouvw,Ow轴的指向和(Ax,Ay,Az)的指向一致. 图4.9 红色为新坐标系Ouvw 先把要作旋转变换的对象从坐标系oxyz变到坐标系Ouvw, 在坐标系Ouvw把物体绕Ow轴旋转要求转动的角度, 再把旋转后的对象从坐标系Ouvw变换到原坐标系oxyz中,这样绕给定的,通过原点的轴的旋转便完成了 4.3.1 基本变换-旋转 两个坐标系间的变换关系 4.3.1 基本变换-旋转 Ou轴可取在经过O点并和Ow轴垂直的任一直线上, Ow轴方向的单位向量为 当 , Ou轴方向的单位向量为 若 ,则取 Ov轴的单位向量为v=w×u,即 v =(a13a32–a12a33, a11a33–a13a31, a12a31–a11a32) =(a21, a22, a23) 坐标系变换公式 从坐标系oxyz至坐标系Ouvw的变换为 (4.5) 由于向量u,v,w是互相正交的单位向量,可知矩阵A的逆矩阵就是A的转置矩阵AT,即 这样,从坐标系Ouvw至坐标系oxyz的变换公式为 4.3.1 基本变换-旋转 由式(4.4),式(4.5)和式(4.6)可得变换公式为 (4.7) 如果旋转轴不通过坐标原点,而通过(xp, yp, zp),则可先调用pivot(xp, yp, zp),然后再调用rotate(α,Ax, Ay, Az)。图形软件包在执行子程序rotata(α,Ax, Ay, Az)时,象缩放变换一样,先作变换shift3(-xp, -yp, -zp),再按式(4.7)作旋转变换,最后作变换shift3(xp, yp, zp)。 4.3.1 基本变换-旋转 设矩形OABC沿x轴(称为方向轴)方向切变,y轴称为依赖轴。切变的程度由参数S=tgα决定 s的几何意义是对y=1的点在切变时沿x轴正向平移的距离。设点(x, y, z)经错切变换后成为(x′, y′, z′),则 (4.8) 如果依赖轴和方向轴改成其它的坐标轴,式(4.8)中的矩阵要作相应的变动。 4.3.1 基本变换-错切变换 图4.10 错切 A A′ B B′ x O y α C 4.3.2 齐次坐标与变换的矩阵表示 在实际绘图时,常要对对象连续做几次变换,例如作平移后,作旋转,再作放大等。这样对每一点的坐标要依次用式(4.1),式(4.7)和式(4.3)计算,这样计算量较大。如果只有旋转和放大,则可把式(4.7)和式(4.3)合并成一个矩阵 (4.9) 齐次坐标表示法就是用n+1维向量表示n维向量。 例如,我们使用齐次坐标(xh,yh,zh,h)来表示每个三维空间坐标位置(x,y,z),其中参数h可取为任意非零值,最简单的选择是取h=1,每个三维点都可用齐次坐标(x,y,z,1)表示。 (4.10) 齐次坐标 变换的表示法统一 变换合成的问题 引入齐次坐标 式4.1的奇次坐标表示为 4.3.2 齐次坐标与变换的矩阵表示 某些图形软件包提供两种图形
原创力文档


文档评论(0)