计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪

上传人:E**** 文档编号:89491558 上传时间:2019-05-25 格式:PPT 页数:23 大小:189.50KB
返回 下载 相关 举报
计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪_第1页
第1页 / 共23页
计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪_第2页
第2页 / 共23页
计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪_第3页
第3页 / 共23页
计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪_第4页
第4页 / 共23页
计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪》由会员分享,可在线阅读,更多相关《计算机辅助设计与制造(第二版)-电子教案-袁泽虎 第4章图形坐标变换域裁剪(23页珍藏版)》请在金锄头文库上搜索。

1、第4章 图形坐标变换与裁剪 4.1 二维图形的坐标变换 在图形显示过程中,用户需对图形进行平移、放大、旋转等基本的几何变换操作。图形的平移、放大、旋转从数学上看都是几何性质的“变换”,故又称为图形的几何变换 对二维图形的坐标变换,就是指在不改变图形连线次序的情况下,对一个平面点集进行线性变换。 1二维图形坐标变换的基本原理: (1) 平移变换: 一个点P(x,y) 平移到P*(x*,y*),平移后产生的新坐标如下 x*=x+Dx y*=y+Dy,(2) 变比例变换: X*=SxX Y*=SyY 对一个三角形进行变比例变换,同样仅需将该三角形的三个顶点进行变比例变换。然后在变换后的三顶点间按A、

2、B、C次序连线,就可得到变比例变换后的三角形,如图所示。 (3) 旋转变换: X*=Xcos-Ysin Y*=Xsin+Ycos,2坐标变换的矩阵表示形式: 前面已介绍,对二维图形的坐标变换,实际上是对一个平面点集进行线性变换。由于点集可用矩阵的方式来表达,因此对点的变换可以通过相应的矩阵运算来实现,即: 一个点的坐标可以用矩阵形式x y 或 表示,坐标变换的矩阵表示形式为: X* Y*=X Y =aX+cY bX+dY 其中:T= 为变换矩阵。 当T矩阵各元素取不同值时,便可得到不同的变换结果,注意,不论变换矩阵中的元素a、b、c、d为何值时,都不能使图形产生平移变换,即用2行2列的变换矩阵

3、不能实现图形的平移变换。这就需要使用图形的另一种表示方法齐次坐标。 3齐次坐标与齐次变换矩阵: 为了进行平移变换,要给二维点的位置矢量增加一个附加坐标,使之成为三维行向量x y l,即用点的齐次坐标表示,这样便可进行运算了。 (1) 齐次坐标: 齐次坐标是将一个n维空间的点用n+1维坐标来表示。如在直角坐标系中,二维点x y的齐次坐标通常用三维坐标Hx Hy H表示,一个三维点x y z 的齐次坐标通常用四维坐标Hx Hy Hz H表示。在齐次坐标系中,最后一维坐标H称为比例因子。,三维直角坐标与其齐次坐标的关系是: x=Hx/H y=Hy/H z=Hz/H 由于H的取值是任意的,所以任一点可

4、用多组齐次坐标表示。在一般使用中,总是将H设为“1”,以保持两种坐标的一致。 (2) 齐次变换矩阵: 对于二维坐标系上的点,齐次坐标为Hx Hy H,而齐次坐标变换矩阵的形式是: T= 可将该矩阵分为四部分,其作用 分别为:,的作用是对被变换点的坐标进行放大、缩小和旋转变换;,m n的作用是对变换点的坐标进行平移变换;,的作用是对变换点的坐标进行投影变换;,s是整个变换中的比例系数。,下面分别介绍利用齐次变换矩阵进行平移变换、变比例变换和 旋转变换:,(a) 当 T=,时,XH YH H=X Y 1,=X+m Y+n 1,X*=XH/H=X+m Y*=YH/H=Y+n,这时为平移变换,4二维复

5、合变换: 实际上,上述介绍的几种基本变换一般不单独出现,通常出现的都是复合变换。有的图形须经过多次基本变换才能完成,这种由两个以上基本变换构成的变换称为复合变换。设各次变换的变换矩阵分别为T1,T2,Tn,则复合变换矩阵是各次变换矩阵的乘积。 例:当图形要对画面中的某一点(x0,y0)作放大时,可通过如下三种基本变换复合而成: (1) 首先将坐标原点(0,0)平移至(x0,y0),变换矩阵为:,T1=,(2) 然后图形以(x0,y0)为中心作放大,变换矩阵为: (3)最后将坐标原点自(x0,y0)的位置移回原处(0,0) 变换矩阵为:,T2=,T3=,则以点(x0,y0)为中心,放大系数分别为

6、Sx、Sy的复合变换矩阵为: T=T1T2T3= 同理,当图形绕坐标原点以外的任意点(x0,y0)作旋转时,也可以通过三种基本变换复合而成,即将旋转中心平移到坐标原点,其变换矩阵为T1;然后使图形绕坐标原点旋转角,变换矩阵为T2;最后将旋转中心平移回原来的位置,其变换矩阵为T3。则绕坐标原点以外的任意点旋转角的复合变换矩阵为: T=T1T2T3=,4.2 三维图形的坐标变换 三维图形的坐标变换是二维图形坐标变换的简单扩展。三维齐次坐标变换矩阵的形式是: T =, 产生变比例变换、旋转变换、反射(对称)变换等,l m n 产生沿x、y、z三个方向的平移变换。,s 产生全比例变换, 产生透视变换,

7、4.2.1 三维基本变换 1比例变换: 2反射(对称)变换: (1)对xoy平面的反射变换 (2) 对xoz平面的反射变换,T=,T=,T=,(3) 对yoz平面的反射变换,3平移变换:,平移变换是指立体在空间沿x、y、z三个方向移动一个位置,而立体本身的大小和形状并不改变。齐次变换矩阵为:,T=,空间一点(X,Y,Z)的平移变化结果为:,X Y Z 1,= X+l Y+m Z+n 1 = X* Y* Z* 1,4旋转变换: (1) 绕X轴旋转角: (2) 绕Y轴旋转角: (3) 绕Z轴旋转角: Tz=,Tx=,Ty=,例:已知某长方体各顶点坐标为A(3,2,1.5)、B(1,2,1.5)、C

8、(1,2,2.5)、D(3,2,2.5)、E(3,1,1.5)、F(1,1,1.5)、G(1,1,2.5)、H(3,1,2.5),将该长方体对yoz平面进行反射变换,试求变换结果。 解:将长方体各顶点坐标进行反射变换如下:,A 3 2 1.5 1 -3 2 1.5 1 A* B 1 2 .5 1 -1 2 1.5 1 B* C 1 2 2.5 1 -1 0 0 0 -1 2 2.5 1 C* D 3 2 2.5 1 0 1 0 0 = -3 2 2.5 1 D* E 3 1 1.5 1 0 0 1 0 -3 1 1.5 1 E* F 1 1 1.5 1 0 0 0 1 -1 1 1.5 1 F

9、* G 1 1 2.5 1 -1 1 2.5 1 G* H 3 1 2.5 1 -3 1 2.5 1 H*,其变换结果如图所示。,4.2.2 三维基本变换矩阵的组合 1绕通过坐标原点的任意轴的旋转变换矩阵 设on为通过坐标原点的任意方向的直线,其方向余弦分别为n1、n2、n3,则点p绕on轴转动角到达p点见图4.4(a)的变换矩阵为: 2绕通过任意点P(l,m,n),方向余弦分别为n1、n2、n3的轴的旋转变换矩阵,TR=,4.3 三维图形变换的应用 4.3.1 正投影变换 正投影变换可得到国家标准规定的六个基本视图主视图、俯视图、左视图、右视图、仰视图和后视图 1主视图变换矩阵 主视图变换矩

10、阵为:,2俯视图变换矩阵 俯视图变换矩阵为: TH = 3左视图变换矩阵 左视图变换矩阵为: TW =,4.3.2 正轴测投影变换 正轴测投影图是工程上应用广泛的二维图形。其变换矩阵为: T正轴测 = (4-1) 在上述所示的正轴测投影变换矩阵中,只要给、不同的值,就可得到不同的正轴测投影图。,1正等轴测投影变换矩阵 按国家标准规定,以=45、=35.2644代入式(4-1)即可得到正等轴测投影变换矩阵。 2正二等轴测投影变换矩阵 按国家标准规定,以=20.7、=19.47代入式(4-1)即可得到正二等轴测投影变换矩阵。 4.3.3 透视投影变换 透视图是采用中心投影法得到的图形,即通过投视中

11、心(视点),将空间立体投射到二维平面(投影面)上所产生的图形。 1透视变换矩阵 2一点透视变换,4.4 开窗与裁剪 4.4.1 基本概念和术语 1用户坐标系(世界坐标系) 2屏幕坐标(设备坐标) 3窗口:在实际画面中(用户坐标系),由用户 确定的矩形区域。 4视区:在屏幕上(屏幕坐标系)用来显示窗口 的画面内容的矩形区域 5裁剪:保留窗口内的画面,擦去窗口外的全部 画面的方法。 4.4.2 窗口视区变换,4.4.3 二维图形的裁剪 1点的裁剪 在图形剪裁中,最基本的是点的裁剪。对于某一点P(x,y),只要满足 xmin xxmax ymin yymax 则该点一定落在边界所围成的矩形框内。 2

12、直线裁剪的CohenSutherland算法 延长窗口的边界,将屏幕分为九个小区域,中央小区域就是要裁剪的区域。每个小区域用一个四位二进制代码表示,其中各位数字的含义如下; 小区域在裁剪区域之左,即xxmax,则c2=1,否则c2=0 小区域在裁剪区域之下,即yymax,则c4=1,否则c4=0,3直线的矢量裁剪方法 这种裁剪方法与上面所说的方法相类似,只是判别端点是否落在窗口框内所采用的过程不一样。在该算法中,同样用四条窗口边框直线把平面分割成九个区域,为了叙述算法过程方便起见,我们把这九个区域分别表上0、1、2、3、8号码。 4多边形裁剪的SutherlandHodgman算法 SutherlandHodgman算法是解决多边形裁剪的较好算法,其处理对象是多边形的顶点,依次用窗口的四条边框线对多边形进行裁剪,即先用一条边框线对整个多边形进行裁剪,得到一个或者若干个新的多边形,再用第二条边对这些新产生的多边形进行裁剪,如此进行下去,直到用四条边框线都裁剪完为止。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号