5第五章-几何变换课件_第1页
5第五章-几何变换课件_第2页
5第五章-几何变换课件_第3页
5第五章-几何变换课件_第4页
5第五章-几何变换课件_第5页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第五章几何变换7/20/20231信息科学与技术学院康宝生bskang@几何变换是计算机图形学中的一个重要内容。通过对简单图形进行多种变换和组合,可以形成一个复杂图形。一般来说,图形从输入到输出贯串着各种变换。被描述的对象所处的环境和显示屏幕或图纸的环境是很不相同的,不仅位置不同,大多数情况下尺寸也很不同。这就要协调二着的关系。此外,三维的图形要在二维的屏幕或图纸上显示出来要通过投影变换。为了从不同的方向去观察对象,要求能对对象作旋转变换,放大缩小和平移变换更是经常要用的。绘图过程中还需要用窗口来规定要显示的内容,用视区来规定在屏幕或图纸上显示的位置。利用图形变换可实现改变或管理显示,例如,7/20/20232信息科学与技术学院康宝生bskang@通过调整图形组件的方向和大小可实现设计和设施布局;通过移动“照相机”或场景中的对象产生图形动画。而在图形的方向、尺寸和形状方面的变化可通过改变对象坐标描述的几何信息变换来完成。基本几何变换有平移、旋转和缩放,常用的其他变换还有反射和错切。

本章主要介绍二维图形几何变换的原理和方法,以及三维图形的几何变换。7/20/20233信息科学与技术学院康宝生bskang@5.1几何变换的基本原理

下面这张示意图,举例说明了图形的几种常见变换。几种常见的几何变换:放大、压缩、旋转、错切7/20/20234信息科学与技术学院康宝生bskang@总结以上这些变化后的图形结果,可以得到这样的结论:

(1)图形变化了,但原图形的构成规则(拓扑关系)没有改变;

(2)图形发生的变化,是因为其顶点位置(几何关系)的改变决定的。这种通过维持图形的拓扑关系不变,而仅改变图形的几何关系来实现改变图形的方法,我们称之为图形的几何变换。

既然图形的几何变换仅和点的位置变化有关,所以我们首先要讨论一个点在空间的位置及其变化。7/20/20235信息科学与技术学院康宝生bskang@由于点可以用一个列向量来表示,那么要改变一个点的位置,就意味着要改变这个向量(大小及方向)。对向量的运算通常用矩阵运算来实现。假如原顶点坐标为:经变换后的坐标为:那么用矩阵表示的变换过程为:7/20/20236信息科学与技术学院康宝生bskang@这是一个线性变换,其中的T

为线性变换矩阵,它是一二阶方阵。一个二维线性变换的一般形式也可以写成如下的代数式:x*=a1·x+b1·y+c1y*=a2·x+b2·y+c2转换为矩阵形式,就是:7/20/20237信息科学与技术学院康宝生bskang@上面所说一个线性变换的矩阵形式和代数形式的统一,必须对点向量的表示法稍作修改,即:

变换的矩阵形式和代数形式是完全可以统一的,只是原来用二维向量表示的点变成了用三维向量来表示。但其第三维是常数1。其几何意义为::z=0

平面上的点;:z=1

平面上的点;7/20/20238信息科学与技术学院康宝生bskang@两种表示方法,仅从图形上来看是没有实质性差别的。我们可以看下面的图例:在不同高度水平面上绘的图7/20/20239信息科学与技术学院康宝生bskang@这种用三维的形式来表示一个二维向量,进一步推广来说,用一个n+1维的形式来表示n

维向量的方法,叫做齐次坐标表示法。这一小小的改变,给图形变换的矩阵实现创造了条件。采用了齐次坐标表示法以后,我们可以把二维的线性变换表示成如下规格化的形式:三阶方阵

T称为二维线性变换矩阵。于是,对于任何二维图形的顶点进行几何变换,均可以写成如下形式:7/20/202310信息科学与技术学院康宝生bskang@P*=T

·

P其中:P*为变换后的新顶点表;P

为变换前的顶点表。

矩阵T

中元素的取值不同,可以形成对顶点的不同变换。连接新的顶点,从而构成新的图形(几何变换过程)。7/20/202311信息科学与技术学院康宝生bskang@5.2二维图形变换5.2.1二维基本变换

二维图形变换的一般形式是:

对于二维变换矩阵中各元素的不同取值,可以获得对二维图形的不同变换效果,这些变换称为二维图形的基本变换。这些基本变换有以下五种:7/20/202312信息科学与技术学院康宝生bskang@1.比例变换比例变换的变换矩阵为:变换结果为:即:7/20/202313信息科学与技术学院康宝生bskang@x*=r11·x,

y*=r22·y可以看到,r11为x

方向上的缩放因子,r22为y方向上的缩放因子,它们分别影响两个方向上的缩放效果。这些效果包括:

r11=r22>1:图形沿x、y

两个方向等比例放大;

0r11=r221:图形沿两个方向等比例缩小;

r11r22:由于图形在两个方向上的缩放系数不相等,所以经过变换后的图形将产生畸变。也能对图形产生拉伸和压缩的效果。(缩放中心为坐标系原点)7/20/202314信息科学与技术学院康宝生bskang@2.镜像(对称)变换对称变换的结果取决于对称轴的设置。(1)关于x

轴的对称变换对于x

轴的对称变换矩阵为:变换结果为:7/20/202315信息科学与技术学院康宝生bskang@(2)关于y

轴的对称变换对于y

轴的对称变换矩阵为:变换结果为:7/20/202316信息科学与技术学院康宝生bskang@(3)关于450

线的对称变换变换矩阵为:变换结果为:7/20/202317信息科学与技术学院康宝生bskang@(4)关于-450

线的对称变换变换矩阵为:变换结果为:7/20/202318信息科学与技术学院康宝生bskang@以上四种变换的效果如下图所示。关于两坐标轴的对称变换关于

-450

线的对称变换7/20/202319信息科学与技术学院康宝生bskang@(5)关于坐标系原点的对称变换变换矩阵为:变换结果为:7/20/202320信息科学与技术学院康宝生bskang@3.错切变换(1)沿x

轴方向的错切变换沿

x

轴方向的错切变换矩阵为:其变换结果为:7/20/202321信息科学与技术学院康宝生bskang@即:x*=x+r12·y;y*=y。

从以上结果可以看到:新图形各顶点的y

坐标没有变,而x

坐标是在原有的值上加一个有关y

正比例函数值的增量。所以使得整个图形在等高的前提下发生了倾斜。并且,当:r120时,图形沿

x

正向错切。r120时,图形沿x

负向错切。r12<0r12>07/20/202322信息科学与技术学院康宝生bskang@(2)沿y

轴方向的错切变换

沿y

轴方向的错切变换矩阵为:其变换结果为:即:x*=x;y*=y+r21x。7/20/202323信息科学与技术学院康宝生bskang@4.旋转变换在二维平面内,如不加说明,则所说旋转变换是指图形绕坐标系原点旋转。且逆时针旋转,角度取正值;顺时针旋转,角度

取负值。旋转变换矩阵为:其变换结果为:7/20/202324信息科学与技术学院康宝生bskang@如图所示,由于:由此得到旋转变换矩阵。x*xyy*A(x*,y*)A(x,y)7/20/202325信息科学与技术学院康宝生bskang@5.平移变换平移变换矩阵为:其变换结果为:7/20/202326信息科学与技术学院康宝生bskang@5.2.2二维组合变换

在前面介绍的五种变换都属于基本变换。但实际应用中,大部分图形的变换是不能仅靠单独的基本变换来实现的,而是需要经多次变换才能实现。这种由多个基本变换组合(级联)而成的复杂变换过程称为组合变换。

1.对任意直线的对称变换

前面介绍过五种对称变换,但对称轴都是特殊位置直线。对于对称轴是任意位置直线的对称变换,以上的对称变换矩阵都不能直接应用。7/20/202327信息科学与技术学院康宝生bskang@

例如,设任意直线的方程为:Ax+By+C=0该直线在x、y

两轴上的截距分别为-

C/A

-

C/B;直线的斜率为tg=-

A/B。那么,如何实现关于该直线的对称变换呢?7/20/202328信息科学与技术学院康宝生bskang@为了使这个变换能够实现,首先想到的是:最好能把任意位置直线变成能应用基本变换的特殊位置直线。所以整个变换的实现过程为:先把任意位置直线变(应用基本变换)为特殊位置直线;应用基本的对称变换矩阵进行变换;最后恢复原状。(1)让直线沿x

轴方向平移C/A,使其通过坐标系原点。变换矩阵为:7/20/202329信息科学与技术学院康宝生bskang@(2)让直线绕坐标系原点旋转-角,使与

x轴重合。变换矩阵为:平移旋转7/20/202330信息科学与技术学院康宝生bskang@(3)

由于原直线已与x

轴重合,于是对于直线的对称变换即为对于x

轴的对称变换。变换矩阵为:(4)绕原点旋转

角,使直线恢复到原倾斜位置。变换矩阵为:7/20/202331信息科学与技术学院康宝生bskang@(5)让直线沿x轴方向平移-

C/A,使其回到原来位置。变换矩阵为:关于

x轴的对称变换旋转7/20/202332信息科学与技术学院康宝生bskang@综合以上的五步,对任意直线的对称变换过程为:其组合变换矩阵:7/20/202333信息科学与技术学院康宝生bskang@2.绕任意点的旋转变换绕坐标原点以外的任意点P(x,y)

的旋转如图所示。前面介绍的旋转是以坐标系原点为旋转中心的,现在的旋转中心P

不在原点,所以不能简单地套用上面的旋转变换矩阵,我们可以通过以下几个基本变换来完成。7/20/202334信息科学与技术学院康宝生bskang@(1)将指定的任意旋转中心点P

平移到坐标系原点,以使原来的绕任意点旋转转化为绕坐标系原点的旋转。其变换矩阵为:(2)使图形绕坐标系原点旋转

角,其变换矩阵为:7/20/202335信息科学与技术学院康宝生bskang@(3)复原。使旋转中心从坐标系原点平移到原来的位置(x,y),变换矩阵为:所以,绕任意点P(x,y)的旋转过程为:即组合变换矩阵为:7/20/202336信息科学与技术学院康宝生bskang@从上述两个例子的解题过程可以看到,对于一般条件下的图形变换,解决问题的思路可以分为三步:Step1.

分析变换的性质;Step2.

分解改变成可用基本变换实现;Step3.

恢复原状态。7/20/202337信息科学与技术学院康宝生bskang@3.级联顺序对组合变换的影响由于矩阵的乘法运算不适用交换律,即两个矩阵的左乘和右乘,其结果是不相等的。所以在矩阵的乘法中,由于先后次序不同,得到的结果是不同的。这就是说,用基本变换的级联来实现图形的组合变换时,矩阵级联的顺序不同,则所得到的最终结果图形也不同。下面我们举例说明矩阵级联的顺序对变换结果图形的影响。7/20/202338信息科学与技术学院康宝生bskang@给定以平移变换和一旋转变换:先进行平移变换,然后再进行旋转变换,则最后的结果为:反过来,若先进行旋转变换,然后再进行平移变换,则最后的结果为:7/20/202339信息科学与技术学院康宝生bskang@从以上两个过程可以看出,两个结果矩阵是明显不同的。因此,在进行组合变换时,要特别注意基本变换的次序不能搞错。这其实引出了图形学中图形变换的变换模式问题。事实上,图形学中的图形变换分为空间模式和图形模式两种变换模式。7/20/202340信息科学与技术学院康宝生bskang@5.2.3窗口到视区的变换

设在世界坐标系中给定一称为窗口得矩形区域,其左下角(xmin

,ymin)和右上角

(xmax

,ymax)确定,另外,在屏幕坐标系中指定一矩形区域,称为视区,它的左下角和右上角坐标分别为(umin

,vmin)和(umax

,vmax)。所谓窗口到视区的变换就是将给定窗口中的图形显示在屏幕上的视区中。因此,我们需要进行坐标变换。这一变换可通过三步来完成:(1)做平移变换,使窗口左下角位于坐标原点。相应的坐标变换矩阵是:7/20/202341信息科学与技术学院康宝生bskang@y*x*

(2)做缩放变换,使窗口的尺寸与视区一致。相应的变换如下:(xmin,ymin)(xmax,ymax)xy7/20/202342信息科学与技术学院康宝生bskang@(3)

平移变换设置视区的位置,对应的变换矩阵为:y*x*vu视区7/20/202343信息科学与技术学院康宝生bskang@vu视区uv视区经过上述三步,可得到窗口到视区的变换矩阵:7/20/202344信息科学与技术学院康宝生bskang@5.2.4组合变换的效率

由上面的讨论可以看出,二维图形的几何变换都是由平移、旋转、错切、缩放、镜像等基本变换组合而成,其组合变换矩阵形式如下:显然,用3×3矩阵乘以向量来计算T·P

需要九次乘法和六次加法,然而,矩阵最后一行的固定结构将实际运算简化为:7/20/202345信息科学与技术学院康宝生bskang@将这一过程简化为四次乘法和四次加法。这是意义重大的加速,特别是当这个运算被应用到每张图形上数以千计甚至数以万计的点上时。所以,尽管3×3矩阵对组合二维变换很方便也很有用,但是通过利用最终矩阵的特殊结构我们能够在程序中最有效地利用它。一些硬件矩阵乘法器具有并行的加法器和乘法器,从而减少或消除了这个问题。7/20/202346信息科学与技术学院康宝生bskang@5.3三维图形变换

三维图形变换是在二维变换的基础上增加了对z坐标的考虑而得到的。我们可以通过指定一个表示物体在三个坐标方向移动距离的三维向量来对物体进行平移,也可以用三个坐标轴上的缩放因子来缩放物体。然而,三维旋转变换的扩展则不那么简单,当我们讨论xy

平面上的二维旋转时,只需考虑沿着垂直xy

平面的坐标轴进行旋转,而在三维空间,我们可能选择空间的任意方向作为旋转轴方向。在二维图形变换中,由于采用了齐次坐标表示方法,二维7/20/202347信息科学与技术学院康宝生bskang@变换矩阵是一个3×3的方阵。故我们可以联想到,在三维变换中,其变换矩阵是一个4×4的方阵。

三维变换矩阵的一般形式为:我们可以把该三维变换矩阵中的各元素按功能分为四部分,该四部分的功能分别为:7/20/202348信息科学与技术学院康宝生bskang@(1)实现比例、对称、错切和旋转等基本变换。

(2)[tx,ty,tz]T:实现三个坐标轴向的平移变换;

(3)[p,q,r]:可以实现透视变换;

(4)[s]:可以实现全比例变换。7/20/202349信息科学与技术学院康宝生bskang@5.3.1三维图形的基本变换

1.比例变换

三维比例变换的变换矩阵为:(1)当

s=1时,a11、a22、a33三个元素的值分别表示图形沿x,y,z

三个坐标轴方向上的比例因子。其中:若a11=a22=a33,三个方向上的缩放比例因子相等,图7/20/202350信息科学与技术学院康宝生bskang@

形产生等比例的缩放。若a11

a22≠

a33,三个方向上的缩放比例因子不等,结果图形产生畸变,三维图形产生拉伸和压缩的效果。(2)当s

≠1

时,设变换矩阵为:则三维变换结果为:7/20/202351信息科学与技术学院康宝生bskang@根据齐次化,使向量中的第四项元素变为常量

1。则上式变为:若s>1,则三维图形沿三个方向等比例缩小;若s<1,则产生等比例放大的变换。因此,s也称为全比例变换系数。

7/20/202352信息科学与技术学院康宝生bskang@2.镜像(对称)变换三维图形的对称变换主要是以三个坐标面作为对称平面的对称变换。(1)关于xoy

坐标平面的对称变换变换矩阵为:变换结果为:7/20/202353信息科学与技术学院康宝生bskang@(2)关于xoz

坐标平面的对称变换变换矩阵为:变换结果为:7/20/202354信息科学与技术学院康宝生bskang@(3)关于yoz

坐标平面的对称变换变换矩阵为:变换结果为:7/20/202355信息科学与技术学院康宝生bskang@3.平移变换变换矩阵为:变换结果为:7/20/202356信息科学与技术学院康宝生bskang@4.错切变换三维图形的错切变换,是沿空间三个坐标轴方向发生错切形成的,按错切方向不同,共分为六种基本情况。(1)沿x

轴方向含y

的错切所谓沿x

轴方向含y

的错切,是指错切平面沿x

轴方向错移并且离开y

轴。变换矩阵为:变换结果为:7/20/202357信息科学与技术学院康宝生bskang@(2)沿x

轴方向含

z

的错切错切平面沿

x

轴方向错移并且离开z

轴。变换矩阵为:变换结果为:7/20/202358信息科学与技术学院康宝生bskang@沿

x

轴含

y

的错切沿

x

轴含

z

的错切7/20/202359信息科学与技术学院康宝生bskang@(3)沿y

轴方向含x

的错切错切平面沿y

轴方向错移并且离开x

轴。变换矩阵为:变换结果为:7/20/202360信息科学与技术学院康宝生bskang@(4)沿y

轴方向含

z

的错切指错切平面沿y

轴方向错移并且离开z

轴。变换矩阵为:变换结果为:7/20/202361信息科学与技术学院康宝生bskang@(5)沿z

轴方向含x

的错切错切平面沿z

轴方向错移并且离开x轴。变换矩阵为:变换结果为:7/20/202362信息科学与技术学院康宝生bskang@(6)沿z

轴方向含y

的错切错切平面沿z

轴方向错移并且离开y

轴。变换矩阵为:变换结果为:7/20/202363信息科学与技术学院康宝生bskang@5.旋转变换三维图形的旋转变换,是指绕三个坐标轴旋转,转角

的正负按右手法则,如图所示。

(1)绕

x

轴旋转绕x

轴旋转

角的变换矩阵为:7/20/202364信息科学与技术学院康宝生bskang@(2)绕

z

轴旋转绕z

轴旋转

角的变换矩阵为:(3)绕

y

轴旋转绕y轴旋转

角的变换矩阵为:7/20/202365信息科学与技术学院康宝生bskang@5.3.2三维组合变换

对于较为复杂的三维变换,同二维一样,必须通过若干次三维基本变换的级联才能实现。下面我们以绕通过坐标系原点的任意空间直线的旋转变换为例,来说明复杂变换的确定。

1.任意轴的方向余弦与旋转变换的关系如图所示,设有空间任意轴

ON,其方向余弦分别为:

n1=cosa

,n2=cosb

,n3=cosg为实现空间点绕任意轴ON的旋转变换,7/20/202366信息科学与技术学院康宝生bskang@首先要把ON

轴绕z

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论