版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022-6-23计算机图形学演示稿 纪玉波制作(C)1第五章第五章 图形变换图形变换( (Geometric Transformations) 在计算机绘图应用中,经常要进行从一个几何图形到另一个几何图形的变换,例如,将图形向某一方向平移一段距离;将图形旋转一定的角度;或将图形放大或缩小等等,这种变换过程称为几何变几何变换换。图形的几何变换是计算机绘图中极为重要的一个组成部分,利用图形变换还可以实现二维图形和利用图形变换还可以实现二维图形和三维图形之间转换,甚至还可以把静态图形变为动三维图形之间转换,甚至还可以把静态图形变为动态图形,从而实现景物画面的动态显示态图形,从而实现景物画面的动态显
2、示。2022-6-23计算机图形学演示稿 纪玉波制作(C)2 5.1 5.1 二维图形变换二维图形变换( (Two-Dimensional Transformations) )5.1.15.1.1二维图形几何变换的基本原理二维图形几何变换的基本原理 (The basic principle of 2D graphics geometry transform) 二维平面图形的几何变换是指在不改变图形连线次序几何变换是指在不改变图形连线次序的情况下,对一个平面点集进行的线性变换的情况下,对一个平面点集进行的线性变换。实际上,由于一个二维图形可以分解成点、直线、曲线。把曲线离散化,它可以用一串短直线
3、段来逼近,而每一条直线段均由两点所决定,这样,二维平面图形不论是由直线段组成,还是由曲线段组成,都可以用它的轮廓线上顺序排列的平面点集来描述。因此可以说,对图形作几何变换,其实质对图形作几何变换,其实质是对点的几何变换是对点的几何变换,通过讨论点的几何变换,就可以理解图形几何变换的原理。2022-6-23计算机图形学演示稿 纪玉波制作(C)3例如,如果要对下图中的四边形ABCD进行平移变换,只需要对四个顶点A、B、C、D做平移变换,连接平移后的四个顶点即可得到四边形平移变换的结果。2022-6-23计算机图形学演示稿 纪玉波制作(C)4 对二维图形进行几何变换有五种基本变换形式,它们是:平移、
4、旋转、比例、对称和错切平移、旋转、比例、对称和错切,这些图形变换的规则可以用函数来表示。有两种不同的变换形式:一种是图形不动,而坐标系变动一种是图形不动,而坐标系变动,即变换前与变换后的图形是针对不同坐标而言的,称之为坐标模式变换;另一种是坐标系不动,而图形改变另一种是坐标系不动,而图形改变,即变换前与变换后的坐标值是针对同一坐标系而言的,称之为图形模式变换。实际应用中,后一种图形变换更有实际意义,下面讨论的图形变换是属于后一种变换。2022-6-23计算机图形学演示稿 纪玉波制作(C)55.1.25.1.2平移变换平移变换( (Translation) ) 平移变换是指将图形从一个坐标位置移
5、到另一个坐标位置的重定位变换。已知一点的原始坐标是P(x,y),加上一个沿X,Y方向的平移量tx 和ty ,平移此点到新坐标(xtx,yty),则新坐标的表达式为:yxtyytxx 如果对一图形的每个点都进行上述变换,即可得到该图形的平移变换。实际上,线段是通过对其两端点进行平移变换,多边形的平移是平移每个顶点的坐标位置,曲线可以通过平移定义曲线的坐标点位置,用平移过的坐标点重构曲线路径来实现。2022-6-23计算机图形学演示稿 纪玉波制作(C)6 平移变换只改变图形的位置,不改变图形的大小平移变换只改变图形的位置,不改变图形的大小和形状和形状。下图是一平移变换的例子。2022-6-23计算
6、机图形学演示稿 纪玉波制作(C)7 可以用矩阵形式来表示二维平移变换方程。图形变换通常使用齐次坐标矩阵齐次坐标矩阵来表示。平移变换方程的齐次坐标矩阵表示式为: 101000111yxttyxyx其中1010001yxttT称为变换矩阵变换矩阵。2022-6-23计算机图形学演示稿 纪玉波制作(C)8 有了上面的矩阵表示,连续的平移变换可以通过连续的矩阵乘法来实现。例如, 点经平移变换T1(tx1,ty1)后,再经平移变换T2(tx2,ty2),那么,最终的平移变换矩阵。二维图形平移变换示例二维图形平移变换示例2022-6-23计算机图形学演示稿 纪玉波制作(C)95.1.3 5.1.3 比例变
7、换比例变换( (Scaling) ) 一个图形中的坐标点P(x,y)若在X轴方向变化一个比例系数sx,在Y轴方向变化一个比例系数sy,则新坐标点P(x,y)的表达式为:yxsyysxx2022-6-23计算机图形学演示稿 纪玉波制作(C)10 这一变换称为相对于坐标原点的比例变换相对于坐标原点的比例变换, sx 和sy分别表示点P(x,y)沿X轴方向和Y轴方向相对坐标原点的比例变换系数。比例变换改变图形的大小。变换方程写成齐次坐标矩阵形式为: 100000011yxssyxyx其中变换矩阵:1000000yxssT2022-6-23计算机图形学演示稿 纪玉波制作(C)11 比例变换系数比例变换
8、系数s sx x和和s sy y可赋予任何正数值。当可赋予任何正数值。当值小于值小于1 1时缩小图形时缩小图形,值大于值大于1 1则放大图形则放大图形。当当s sx x和和s sy y被赋予相同值时,就产生保持图形相对比例被赋予相同值时,就产生保持图形相对比例一致的变换一致的变换, s, sx x和和s sy y值不等时产生值不等时产生X X轴方向和轴方向和Y Y轴轴方向大小不等的比例变换方向大小不等的比例变换。sx和sy都指定为1时,图形大小不改变。 实际上,相对于坐标原点图形的比例变换,相当于每一点相对于坐标原点的变换,因此,它不但改变图形的大小,而且改变图形的位置不但改变图形的大小,而且
9、改变图形的位置。2022-6-23计算机图形学演示稿 纪玉波制作(C)12下图是一图形比例变换的例子:中心在原点的放大变换中心不在原点的放大变换2022-6-23计算机图形学演示稿 纪玉波制作(C)13 可以通过选择一个在变换后不改变位置的固定点Pc(xc,yc),来控制图形变换的位置。例对于多边形图形,固定点的坐标(xc,yc)可以选择图形的某个顶点、图形几何中心点或任何其它位置,这样变换后固定点坐标不改变,多边形每个顶点相对于固定点缩放。对于坐标为P(x,y)的顶点,相对于固定点Pc(xc,yc)变换后的坐标P(x,y)可计算为:)1 ()()1 ()(ycycycxcxcxcsysyys
10、yyysxsxxsxxx写成齐次坐标矩阵形式为: 1)1 ()1 (000011ycxcyxsysxssyxyx2022-6-23计算机图形学演示稿 纪玉波制作(C)141)1 ()1 (0000ycxcyxsysxssT其中变换矩阵: 计算公式的推导可以这样考虑,先平移坐标原点(0,0)到(xc,yc),然后进行比例变换,变换后再将坐标原点移回到(0,0)。三个过程的结果就是相对于点(xc,yc)的比例变换。三个过程的变换矩阵分别是:2022-6-23计算机图形学演示稿 纪玉波制作(C)1510100011ccyxT10000002yxssT10100013ccyxT101000110000
11、001010001ccyxcc321yxssyxTTTT1)1 ()1 (0000ycxcyxsysxss2022-6-23计算机图形学演示稿 纪玉波制作(C)16二维图形比例变换示例二维图形比例变换示例2022-6-23计算机图形学演示稿 纪玉波制作(C)175.1.4 5.1.4 旋转变换旋转变换( (Rotation) ) 若图形中的坐标点P(x,y)绕坐标原点逆时针旋转一个角度, 则新坐标点P(x,y)的表达式为:cossinsincosyxyyxx 公式的推导可参考右图cossin)cossinsin(cos)sin(sincos)sinsincos(cos)cos(yxRRyyxR
12、Rx2022-6-23计算机图形学演示稿 纪玉波制作(C)18变换方程写成齐次坐标矩阵形式为: 1000cossin0sincos11yxyx其中变换矩阵1000cossin0sincosT上面是点P(x,y)以坐标原点为中心的旋转变换,还可以任意点Pc(xc,yc)为中心做旋转变换。其变换公式为:2022-6-23计算机图形学演示稿 纪玉波制作(C)19ccccccyyyxxyxyyxxxcos)(sin)(sin)(cos)( 此公式的推导过程可以这样考虑,先平移坐标原点(0,0)到(xc,yc),然后进行旋转变换,变换后再将坐标原点移回到(0,0)。三个过程的矩阵相乘结果就是以点(xc,
13、yc)为中心的旋转变换矩阵。 1sin)cos1 (sin)cos1 (0cossin0sincos11ccccxyyxyxyx10100011000cossin0sincos1010001TTTT321ccccyxyx公式写成齐次坐标矩阵形式即为:2022-6-23计算机图形学演示稿 纪玉波制作(C)20其中变换矩阵:1sin)cos1 (sin)cos1 (0cossin0sincosccccxyyxT 旋转变换只能改变图形的方位,而图形的大小和形状不变。旋转变换的几何表示见下图。2022-6-23计算机图形学演示稿 纪玉波制作(C)21二维图形旋转变换示例二维图形旋转变换示例2022-6
14、-23计算机图形学演示稿 纪玉波制作(C)22 5.1.5 5.1.5 对称变换对称变换(Reflection)(Reflection) 对称变换是产生图形镜象的一种变换,也称镜象变换或反射变换。将图形绕对称轴旋转就可以生成镜象图形。下面是实际拍照具有镜象效果的图片。2022-6-23计算机图形学演示稿 纪玉波制作(C)232022-6-23计算机图形学演示稿 纪玉波制作(C)241. 1. 对称于对称于X X轴轴(Symmetry about the X axisSymmetry about the X axis) 当变换对称于X轴时,则坐标点P(x,y)经对称变换后,新坐标点P(x,y)的
15、表达式为:yyxx变换方程写成齐次坐标矩阵形式为: 10001000111yxyx2022-6-23计算机图形学演示稿 纪玉波制作(C)25其中变换矩阵:100010001T对称X轴变换的几何表示见下图2022-6-23计算机图形学演示稿 纪玉波制作(C)262. 2. 对称于对称于Y Y轴轴(Symmetry about the Y axisSymmetry about the Y axis) 当变换对称于Y轴时,则坐标点P(x,y)经对称变换后,新坐标点P(x,y)的表达式为:yyxx变换方程写成齐次坐标矩阵形式为: 10001000111yxyx其中变换矩阵:100010001T2022
16、-6-23计算机图形学演示稿 纪玉波制作(C)27对称Y轴变换的几何表示见下图2022-6-23计算机图形学演示稿 纪玉波制作(C)283. 3. 对称于原点对称于原点(Symmetrical to the origin) (Symmetrical to the origin) 当图形对X轴和Y轴都进行对称变换时,即得相对于坐标原点的对称变换。这一变换前后点坐标之间的关系为:yyxx写成齐次坐标矩阵形式为: 10001000111yxyx其中变换矩阵:100010001T2022-6-23计算机图形学演示稿 纪玉波制作(C)29对称原点变换的几何表示见下图2022-6-23计算机图形学演示稿
17、纪玉波制作(C)304. 4. 对称平行于对称平行于X X轴的直线轴的直线(Symmetry straight line parallel to the x axis) 当对称轴是平行于X轴的直线yyc时,变换前后点的坐标之间的关系为:cccyyyyyyxx2)(变换方程写成齐次坐标矩阵形式为: 12001000111cyyxyx其中变换矩阵:120010001cyT2022-6-23计算机图形学演示稿 纪玉波制作(C)315. 5. 对称平行于对称平行于Y Y轴的直线轴的直线(Symmetry straight line parallel to the Y axis) 当对称轴是平行于Y轴的
18、直线xxc时,变换前后点的坐标之间的关系为:yyxxxxxxccc2)(变换方程写成齐次坐标矩阵形式为: 10201000111cxyxyx其中变换矩阵: 102010001cxT2022-6-23计算机图形学演示稿 纪玉波制作(C)326. 6. 对称于任一点对称于任一点( (x xc c,y,yc c) )的变换的变换(Symmetry to point(xc,yc) 对称于任一点(xc,yc)的变换,实际上可以看做分别相对于直线轴xxc和直线轴 yyc的两次对称变换,因此其变换公式是两者的综合:ccyyyxxx22变换方程写成齐次坐标矩阵形式为: 12201000111ccyxyxyx其
19、中变换矩阵:122010001ccyxT2022-6-23计算机图形学演示稿 纪玉波制作(C)337 7对称于任一轴的变换对称于任一轴的变换(Symmetry to any line) 关于XY平面内任一直线ymxb为对称轴的变换,可以分解为平移、旋转、对称于坐标轴等变换的组合。首先平移直线经过坐标原点,而后将直线绕坐标原点旋转至同某一坐标轴重合,做对称于坐标轴的变换,最后反向旋转和反向平移将直线置回原处。 如下图所示,平移直线经过坐标原点需要在Y轴方向上移动距离b,然后将直线绕坐标原点旋转至同Y轴重合,设旋转角度为 ,两步的变换矩阵分别为:2022-6-23计算机图形学演示稿 纪玉波制作(C
20、)34100100011bT1000cossin0sincos2T做对称于Y轴的对称变换,其变换矩阵为:1000100013T最后反向旋转和反向平移将直线置回原处,其变换矩阵分别为:1000cossin0sincos1000)cos()sin(0)sin()cos(4T100100015bT2022-6-23计算机图形学演示稿 纪玉波制作(C)35所以,对称于任一轴ymxb的变换矩阵为:1)sin(coscossin20sincoscossin20cossin2cossin22222254321bbbTTTTTT变换矩阵中的和需要用已知量表示出来。当m为直线斜率,b为截距时有:sinsin90
21、sincos90cos11)90cos(2mcossin90coscos90sin1)90sin(2mm所以222211sincosmm21cossinmm2022-6-23计算机图形学演示稿 纪玉波制作(C)36替换变换矩阵中的和得:11)1 (1201112012222222bmmbmbmmmmmmmm1m-1T222上述变换用代数方程表示为:2221)(211mmbyxmmxbmmbyxmmy22211)(122022-6-23计算机图形学演示稿 纪玉波制作(C)37二维图形对称变换示例二维图形对称变换示例2022-6-23计算机图形学演示稿 纪玉波制作(C)385.1.6 5.1.6
22、错切变换错切变换(Shear)(Shear) 错切变换是轴上点不动,其它点沿平行于此轴方向移动变形的变换。错切变换也称为剪切、错位或错移变错切变换也称为剪切、错位或错移变换换。常用的错切变换有两种:改变x坐标值和改变y坐标值。1.1. 沿沿X X轴方向关于轴方向关于Y Y的错切的错切 (About y shear along the x axis direction) 变换前和变换后y坐标不变,而x坐标根据y坐标值呈线性变化。变换前后点的坐标之间的关系为:yycyxx式中c为错切系数。若c0,则沿+X方向错切,若c0,则沿-X方向错切。2022-6-23计算机图形学演示稿 纪玉波制作(C)39
23、下图说明了矩形ABCD经错切变换后变为ABCD的结果。2022-6-23计算机图形学演示稿 纪玉波制作(C)40变换方程写成齐次坐标矩阵形式为: 1000100111cyxyx其中变换矩阵:10001001cT2022-6-23计算机图形学演示稿 纪玉波制作(C)412. 2. 沿沿Y Y轴方向关于轴方向关于X X的错切的错切(About y shear along the x axis direction) 变换前和变换后x坐标不变,而y坐标根据x坐标值呈线性变化。变换前后点的坐标之间的关系为: ydxyxx式中d为错切系数。若d0,则沿+Y方向错切,若d0,则沿-Y方向错切。右图说明了矩形ABCD经错切变换后结果为ABCD。2022-6-23计算机图形学演示稿 纪玉波制作(C)42 变换方程写成齐次坐标矩阵形式为: 1000100111dyxyx其中变换矩阵:10001001dT 除了沿X轴方向和沿Y轴方向的错切变换外,还可以使用沿平行于X轴方向的轴线或沿平行于Y轴方向的轴线以及任一轴线的错切变换。对于这些变换,可以通过先平移、旋转轴线,转化为沿X轴方向或沿Y轴方向的错切变换。 错切变换不仅改变图形的形状,而且改变图形的方位,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论