计算机图形学第七章_第1页
计算机图形学第七章_第2页
计算机图形学第七章_第3页
计算机图形学第七章_第4页
计算机图形学第七章_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

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

文档简介

1、第七章 图形变换n图形变换一般是指将物体的几何信息经过放大、缩小、平移和旋转等几何变换后产生新的图形。它总是与相关的坐标系紧密相连的。从相对运动的观点来看,图形变换既可以看作是图形相对于坐标系的变动,即:坐标系固定不动,物体的图形在坐标系中的坐标值发生变化;也可以看作是图形不动,但是坐标系相对于图形发生了变动,从而使得物体在新的坐标系下具有新的坐标值。通常图形变换只改变物体的几何形状和大小,但是不改变其拓扑结构。第七章 图形变换n教学学时教学学时:4课时n教学目的与要求教学目的与要求: 了解各种坐标系的定义及其作用;熟悉二维观察流程;掌握二维三维坐标变换的基本方法n教学重点:教学重点:坐标变换

2、,平移变换,伸缩变换,旋转变换,组合变换;第七章 图形变换n主要研究内容:n1. 图形变换的数学基础n2.窗口视图变换n3.二维图形几何变换n4.三维图形几何变换第七章 图形变换n图形变换是指对计算机生成的图形进行变换的技术, 它是计算机图形学中较为基础的内容之一。 通过图形变换可以从简单图形生成复杂图形; 可以从某一个图形得到多个其它图形; 可用二维图形表示三维形体; 可对静态图形经过快速变换而获得图形的动态显示效果; 当图形具有一定的规律性时, 还可以使绘图程序简单化。 第七章 图形变换n所以, 为了提高图形程序的设计效率和质量, 开拓图形程序应用范围的新领域, 深入学习图形变换是十分必要

3、的。 图形变换应用的例子如图7.1所示。 目前, 较为完善的图形软件中, 都包含有图形几何变换的一些功能。n图形变换的作用和意义:l把用户坐标系与设备坐标系联系起来;l可由简单图形生成复杂图形;l可用二维图形表示三维形体;1.动态显示。第七章 图形变换图 7.1 图形变换应用示例 7.1图形变换的数学基础zyxuuuUzyxvvvVzzyyxxvuvuvuVU矢量矢量和7.1图形变换的数学基础矢量的数乘 矢量的点积n性质zyxkukukuUkzzyyxxvuvuvuVUUVVUVUVU000UUU7.1图形变换的数学基础矢量的长度 n单位矢量 n矢量的夹角矢量的叉积 222zyxuuuUUUV

4、UVUcoszyxzyxvvvuuukjiVU7.1图形变换的数学基础n矩阵 mn 阶矩阵n阶方阵零矩阵行向量与列向量单位矩阵矩阵的加法 矩阵的数乘 矩阵的乘法 矩阵的转置 矩阵的逆 7.1图形变换的数学基础矩阵的含义矩阵:由mn个数按一定位置排列的一个 整体,简称mn矩阵。其中,aij称为矩阵A的第i行第j列元素mnmmnnaaaaaaaaa . . . . . . 21222211 1211A7.1图形变换的数学基础矩阵运算n加法设A,B为两个具有相同行和列元素的矩阵 . b . . . . b m22111112121111mnmnmmmnnbaababaabaABkA = k*aij|

5、i=1.m, j=1,. n数乘7.1图形变换的数学基础乘法设A为32矩阵,B为23矩阵 C = A B = C=Cmp = Am n Bnp cij = aik*bkj单位矩阵 在一矩阵中,其主对角线各元素aii=1,其余皆为0的矩阵称为单位矩阵。n阶单位矩阵通常记作In 。 Am n = Am n In babab abababababababababa322322221221312321221121321322121211311321121111 k=1,n7.1图形变换的数学基础n逆矩阵若矩阵A存在AA-1=A-1A=I,则称A-1为A的逆矩阵n矩阵的转置 把矩阵A=(aij)mn的行

6、和列互换而得到的nm矩阵称为A的转置矩阵,记作AT 。 (AT) T = A (A+B)T = AT + BT (aA)T = aAT (AB)T = BT AT 当A为n阶矩阵,且A=AT ,则 A是对称矩阵。7.1图形变换的数学基础矩阵运算的基本性质n交换律与结合律师 A+B=B+A; A+(B+C)=(A+B)+Cn数乘的分配律及结合律 a(A+B) = aA+aB; a(A B) = (aA) B=A (aB) (a+b)A = aA + bA a(bA) = (ab)A7.1图形变换的数学基础n矩阵乘法的结合律及分配律 A(B C) = (A B)C (A+B) C = A C+ B

7、 C C (A+B) = C A + C Bn矩阵的乘法不适合交换律7.2窗口视图变换n图形变换一般是指将物体的几何信息经过放大、缩小、平移和旋转等几何变换后产生新的图形。它总是与相关的坐标系紧密相连的。从相对运动的观点来看,图形变换既可以看作是图形相对于坐标系的变动,即:坐标系固定不动,物体的图形在坐标系中的坐标值发生变化;也可以看作是图形不动,但是坐标系相对于图形发生了变动,从而使得物体在新的坐标系下具有新的坐标值。通常图形变换只改变物体的几何形状和大小,但是不改变其拓扑结构。7.2窗口视图变换 窗口和视图区窗口和视图区n用户坐标系用户坐标系(world coordinate system

8、,简称WC)n设备坐标系设备坐标系(device coordinate system,简称DC)n窗口区窗口区(window)n视图区视图区(viewport) 7.2窗口视图变换na 世界坐标系: 通常世界坐标系是一个三维笛卡儿坐标系。它是一个全局坐标系统,一般为右手坐标系。该坐标系主要用于图形场景中的所有图形对象的空间定位、观察者(视点)的位置和视线的定义等等。计算机图形系统中所涉及的其它坐标系基本上都是参照它进行定义的。b 局部坐标系: 为了几何造型和观察物体方便起见,独立于世界坐标系定义的二维或三维笛卡儿坐标系称为局部坐标系。在局部坐标系中定义的局部物体,通过指定局部坐标系在世界坐标系

9、中的方位,利用几何变换,就可以将局部定义的物体变换到世界坐标系内,使之升级成为世界坐标系中的物体。7.2窗口视图变换nc 观察坐标系: 观察坐标系通常是以视点的位置为原点,通过用户指定的一个向上的观察向量来定义的一个坐标系,缺省为左手坐标系。观察坐标系主要用于从观察者的角度对整个世界坐标系内的图形对象进行观察,以便简化几何物体在视平面(又成为成像面或投影面)的成像的数学演算。nd 视平面(成像面)坐标系: 它是一个二维直角坐标系统,主要用于计算物体在成像面上的投影。一般是通过指定视方向和视点到成像面之间的距离来定义成像面(投影面)。可进一步在投影面上定义一个称之为窗口的矩形区域来实现部分成像。

10、7.2窗口视图变换ne 屏幕坐标系: 屏幕坐标系也称为设备坐标系,它主要用于某一特定的计算机图形显示设备(如光栅显示器)的表面的点的定义。在多数情况下,对于每一个具体的显示设备,都有一个单独的设备坐标系。 在定义了成像窗口的情况下,可进一步在屏幕坐标系统中定义称为视区的有界区域,视区中的成像即为实际所观察到的图形对象。换句话说,在世界坐标系中要显示的区域称为窗口,而显示器上相应的图形输出区域称为视区(或视口)。将世界坐标系中的一部分区域中的场景映射到设备坐标系的过程称为观察变换;将二维观察变换简单地称为窗口到视区的变换,简称为窗视变换。 7.2窗口视图变换n1. 世界坐标系(WCS-World

11、 Coordinate System)n 世界坐标系一般是三维右手直角坐标系, 它的单位根据所描述的实际对象的大小来确定, 通常使用实数, 取值范围并无限制。 它是一般用户绘图时所取的坐标系, 有时也称为用户坐标系或物体坐标系。 通常表示为图7.2(a), 它也可以是二维的, 表示为图7.2(b)。 7.2窗口视图变换 图 7.2 世界坐标系(WCS)(a) 3D右手直角坐标系; (b) 2D右手直角坐标系7.2窗口视图变换n2. 目坐标系(ECS/VCS-Eye Coordinate System)n 目坐标系一般是三维左手直角坐标系, 通过变换可在用户坐标系的任何位置, 任何方向定义。 它

12、的单位根据所描述的实际对象的大小来确定, 一般使用实数。 它是一般用户观察图形对象时所取的坐标系, 有 时 也 称 为 观 察 坐 标 系 ( V C S - V i e w Coordinate System)。 7.2窗口视图变换n建立目坐标系的主要作用有两个, 第一个是用于指定裁剪空间, 确定三维立体的哪部分要显示输出; 第二个是通过定义观察(投影)平面, 把可显示部分的用户坐标变换成规格化的设备坐标。 用户坐标与目坐标之间的关系, 如图7.3所示。 7.2窗口视图变换 图 7.3 目坐标系(ECS) 7.2窗口视图变换n3. 设备坐标系(DCS-Device Coordinate Sy

13、stem)n 为了便于输出真实图形, 设备坐标系(DCS)有时也采用左手三维直角坐标系, 但它不全都是左手的、 三维的。 它的单位根据输出设备的实际大小来确定, 一般使用整数, 如图7.4所示。 7.2窗口视图变换图 7.4 设备坐标系(DCS) 7.2窗口视图变换n4. 规格化设备坐标系(NDCS-Normalized Device Coordinate System)n 在早期的图形系统中, 图形程序(或软件包)大多是在用户坐标系(WCS)中画图, 然后直接映射到设备坐标空间(DCS)显示输出。 7.2窗口视图变换n这就给设备的更换和软件的移植带来不方便。 为此, 在WCS和DCS之间定义

14、了一个与设备无关的规格化设备坐标系, 考虑到且坐标系与设备坐标系, 它常被取为三维或二维左手直角坐标系, 取值范围约定为(0.0, 0.0, 0.0)到(1.0, 1.0, 1.0)或者(0.0, 0.0)到(1.0, 1.0), 如图5.7所示。 用户的绘图数据经过转换成NDCS中的值, 使得图形有了统一的设备空间。 这对图形的统一处理, 带来很大的方便, 从而提高图形程序的可移植性。 7.2窗口视图变换图 7.5 规格化设备坐标系(NDCS) 7.2窗口视图变换n以上介绍的坐标系均为三维坐标系, 但在显示器屏幕上或绘图机上, 则要求用户定义一个平面。 较为简单方便的办法是使z坐标值取零。

15、因此在三维直角坐标系中, xOy平面也可以看作是基本工作平面。 任何不在xOy平面内的图形可以通过本章介绍的图形变换来处理。 n国际图形标准GKS(Graphics Kernel System)是图形程序和各种图形输入/输出设备之间的一个标准软件接口。 为便于图形程序的使用和对设备的处理, GKS设置了三种坐标系, 即世界坐标系(WCS)、 规范化设备坐标系(NDCS)和设备坐标系(DCS)。 它们之间的转换如图7.6所示。 7.2窗口视图变换图 7.6 WCS、 ECS、 NDCS和DCS间的转换 yxODCSxOyDCSyxODCSy11xO0UOVNDCSECS观察平面yxWCSO7.2

16、窗口视图变换n窗口区和视图区的坐标变换n设窗口的四条边界WXL,WXR,WYB,WYT视图的四条边界VXL,VXR,VYB,VYT则用户坐标系下的点(即窗口内的一点)(Xw,Yw)对应屏幕视图区中的点(Xs,Ys),其变换公式为VYBWYBYWYBWYTVYBVYTYVXLWXLXWXLWXRVXLVXRXwsws7.2窗口视图变换n简化为:n1) 当ac时,即x 方向的变化与y方向的变化不同时,视图中的图形会有伸缩变化,图形变形。n2) 当a=c=1,b=d=0则Xs=Xw,Ys=Yw,图形完全相同。n思考:前面讲的窗口视图变换时,假设窗口的边和坐标轴平行,如果窗口的边不和坐标轴平行呢? 式

17、) 1 (dYcYbXaXwsws7.2窗口视图变换nA. 先让窗口FGHI转-角,使它和FGHI重合。nB. 用(1)式进行计算。7.2窗口视图变换二维图形的显示流程图7.3二维图形几何变换n图形变换:对图形的几何信息经过几何变换后产生新的图形。n图形变换的两种形式:1.图形不变,坐标系改变;2.图形改变,坐标系不变。我们所讨论的是针对坐标系的改变而讲的。 7.3二维图形几何变换7.3.1 二维图形几何变换的原理 二维图形由点或直线段组成 直线段可由其端点坐标定义 二维图形的几何变换:对点或对直线段端点的变换yxPyxP7.3二维图形几何变换n二维变换矩阵 二维图形变换矩阵可以用下式表示:i

18、hgfedcbaTD27.3二维图形几何变换n从变换功能上可把T2D分为四个子矩阵,其中edba的作用是对图形几何信息进行伸缩、对称、旋转和错切等变换;g h的作用对图形进行平移变换;fc是对图形进行投影;g的作用是在x轴的1/g处产生灭点,h的作用是在轴的1/h处产生灭点。 i 是对整个图形进行伸缩变换。 xT yTxxTyPPyT平移变换yxTyyTxx几何关系yxTTyxyx矩阵形式xSySyx相对于原点原点的比例变换相对于重心重心的比例变换yx重心yxSyySxx几何关系yxSSyxyx00 矩阵形式10yxSSyxSS 1yxSSyxSS 1yxSSyxSS sincos ryrx(

19、5-11)cossinsincos)sin(sinsincoscos)cos(rrryrrrx(5-12)cossinsincosyxyyxx将式(5-11)代入式(5-12)得:(5-13)PP几何关系(5-14) cossinsincos yxyx矩阵形式yx旋转变换7.3.3 齐次坐标(齐次坐标(homogeneous coordinates)技术)技术n 1.1.齐次坐标技术的引入齐次坐标技术的引入n 平移、比例和旋转等变换的组合变换n 处理形式不统一,将很难把它们级联在一起。 2.变换具有统一表示形式的优点变换具有统一表示形式的优点便于变换合成便于硬件实现 3.齐次坐标技术的基本思想

20、齐次坐标技术的基本思想 把一个n维空间中的几何问题转换到n+1维空间中解决。 4.齐次坐标表示齐次坐标表示齐次坐标表示不是唯一的),.,(21nxxx)/,.,/,/(21nxxx ),.,(21nxxx),.,(21nxxx15.基本几何变换的齐次坐标表示基本几何变换的齐次坐标表示 n平移变换 101000111yxTTyxyx 100000011yxSSyxyx 1000cossin0sincos11yxyxn比例变换n旋转变换:6. 无穷远点或无穷远区域的齐次坐标表示无穷远点或无穷远区域的齐次坐标表示 时,齐次坐标 表示一个n维的无穷远点 0),.,(21nxxx yyxx关系几何 11

21、00010001 11yxyxyx形式矩阵yyxx关系几何 1100010001 11yxyxyx形式矩阵oyx对称变换(1)yxo对称变换(2)yyxx 1100010001 11yxyxyx关系几何形式矩阵形式矩阵关系几何xyyx 110000101011xyyxyxoxy对称变换(3)xyoy=x对称变换(4)xyyx几何关系 110000101011xyyxyx矩阵形式xyoy=-x对称变换(5)x 错切变换(1)yxayyctgx 有ctga 令yyayxx 代入得yyxxx 几何关系11000100111yayxayxyx矩阵形式 错切变换(2)yxy 11000100111ybx

22、xbyxyx矩阵形式几何关系yyyxx byyctgx 有ctgb 令yyayxx 代入得二维基本变换-错切变换n1) 当d=0时, (x* y* 1)=(x+by y 1):图形的y坐标不变;n当b0:图形沿+x方向作错切位移。ABCDA1B1C1D1n当b0:图形沿+y方向作错切位移。ABCD A1B1C1D1当d0:图形沿-y方向作错切位移。ABCD A2B2C2D2n组合变换又称级联变换,指对图形做一次以上的几何变换。n注意:任何一个线性变换都可以分解为上述几类变换。7.3.4 二维组合变换二维组合变换n1.相对于任意点(相对于任意点(x0 , y0)的比例变换)的比例变换n 对任意点

23、比例变换的步骤:n (1)平移变换n (2)相对于原点的比例变换 n (3)平移变换n当(x0 , y0)为图形重心的坐标时,这种变换实现的是相对于重心的比例变换。 7.3.4 二维组合变换二维组合变换令1010001001yxT1000000yxSSS1010001002yxT 1000000 112233yxSSyxyx 1010001 11001122yxyxyx 1010001 11003344yxyxyx任意点比例变换示意图平移 111yx平移比例 21STTT 则有 TyxSTTyxyxyx 1 11111211144(x2,y2)(x3,y3)(x0,y0)Oxy(x1,y1)(

24、x4,y4)相对于任意点(x0,y0)的旋转变换 1000cossin0sincos 112233yxyx 1010001 11001122yxyxyx 1010001 11003344yxyxyx任意点旋转变换示意图平移 100yx平移旋转1010001001yxT1000cossin0sincos R1010001002yxT 21RTTT TyxRTTyxyxyx 1 11111211144令则有例1:复合平移n求点P(x,y)经第一次平移变换(Tx1,Ty1),第二次平移变换(Tx2,Ty2)后的坐标P*(x*, y*)n解:设点P(x,y,1)经第一次平移变换后的坐标为P(x y 1

25、),则1111101000111tyxTyxTTyxyxP212211221101000110100011101000111*ttyxyxyxTTyxTTTTyxTTyxyxP例2:多种复合组合n例:对一线段先放大2倍(即Sx=Sy=2),再平移Tx=10,Ty=0。n解:设点(x,y)为线段上的任意一点,点(x,y)为点(x,y)放大后的坐标则:设点(x,y)为点(x,y)经平移后的坐标为:x,y,1= x,y,1T2(10,0)则: x,y,1= x,y,1T2(10,0)=x,y,1S2(2,2)T2(10,0) 令:M=S2(2,2)T2(10,0) ,则M即为组合变换yx(x,y)y

26、x(x ,y )yx(x,y)Tx例3:旋转变换n对参考点F(xf,yf)做旋转变换。n解:n1、把旋转中心F(xf,yf)平移至坐标原点,即坐标系平移(-xf,-yf),则 ffffyxTyxyxyxyx110100011111 Tyxyxyx11000cossin0sincos11221122例3:旋转变换n 将坐标系平移回原来的原点ffffyxTyxyxyxyx1101000111*2222 ffffyxTTyxTyxyx11*例4:任意的反射轴的反射变换n任一图形关于任意的反射轴y=a+bx的反射变换 n解:1. 将坐标原点平移到(0,a)处100100011aT例4:任意的反射轴的反

27、射变换n2.将反射轴(已平移后的直线)按顺时针方向旋转角,使之与x轴重合 1000cossin0sincosR 1000cossin0sincosR1000100012T 例4:任意的反射轴的反射变换n5.恢复反射轴的原始位置100100013aT 321TRTRTT平移物体使固定点与坐标原点重合对于坐标原点缩放用步骤1的反向平移将物体移回原始位置例5:通用固定点缩放例6: 通用定向缩放n比例变换中的比例因子Sx,Sy只能在x轴方向或y轴方向起作用。实际图形变换中,不仅是在x,y方向变换,往往要求在任意方向进行比例变换。通过旋转变换和比例变换的组合,可以实现任意方向的比例变换。n解:定义比例因子S1和S2。n1. 使S1和S2旋转角后分别与x轴和y轴重合。n2. 进行比例变换。n3.使S1和S2旋转-角,返回原始位置。例6: 通用定向缩放n如:图(a)

温馨提示

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

评论

0/150

提交评论