




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机辅助设计第四章 图形的几何变换 对于一个绘图系统来说,不仅能用图形基本元素的集合构成复杂的二维静态图形而且可以通过三维的几何体来定义零件的空间模型,还可以令该模型围绕任一指定的轴旋转,以利于从某一最有利的角度去观察它,对它进行修改。软件的这些功能是基于图形变换的原理实现的。图形变换是计算机绘图的基础内容之一。 引引 言言 图形分类: 图形变换一般是指对图形的几何信息经过几何变图形变换一般是指对图形的几何信息经过几何变换后产生新的图形换后产生新的图形 图形变换既可以看做坐标系不动而图形变动,变动后的图形在坐标系中的坐标值发生变化,也可以看做图形不动二坐标系变动,变动后,该图形在新的坐标系下
2、具有新的坐标值。这两种情况在本质上是一样的本质上是一样的 应用例:铰链四杆机构的运动描述应用例:铰链四杆机构的运动描述第四章第四章 图形的几何变换图形的几何变换 第四章第四章 图形变换图形变换 本本 章章 要要 点点4 41 1 图形变换的方法图形变换的方法 体体是由是由若干面若干面构成的,构成的,面面是由是由线线组成,组成,点点的运动轨的运动轨迹是迹是线线。构成图形的基本要素是。构成图形的基本要素是点点。 图形的表示方法:图形的表示方法:点:点: 二维(二维(x x,y y) 三维(三维(x x,y y,z z)图形:图形: 用用点点的集合表示。的集合表示。22211nnnyxyxyx332
3、2321nnnnzyxzyxzyx二维三维 图形图形可用可用点集点集表示,点集可用表示,点集可用矩阵矩阵表示。表示。 那么,那么,二维图形的基本变换二维图形的基本变换就可以通过就可以通过点集的变换点集的变换来实现。因此对来实现。因此对点的变换点的变换可以通过可以通过相应的矩阵运算相应的矩阵运算来来实现。实现。旧点(集)变换矩阵 矩阵运算新点(集) 在计算机图形处理中,经常需要对已生成的图形在计算机图形处理中,经常需要对已生成的图形进行进行旋转旋转、平移平移、放大放大或或缩小缩小等几何变换操作,以生等几何变换操作,以生成新的图形信息。由于点是构成几何形体的最基本元成新的图形信息。由于点是构成几何
4、形体的最基本元素,因此,通过对构成几何图形的特征点集的几何变素,因此,通过对构成几何图形的特征点集的几何变换即可实现整个图形的几何变换。换即可实现整个图形的几何变换。 点的变换可以通过矩阵运算来实现,令点的变换可以通过矩阵运算来实现,令称为变换矩阵。称为变换矩阵。yxdybxcyaxdcbayx二维基本变换矩阵包括:二维基本变换矩阵包括: 比例变换比例变换 、对称变换、对称变换、错切变换错切变换、旋转变换旋转变换、平移变换平移变换、齐次坐标变换齐次坐标变换dcbaTl 比例变换比例变换变换矩阵为变换矩阵为00yxdyaxdayx)0, 0(00dadaTs原点坐标变换后坐标讨讨 论:论:l恒等
5、变换:恒等变换: ,变换后点的坐标不变。,变换后点的坐标不变。l等比变换:等比变换: ,当,当 时,变换后图形等时,变换后图形等比例放大如图比例放大如图6-16-1所示。当所示。当 时,变换后图形等时,变换后图形等比例缩小。比例缩小。 1 da1 da1 da1 daOXY图4-2 不等比例变换OXY图4-1 比例变换(等比例变换)l 若 变换后图形产生畸变。da 如取变换矩阵为如取变换矩阵为 5 . 0002T520540104010205.00021010102020202010l 镜射变换镜射变换 镜射变换即产生图形的镜像,用来计算镜射图形,也称镜射变换即产生图形的镜像,用来计算镜射图形
6、,也称为为对称变换。对称变换。 包括包括对于坐标轴对于坐标轴、坐标原点坐标原点、4545直线直线和和任意直线任意直线的的镜射变换。镜射变换。1 1)对坐标轴的镜射变换对坐标轴的镜射变换(1)(1) 对对X X 轴的镜射变换轴的镜射变换yyxx*,*变换矩阵变换矩阵为:Tmx=1001yyxx*,*(2)(2) 对对Y Y 轴的镜射变换轴的镜射变换变换矩阵为:变换矩阵为:1001Tmy2 2)对原点的镜射变换对原点的镜射变换故,变换矩阵为:故,变换矩阵为:yyxx*,*yxyxyxTyx10011001Tmo图4-3 镜射变换OXY对Y轴镜射原始位置对原点镜射对X轴镜射3 3)对对4545线的镜
7、射变换线的镜射变换 (2 2)对对-45-45线的镜射变换线的镜射变换1135cos1135sin由于 故 : xyyx*,*则变换矩阵为 :0110TOXY图4-4 45镜射变换原始位置对-45线镜射对+45线镜射(1 1)对对+45+45线的镜射线的镜射由于 ,对+45线的镜射应有: 145sin45cosxyyx*,*则变换矩阵为 :0110T 错切用于描述受到扭曲、剪切后的几何体形状。错切用于描述受到扭曲、剪切后的几何体形状。 在沿在沿X X 轴轴的错切变换中,的错切变换中,y y 坐标不变,坐标不变,x x 坐标有一增量。变换后坐标有一增量。变换后原来平行于原来平行于Y Y 轴的直线
8、,向轴的直线,向X X 轴方向错切成与轴方向错切成与X X 轴成一定的角度。轴成一定的角度。 在沿在沿Y Y 轴轴的错切变换中,的错切变换中,x x 坐标不变,坐标不变,y y 坐标有一增量。变换后坐标有一增量。变换后原来平行于原来平行于X X 轴的直线,向轴的直线,向Y Y 轴方向错切成与轴方向错切成与Y Y 轴成一定的角度。轴成一定的角度。l 错切错切 =*yxbxycyxyx11cbTyx=式中式中 11cbT为错切变换矩阵,其中为错切变换矩阵,其中c c 和和b b不同时为不同时为0 0 。 (1 1) 沿沿X X 轴向错切轴向错切 令错切变换矩阵 中的b=0,且c0,其变换就是沿X轴
9、方向的错切。即11cbT*yxyxTyxycy x 11c0当c0时,错切沿着X 轴的正向;当c0时,错切沿X轴负向。错切直线与X轴的夹角为 ccyytg1例题:例题:如果设c=2 ,对图45所示方形图框进行错切变换,有00010103010201201000101010100(2 2) 沿沿Y Y 轴向错切轴向错切 令错切变换矩阵 中的c=0,且b0,其变换就是沿Y 轴方向的错切。即11cbT*yxyxTyxy bx x110b当b0时,错切沿着Y 轴的正向;当b0时,错切沿Y 轴负向。错切直线与Y 轴的夹角为 例题:例题:如果设b=2 ,对图4-5所示方形图框进行错切变换,有bbxxtg1
10、00201030101001021000101010100a) 原始图形 b) 沿X轴方向错切 c) 沿Y轴方向错切OXY(30,10) (20,10)(0,10)(0, 0)Y(20,10) (30,10)XOX(10,0)OY(10,10) (10,0)(0,10)Y图4-5 错切变换 注意注意: : 上面介绍的错切变换的上面介绍的错切变换的错切方向错切方向是指是指第第象限象限而言,其而言,其余象限的点的错切方向应作相应的改变。余象限的点的错切方向应作相应的改变。 l旋转变换旋转变换 *)*,(*),(yxpyxpcossin*sincos*yxyyxxcossinsincosT设点(x,
11、y)绕坐标原点逆时针旋转角,则点的变换为式中,为旋转变换矩阵。注意注意: : 图形的旋转是绕图形的旋转是绕坐标原点坐标原点旋转旋转角,且角,且逆时针为正逆时针为正,顺时针为负。顺时针为负。 对字母T进行旋转变换(旋转60)l平移变换平移变换 平移是指点从一个位置移动到另一个位平移是指点从一个位置移动到另一个位置的直线移动,置的直线移动,即点即点 *)*,(*),(yxpyxp 令令X X、Y Y轴方向的平移量分别为轴方向的平移量分别为x x 和和yy,则则 xyyyxx*yxdybxcyaxdcbayx原因:原因:cycy,bxbx均非常量均非常量原有图形能实现平移吗原有图形能实现平移吗OXY
12、图4-5 平移变换 可以将二维基本变换矩阵的形式由可以将二维基本变换矩阵的形式由2 22 2阶矩阵扩充成一阶矩阵扩充成一 个个3 32 2阶矩阵,即阶矩阵,即23mldcbaT又出现了一个又出现了一个新的问题新的问题,即二维图形的点集矩阵是,即二维图形的点集矩阵是n n2 2阶,而变换阶,而变换矩阵是矩阵是3 32 2阶,二者无法相乘,不能进行图形变换运算。阶,二者无法相乘,不能进行图形变换运算。l齐次坐标齐次坐标 在齐次坐标系中,在齐次坐标系中,n n 维空间维空间的位置矢量,用的位置矢量,用n n +1+1维矢量维矢量表示,表示,即即二维空间二维空间的位置矢量用的位置矢量用三维矢量三维矢量
13、表示。表示。yxhyxh为附加坐标,是一个为附加坐标,是一个不为零不为零的参数。的参数。 1020例如:例如: 的齐次坐标的齐次坐标 或或 等无穷组齐等无穷组齐次坐标次坐标。 1102022040 二维点的齐次坐标表示二维点的齐次坐标表示:把二维图形的点集矩阵扩充把二维图形的点集矩阵扩充为为n n3 3阶矩阵。阶矩阵。 点集矩阵点集矩阵同变换矩阵变换矩阵进行乘法运算:1yxmldcbamdybxlcyax所以得所以得平移变换矩阵平移变换矩阵为:为:ml1001Tt1yxml1001mylx对点进行平移变换为:对点进行平移变换为: 为了使二维变换矩阵具有更多的功能,可将为了使二维变换矩阵具有更多
14、的功能,可将3 32 2阶变换矩阵进一阶变换矩阵进一步扩充为步扩充为3 33 3阶矩阵。阶矩阵。smlqdcpbaT各元素的功能和各元素的功能和几何意义各不相几何意义各不相同,可以分割成同,可以分割成四块四块dcba可以实现图形的比例、镜射、错切、旋转等变换。可以实现图形的比例、镜射、错切、旋转等变换。 ml可以实现图形的平移变换。可以实现图形的平移变换。 Tqp可以实现图形的透视变换。可以实现图形的透视变换。 s可以实现图形的全比例变换可以实现图形的全比例变换 1.1. 绕任意点旋转变换绕任意点旋转变换平面图形绕任意点平面图形绕任意点p(xp,yp)旋转)旋转角角具体步骤:具体步骤:(1 1
15、) 将旋转中心平移到原点,变换矩阵为:将旋转中心平移到原点,变换矩阵为:1010001ppyxt1T(2 2) 将图形绕坐标系原点旋转将图形绕坐标系原点旋转 角,变换矩阵为:角,变换矩阵为:1000cossin0sincosr2T(3) 将旋转中心平移回到原来位置,变换矩阵为:将旋转中心平移回到原来位置,变换矩阵为:1010001ppt3yxT因此,绕任意点的旋转变换矩阵为:因此,绕任意点的旋转变换矩阵为:321trtTTTT1010001ppyx1000cossin0sincos1010001ppyx1)cos1 (sinsin)cos1 (0cossin0sincosppppyxyx2.2
16、. 对任意直线的镜射变换对任意直线的镜射变换设任意直线的方程为:设任意直线的方程为:AxAx+ +ByBy+ +C C=0=0,直线在,直线在x x轴和轴和y y轴上轴上的截距分别为的截距分别为- -C C/ /A A和和- -C C/ /B B,直线,直线与与x x轴的夹角为,轴的夹角为,= =arctgarctg(- -A A/ /B B)。)。 具体步骤:具体步骤:(1 1)平移直线,沿平移直线,沿x x向将直线平移,使其通过原点(也可以沿向将直线平移,使其通过原点(也可以沿y y向向平移),其变换矩阵为:平移),其变换矩阵为:10/010001ACTAC-C /A YXO 图46 对任
17、意直线的镜射变换-C /B1000)cos()sin(0)sin()cos()(RT1000cossin0sincos(3 3)对于对于x x轴进行镜射变换,其变换矩阵为:轴进行镜射变换,其变换矩阵为:100010001)(XMT(4 4)绕原点旋转,使直线回到原来与绕原点旋转,使直线回到原来与x x轴成角的位置,变换矩轴成角的位置,变换矩 阵为:阵为:1000cossin0sincos)(RT(2 2)绕原点旋转,使直线与绕原点旋转,使直线与x x坐标轴重合(也可以与坐标轴重合(也可以与y y轴重合轴重合),变换矩阵如下:),变换矩阵如下:(5 5)平移直线,使其回到原来位置,变换矩阵为:平
18、移直线,使其回到原来位置,变换矩阵为:10/010001ACTAC 通过以上五个步骤,即可实现图形对任意直线的镜射变换。其通过以上五个步骤,即可实现图形对任意直线的镜射变换。其组合变换如下:组合变换如下:1/2sin/) 12(cos02cos2sin02sin2cos)()()(ACACTTTTTTACRXMRAC注意事项:注意事项:l组合变换组合变换是通过是通过基本变换基本变换的组合而成的,点或点集的多次变换可的组合而成的,点或点集的多次变换可以一次完成,这要比逐次进行变换效率高。以一次完成,这要比逐次进行变换效率高。 l由于矩阵的乘法不符合交换律,即:由于矩阵的乘法不符合交换律,即: A
19、 AB BB BA A ,因此,因此,组组合的顺序合的顺序一般是一般是不能颠倒的不能颠倒的。顺序不同,则变换的结果亦不同。顺序不同,则变换的结果亦不同。 O图图4 47 7 先平移后旋转先平移后旋转 X X图图4 48 8 旋转后平移旋转后平移YYO12三维图形的变换是二维图形变换的简单扩展,变换的原理还是把齐次坐标点(x,y,z,1)通过变换矩阵变换成新的齐次坐标点(x,y,z,1),即 xyz 1xyz1T其中T为三维基本(齐次)变换矩阵:T 齐次变换矩阵:平移缩放旋转错切透视变换整体缩放比例和对称变换s000000T0000001xyzssssx y z 1xyz1T1.1.一般情况,一
20、般情况,s sx x,s,sy y,s,sz z0 0,图形沿三个坐标轴方向作放缩变换;,图形沿三个坐标轴方向作放缩变换;2.2.当当s sx x=1,s=1,sy y=s=sz z=-1=-1时,图形相对于时,图形相对于x x轴中心对称,其余类推轴中心对称,其余类推; ;3.3.当当s sx x-1,s-1,sy y=s=sz z=1=1时,图形相对于时,图形相对于yOzyOz平面对称,其余类推平面对称,其余类推; ;4.4.当当s sx x=s=sy y=s=sz z=-1=-1时,图形相对于原点中心对称。时,图形相对于原点中心对称。整体缩放得到:左边同乘 s xyz1xyzss10000
21、100T0010000ssx y z 1xyz1T平移变换 txyz1xyz1Ttx10000100T0010ttt1yz平移变换矩阵平移变换矩阵旋转变换三维组合变换 与二维组合变换一样,通过对三维基本变换矩阵的组合,可与二维组合变换一样,通过对三维基本变换矩阵的组合,可以实现对三维物体的复杂变换。设坐标以实现对三维物体的复杂变换。设坐标P P经过经过n n次变换次变换T T1 1,T,T2 2, ,T,Tn n到到P P* *,则变换结果为,则变换结果为 P P* *=PT=PT1 1T T2 2T Tn n=PT=PT 与二维相同,组合变换时,同样需要注意乘法的顺序与二维相同,组合变换时,
22、同样需要注意乘法的顺序绕任意轴旋转变换 绕任意轴旋转变换是组合变换,变换过程比较复杂。首先,绕任意轴旋转变换是组合变换,变换过程比较复杂。首先,对物体作平移和绕轴旋转变换,使得所绕之轴与某一根标准坐对物体作平移和绕轴旋转变换,使得所绕之轴与某一根标准坐标轴重合。然后,绕该标准坐标轴作所需角度的旋转。最后,标轴重合。然后,绕该标准坐标轴作所需角度的旋转。最后,通过逆变换使所绕之轴恢复到原来位置。这个过程须由通过逆变换使所绕之轴恢复到原来位置。这个过程须由7 7个基本个基本变换的级联才能完成。变换的级联才能完成。 设旋转任意轴为设旋转任意轴为p1( x1,y1,z1 ), p2( x2,y2,z2
23、 )两点所定义的)两点所定义的单位矢量单位矢量(a,b,c)。旋转角度为。旋转角度为 (图(图(a) 。这。这7个基本变换是:个基本变换是: 1平移平移T(x1,y1,z1)使使p1点与原点重合点与原点重合(图图(b); 2Rx(),使得轴,使得轴p1p2落入平面落入平面xoz内内(图图(c); 3Ry(),使,使p1p2与与z轴重合轴重合(图图(d); 4Rz(),执行绕,执行绕p1p2轴的轴的角度旋转角度旋转(图图(e); 5Ry(),作,作3的逆变换的逆变换T3-1 ; 6Rx(),作,作2的逆变换的逆变换T2-1 ; 7T(x1,y1,z1) 作作1的逆变换的逆变换 T1-1 。 注意
24、:注意:210000cossin00sincos00001aaaa3cos0sin00100sin0cos0000111111000010000101xyz4cossin00sincos0000100001其组合变换矩阵为: T T1 T2 T3 T4 T3-1 T2-1 T1-1例:简单几何体的图形变换例:简单几何体的图形变换111111222222888888111111xyzxyzxyzxyzTxyzxyz 式中:T为所要进行的图形变换矩阵 假定一六面体ABCDEFGH各点的坐标分别为(x 1, y 1, z 1),., (x 8, y 8, z 8),则经过图形变换后的坐标为:举例举例
25、四、平移变换四、平移变换4.3 4.3 图形绘制图形绘制二、错切变换二、错切变换一、比例变换一、比例变换三、镜像变换三、镜像变换 三维空间点的位置向量可以用三维空间点的位置向量可以用四维四维齐次坐标齐次坐标表示:表示:x y z 1x y z 1或或x y z Hx y z H。 变换矩阵为:变换矩阵为: abcpdefqThijrlmns五、旋转变换五、旋转变换一、比例变换一、比例变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:改变图形的改变图形的X X方向比例、方向比例、Y Y方向比例、方向比例、Z Z方向比例方向比例。变换矩阵:变换矩阵:0000000000001aeTj二、错切
26、变换二、错切变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:变换后的平面变换后的平面图形图形沿沿X X轴、轴、Y Y轴或轴或Z Z轴方向轴方向倾斜倾斜。 变换矩阵:变换矩阵:1010100001bcdfThi三、镜像变换三、镜像变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:三维图形对坐三维图形对坐标平面标平面XOYXOY、YOZYOZ、ZOXZOX进行进行镜像变换。镜像变换。 变换矩阵:变换矩阵:对对XOYXOY平面平面1000010000100001XOYT三、镜像变换三、镜像变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:三维图形对坐三维图形对坐标平面标平面XOY
27、XOY、YOZYOZ、ZOXZOX进行进行镜像变换。镜像变换。 变换矩阵:变换矩阵:对对YOZYOZ平面平面1000010000100001YOZT三、镜像变换三、镜像变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:三维图形对坐三维图形对坐标平面标平面XOYXOY、YOZYOZ、ZOXZOX进行进行镜像变换。镜像变换。 变换矩阵:变换矩阵:对对ZOXZOX平面平面1000010000100001ZOXT四、平移变换四、平移变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:三维图形沿三维图形沿X X、Y Y、Z Z轴方向移轴方向移动一定的距离。动一定的距离。变换矩阵:变换矩阵:1000010000101Tlmn五、旋转变换五、旋转变换举例举例4.3 4.3 图形绘制图形绘制作用:作用:变换后的点或变换后的点或平面图形平面图形绕坐绕坐标轴标轴旋转一定旋转一定角度。角度。变换矩阵:变换矩阵:绕绕X X轴逆时针轴逆时针
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论