《第4章二维图形变换.ppt》由会员分享,可在线阅读,更多相关《第4章二维图形变换.ppt(91页珍藏版)》请在优知文库上搜索。
1、1第第4章章 二维变换及二维观察二维变换及二维观察24.5 4.5 二维图形变换二维图形变换 一、图形变换基本概念一、图形变换基本概念 1 1、定义、定义 即对原图形进行平移、旋转、缩小或放大等变换操作即对原图形进行平移、旋转、缩小或放大等变换操作。在计算机图形显示或绘图输入过程中,往往需要对图在计算机图形显示或绘图输入过程中,往往需要对图形指定部分的形状、尺寸大小及显示方向进行修改,形指定部分的形状、尺寸大小及显示方向进行修改,以达到改变整幅图形的目的,这就需要对图形进行平以达到改变整幅图形的目的,这就需要对图形进行平移、旋转、缩小或放大等变换操作。因此,图形变换移、旋转、缩小或放大等变换操
2、作。因此,图形变换是计算机绘图基本技术之一,利用它可以用一些很简是计算机绘图基本技术之一,利用它可以用一些很简单的图组合成相当复杂的图,可以把用户坐标系下的单的图组合成相当复杂的图,可以把用户坐标系下的图形变换到设备坐标系下。利用图形变换还可以实现图形变换到设备坐标系下。利用图形变换还可以实现二维图形和三维图形之间转换,甚至还可以把静态图二维图形和三维图形之间转换,甚至还可以把静态图形变为动态图形,从而实现景物画面的动态显示,下形变为动态图形,从而实现景物画面的动态显示,下面主要讨论二维图形变换。面主要讨论二维图形变换。3 2 2、图形变换分类、图形变换分类 图形变换有两种形式:图形变换有两种
3、形式:视象变换视象变换:图形不动,而坐标系变动,即变换图形不动,而坐标系变动,即变换前与变换后的图形是针对不同的坐标而言的,前与变换后的图形是针对不同的坐标而言的,也称之为坐标模式也称之为坐标模式 几何变换几何变换:另一种是坐标系不动,而图形改变,另一种是坐标系不动,而图形改变,即变换前与变换后的坐标值是针对同一坐标系即变换前与变换后的坐标值是针对同一坐标系而言的,也称之为图形模式变换,而言的,也称之为图形模式变换,实际应用中后种图形变换更具有实际意义,实际应用中后种图形变换更具有实际意义,我们讨论的图形变换主要是属于后一种变换我们讨论的图形变换主要是属于后一种变换 4二、二维图形几何变换的基
4、本原理二、二维图形几何变换的基本原理 1 1几何变换几何变换 在计算机绘图应用中,经常要实现从一个几何图在计算机绘图应用中,经常要实现从一个几何图形到另一个几何图形的变换。例如,将图沿某一方向形到另一个几何图形的变换。例如,将图沿某一方向平移一段距离;将图形旋转一定的角度;或将图形放平移一段距离;将图形旋转一定的角度;或将图形放大;反之把图形缩小等等。这些图形变换的效果虽然大;反之把图形缩小等等。这些图形变换的效果虽然各不相同,本质上却都是依照一定的规则,将一个几各不相同,本质上却都是依照一定的规则,将一个几何图形的点都变为另一个几何图形的确定的点,这种何图形的点都变为另一个几何图形的确定的点
5、,这种变换过程称为几何变换。变换过程称为几何变换。几何变换的规则是可以用函数来表示的。由于一几何变换的规则是可以用函数来表示的。由于一个二维图形可以分解成点、直线、曲线。把曲线离散个二维图形可以分解成点、直线、曲线。把曲线离散化,它可以用一串短直线段来逼近;而直线段可以是化,它可以用一串短直线段来逼近;而直线段可以是一系列点的集合,因此点是构成图形的基本几何元素一系列点的集合,因此点是构成图形的基本几何元素之一。我们先来讨论点的几何变换的函数表示。之一。我们先来讨论点的几何变换的函数表示。5 二维平面图形的几何变换是指在不改变图形连线次二维平面图形的几何变换是指在不改变图形连线次序的情况下,对
6、一个平面点集进行的线性变换。序的情况下,对一个平面点集进行的线性变换。二维平面图形的轮廓线,不论是由直线段组成二维平面图形的轮廓线,不论是由直线段组成(多边形),还是由曲线段组成,都可以用它的轮廓(多边形),还是由曲线段组成,都可以用它的轮廓线上顺序排列的平面点集来描述,例如长方形线上顺序排列的平面点集来描述,例如长方形ABCDABCD,是由四个角点是由四个角点A A(x x1 1,y y1 1),),B B(x x2 2,y y2 2),),C C(x x3 3,y y3 3),),D D(x x4 4,y y4 4)顺序连接而成,为了使画出的图形是闭合顺序连接而成,为了使画出的图形是闭合的
7、,首尾两点必须连接。的,首尾两点必须连接。6 二维平面图形变换的结果有两种,一是使图形产生位二维平面图形变换的结果有两种,一是使图形产生位置的改变;另一种是使图形产生变形,例如把图形放大。置的改变;另一种是使图形产生变形,例如把图形放大。对二维图形进行几何变形有五种基本变换形式,它们是:对二维图形进行几何变形有五种基本变换形式,它们是:平移、旋转、比例、对称和错切。平移、旋转、比例、对称和错切。7 2 2基本几何变换的解析表示基本几何变换的解析表示 (l l)平移变换平移变换 平面上一点平面上一点P P(x x,y y),),如果在如果在X X轴方向的平移增量为轴方向的平移增量为t tx x,
8、在在Y Y轴方向平移增量为轴方向平移增量为t ty y时,则平移后所得新点时,则平移后所得新点P P(x x,y y)坐标表达式为:坐标表达式为:x x=x x+t tx x,y y=y y+t ty y 我们把这一变换称为平移变换。我们把这一变换称为平移变换。如果对一图形的每个点都进行上述变换,即可得到该图如果对一图形的每个点都进行上述变换,即可得到该图形的平移变换。实际上,直线的平移变换,可以通过对其形的平移变换。实际上,直线的平移变换,可以通过对其定义端点的平移变换来实现,对于其它类型的变换这种处定义端点的平移变换来实现,对于其它类型的变换这种处理方法也是可行的。理方法也是可行的。平移变
9、换只改变图形的位置,不改变图形的大小和形状平移变换只改变图形的位置,不改变图形的大小和形状tytx8(2 2)比例变换)比例变换 一个图形中的坐标点(一个图形中的坐标点(x x,y y),),若在若在X X轴方向有一个比轴方向有一个比例系数例系数S Sx x,在在Y Y轴方向有一个比例系数轴方向有一个比例系数S Sy y,则该图形的新则该图形的新坐标点(坐标点(x x,y y)的表达式为的表达式为 x x=xSxSx x y y=ySySy y;这一变换称为比例变换。这一变换称为比例变换。比例变换不仅改变图形的位置,而且改变图形的大小比例变换不仅改变图形的位置,而且改变图形的大小 9(3 3)
10、旋转变换)旋转变换 若图形中的坐标点(若图形中的坐标点(x x,y y)绕坐标原点逆时针旋转一绕坐标原点逆时针旋转一个角度个角度 ,则该点变换后的新坐标(则该点变换后的新坐标(x x,y y)与交换前与交换前的坐标的坐标(x x,y y)的关系为:的关系为:x x=xcosxcos-ysinysiny y=xsinxsin+ycosycos 旋转变换只能改变图形的方位,而图形的大小和形状旋转变换只能改变图形的方位,而图形的大小和形状不变,不变,10(4 4)对称变换)对称变换如果经过变换后所得到的图形与变换前的图形关于如果经过变换后所得到的图形与变换前的图形关于X X坐标坐标轴是对称的,则称此
11、变换为关于轴是对称的,则称此变换为关于X X轴的对称变换。经过这轴的对称变换。经过这一变换后的坐标点(一变换后的坐标点(x x,y y)与变换前的对应坐标点(与变换前的对应坐标点(x x,y y)的关系为:的关系为:x x=x x,y y=-=-y y 与此类似,若变换前后的图形关于与此类似,若变换前后的图形关于Y Y轴对称,则称为轴对称,则称为关于关于Y Y轴的对称变换。这一变换前后点的坐标间的关系:轴的对称变换。这一变换前后点的坐标间的关系:x x=-=-x x,y y=y y当图形对当图形对X X轴和轴和Y Y轴都进行对称变换时,即得相对于原点轴都进行对称变换时,即得相对于原点的中心对称
12、变换。这一变换前后点的坐标之间的关系为的中心对称变换。这一变换前后点的坐标之间的关系为:x x=-=-x x,y y=-=-y y对称变换只改变图形方位,不改变其形状和大小。对称变换只改变图形方位,不改变其形状和大小。1112(5 5)错切变换)错切变换如果变换前坐标点(如果变换前坐标点(x x,y y)与变换后对应的新坐标点(与变换后对应的新坐标点(x x,y y)的关系为:的关系为:x x=x x+cy cy,y y=y y我们称这一变换为沿我们称这一变换为沿X X轴的错切变换,式中轴的错切变换,式中c c为错切系数为错切系数与此类似,若变换前后对应点的坐标关系为:与此类似,若变换前后对应
13、点的坐标关系为:x x=x x,y y=y y+bx bx 则称此变换为沿则称此变换为沿Y Y轴的错切变换,其中轴的错切变换,其中b b为错切系数。为错切系数。错切变换不仅改变图形的形状,而且改变图形的方位,错切变换不仅改变图形的形状,而且改变图形的方位,但图形中的平行关系不变,但图形中的平行关系不变,13一般把上述变换统称为基本的图形变换,绝大部一般把上述变换统称为基本的图形变换,绝大部分复杂的图形变换都可以通过这些基本交换的适分复杂的图形变换都可以通过这些基本交换的适当组合来实现。当组合来实现。14二、几何变换的矩阵表示形式二、几何变换的矩阵表示形式 1.1.变换矩阵变换矩阵任何一个复杂图
14、形都是由任意多个有序点集连线而成。任何一个复杂图形都是由任意多个有序点集连线而成。在解析几何学中。在二维空间内,平面上的点可以用一在解析几何学中。在二维空间内,平面上的点可以用一行两列矩阵行两列矩阵x yx y或两行一列矩阵来表示。由此,一个或两行一列矩阵来表示。由此,一个由由n n个点的坐标组成的复杂图形可以用个点的坐标组成的复杂图形可以用n n2 2阶矩阵表示:阶矩阵表示:nxxxx.321 nyyyy.321这种图形的表示法称为二维图形的矩阵表示法。这种图形的表示法称为二维图形的矩阵表示法。15由此可知,图形的变换可用矩阵运算来实现。具体说就由此可知,图形的变换可用矩阵运算来实现。具体说
15、就是由构成图形的点集的矩阵与是由构成图形的点集的矩阵与T=T=矩阵乘法运算,矩阵乘法运算,即即我们称我们称T=T=为二维图形变换矩阵,其中点集中任为二维图形变换矩阵,其中点集中任意一点(意一点(x x,y y)变换后坐标为:变换后坐标为:ca db nnnnnncybxdybxdybxcyaxcyaxcyaxdbcayyyxxx.221122112121 dbca 是是变变换换后后的的坐坐标标式式中中yxyxdybxcyaxdbcayx 16 dybxycyaxx 这是我们熟悉的关于直角坐标变换因子。这是我们熟悉的关于直角坐标变换因子。由上式可知,变换矩阵由上式可知,变换矩阵 中各元素决定着图
16、形中各元素决定着图形各种不同变换各种不同变换。dbcaT172 2二维基本变换的矩阵表示二维基本变换的矩阵表示(1 1)比例变换)比例变换 若令变换矩阵若令变换矩阵 则写成矩阵形式为:则写成矩阵形式为:daT00 00yxdyaxdayx 若取若取a=3 d=1 a=3 d=1 对点(对点(2 2,3 3)做变换)做变换,则则 可以看出,可以看出,a1a1,d=1 d=1,变换后图形沿变换后图形沿X X方向放大,方向放大,显然,当显然,当00a1a1d1时,则使图形沿时,则使图形沿Y Y方向放大方向放大 36100332 yx18a a11,d=1 d=1,变换后变换后图形沿图形沿X X方向放大方向放大 当当a=1a=1,d1d1时,则使时,则使图形沿图形沿Y Y方向放大方向放大 19若取若取a=1a=1,d=0d=0,图形沿图形沿Y Y方向压缩成线段,如下图所示方向压缩成线段,如下图所示当当a=1a=1,d=1d=1变换后图形没有变化,称这种变换矩阵为恒变换后图形没有变化,称这种变换矩阵为恒等矩阵。等矩阵。4321000024420001442224424321 yxyx20若取若取