《第六章图形变换精选文档.ppt》由会员分享,可在线阅读,更多相关《第六章图形变换精选文档.ppt(61页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第六章图形变换本讲稿第一页,共六十一页变换的数学基础 矢量矢量和 本讲稿第二页,共六十一页矢量的数乘 矢量的点积性质变换的数学基础本讲稿第三页,共六十一页变换的数学基础矢量的长度 单位矢量 矢量的夹角矢量的叉积 本讲稿第四页,共六十一页矩阵 阶矩阵n阶方阵零矩阵行向量与列向量单位矩阵矩阵的加法 矩阵的数乘 矩阵的乘法 矩阵的转置 矩阵的逆 变换的数学基础本讲稿第五页,共六十一页矩阵的含义矩阵:由mn个数按一定位置排列的一个 整体,简称mn矩阵。A=其中,aij称为矩阵A的第i行第j列元素变换的数学基础本讲稿第六页,共六十一页矩阵运算n加法设A,B为两个具有相同行和列元素的矩阵A+B=n数乘kA
2、=k*aij|i=1.m,j=1,.n变换的数学基础本讲稿第七页,共六十一页n乘法设A为23矩阵,B为32矩阵 C=A B=C=Cmp=Amn Bnp cij=aikbkjn单位矩阵 在一矩阵中,其主对角线各元素aii=1,其余皆为0的矩阵称为单位矩阵。n阶单位矩阵通常记作In。Amn=Amn In k=1,n变换的数学基础本讲稿第八页,共六十一页n逆矩阵若矩阵A存在AA-1=A-1A=I,则称A-1为A的逆矩阵n矩阵的转置 把矩阵A=(aij)mn的行和列互换而得到的nm矩阵称为A的转置矩阵,记作AT。(AT)T=A (A+B)T=AT+BT (aA)T =aAT (AB)T=BT AT 当
3、A为n阶矩阵,且A=AT,则A是对称矩阵。变换的数学基础本讲稿第九页,共六十一页矩阵运算的基本性质n交换律与结合律 A+B=B+A;A+(B+C)=(A+B)+Cn数乘的分配律及结合律 a(A+B)=aA+aB;a(AB)=(aA)B=A(aB)(a+b)A=aA+bA a(bA)=(ab)A变换的数学基础本讲稿第十页,共六十一页矩阵乘法的结合律及分配律 A(BC)=(AB)C (A+B)C=AC+BC C(A+B)=CA+CB矩阵的乘法不适合交换律变换的数学基础本讲稿第十一页,共六十一页所谓齐次坐标表示法就是由n+1维向量表示一个n维向量。如n维向量(P1,P2,Pn)表示为(hP1,hP2
4、,hPn,h),其中h称为哑坐标。h可以取不同的值,所以同一点的齐次坐标不是唯一的。如普通坐标系下的点(2,3)变换为齐次坐标可以是(1,1.5,0.5)(4,6,2)(6,9,3)等等。普通坐标与齐次坐标的关系为“一对多”由普通坐标h齐次坐标由齐次坐标h普通坐标 当h=1时产生的齐次坐标称为“规格化坐标”,因为前n个坐标就是普通坐标系下的n维坐标。齐次坐标本讲稿第十二页,共六十一页(x,y)点对应的齐次坐标为 (x,y)点对应的齐次坐标为三维空间的一条直线 齐次坐标本讲稿第十三页,共六十一页1.将各种变换用阶数统一的矩阵来表示。提供了用矩阵运算把二维、三维甚至高维空间上的一个点从一个坐标系变
5、换到另一坐标系的有效方法。2.便于表示无穷远点。例如:(x h,y h,h),令h等于03.齐次坐标变换矩阵形式把直线变换成直线段,平面变换成平面,多边形变换成多边形,多面体变换成多面体。4.变换具有统一表示形式的优点便于变换合成便于硬件实现齐次坐标的作用本讲稿第十四页,共六十一页窗口视图变换用户域和窗口区1用户域:程序员用来定义草图的整个自然空间(WD)人们所要描述的图形均在用户域中定义。用户域是一个实数域,理论上是连续无限的。2窗口区:用户指定的任一区域(W)窗口区W小于或等于用户域WD小于用户域的窗口区W叫做用户域的子域窗口可以有多种类型,矩形窗口、圆形窗口、多边形窗口等等 窗口可以嵌套
6、,即在第一层窗口中可再定义第二层窗口,在第I层窗口中可再定义第I+1层窗口等等 本讲稿第十五页,共六十一页1屏幕域(DC):设备输出图形的最大区域,是有限的整数域。如图形显示器分辨率为1024768DC0.10230.7672视图区:任何小于或等于屏幕域的区域视图区用设备坐标定义在屏幕域中窗口区显示在视图区,需做窗口区到视图区的坐标转换。视图区可以有多种类型:圆形、矩形、多边形等。视图区也可以嵌套。窗口视图变换本讲稿第十六页,共六十一页窗口区和视图区的坐标变换 设窗口的四条边界WXL,WXR,WYB,WYT视图的四条边界VXL,VXR,VYB,VYT则用户坐标系下的点(即窗口内的一点)(Xw,
7、Yw)对 应 屏 幕 视 图 区 中 的 点(Xs,Ys),其变换公式为本讲稿第十七页,共六十一页窗口区和视图区的坐标变换简化为:1)当ac时,即x 方向的变化与y方向的变化不同时,视图中的图形会有伸缩变化,图形变形。2)当a=c=1,b=d=0则Xs=Xw,Ys=Yw,图形完全相同。思考:前面讲的窗口视图变换时,假设窗口的边和坐标轴平行,如果窗口的边不和坐标轴平行呢?本讲稿第十八页,共六十一页窗口区和视图区的坐标变换A.先让窗口FGHI转-角,使它和FGHI重合。B.用(1)式进行计算。本讲稿第十九页,共六十一页图形变换是计算机图形学基础内容之一。几何变换,投影变换,视窗变换线性变换,属性不
8、变,拓扑关系不变。作用:n把用户坐标系与设备坐标系联系起来;n可由简单图形生成复杂图形;n可用二维图形表示三维形体;n动态显示。图形变换本讲稿第二十页,共六十一页二维图形的显示流程图本讲稿第二十一页,共六十一页图形的几何变换图形变换:对图形的几何信息经过几何变换后产生新的图形。图形变换的两种形式:1.图形不变,坐标系改变;2.图形改变,坐标系不变。我们所讨论的是针对坐标系的改变而讲的。本讲稿第二十二页,共六十一页二维图形的几何变换 设二维图形变换前坐标为(x,y,1),变换后为(x*,y*,1)1二维变换矩阵注意:T2D可看作三个行向量,其中100:表示x轴上的无穷远点010:表示y轴上的无穷
9、远点001:表示原点本讲稿第二十三页,共六十一页二维图形的几何变换从变换功能上可把T2D分为四个子矩阵本讲稿第二十四页,共六十一页二维基本变换-平移变换 平移变换 平移变换只改变图形的位置,不改变图形的大小和形状 本讲稿第二十五页,共六十一页二维基本变换-比例变换以坐标原点为放缩参照点当Sx=Sy=1时:恒等比例变换当Sx=Sy1时:沿x,y方向等比例放大。当Sx=Sy0:图形沿+x方向作错切位移。ABCDA1B1C1D1n当b0:图形沿+y方向作错切位移。ABCDA1B1C1D1n当d0,大拇指指向轴的方向,其它手指指的方向为旋转方向。本讲稿第四十七页,共六十一页三维变换矩阵-旋转变换绕Y轴
10、旋转 此时,Y坐标不变,X,Z坐标相应变化。x=sin(+)=x*cos+z*sin y=y z=cos(+)=z*cos-x*sinXYZ(x,z)(x z)XZOOZ本讲稿第四十八页,共六十一页三维变换矩阵-旋转变换n矩阵表示为本讲稿第四十九页,共六十一页三维变换矩阵-旋转变换绕Z轴旋转 此时,Z坐标不变,X,Y坐标相应变化。x=cos(+)=x*cos-y*sin y=sin(+)=x*sin+y*cos z=zXYZ(x,y)(x y)XYOO本讲稿第五十页,共六十一页三维变换矩阵-旋转变换矩阵表示为:本讲稿第五十一页,共六十一页绕任意轴的旋转变换-方法1a)绕过原点的任意轴的旋转变换
11、空间点P(x,y,z)绕过原点的任意轴ON逆时针旋转角的旋转变换。基基本本思思想想:因ON轴不是坐标轴,应设法旋转该轴,使之与某一坐标轴重合,然后进行旋转角的变换,最后按逆过程,恢复该轴的原始位置。本讲稿第五十二页,共六十一页绕任意轴的旋转变换-方法1解:令ON为单位长度,其方向余弦为:、为ON轴与各坐标轴的夹角。变换过程如下:1)让ON轴绕z轴旋转-,使之在XOZ平面上。其中本讲稿第五十三页,共六十一页绕任意轴的旋转变换-方法1因此2)让在XOZ平面上的ON绕y轴旋转-,使之与z轴重合。其中因此本讲稿第五十四页,共六十一页绕任意轴的旋转变换-方法13)P点绕ON轴(即z轴)逆时针旋转角4 4
12、)ON轴绕y轴旋转 5)ON轴绕z轴旋转 因此nb)绕任意轴的旋转变换本讲稿第五十五页,共六十一页绕任意轴的旋转变换-方法2组合变换:空间一点绕空间任一轴线的旋转变换。要通过将几个基本的变换组合在一起,得到该组合变换。假定空间任一直线的方向矢量分别为:(l,m,n)并经过原点(l,m,n)(x,y,z)(x,y,z)XYZON本讲稿第五十六页,共六十一页绕任意轴的旋转变换-方法2能否转换成绕X、Y或Z轴旋转的变换?ON绕Z轴旋转2 到XOZ平面上,然后再绕Y轴旋转1,即可与Z轴重合。ON21YZX本讲稿第五十七页,共六十一页绕任意轴的旋转变换-方法2这样,可得空间上任一点绕ON轴旋转的变换过程
13、如下:1)首先通过两次旋转,使ON轴与Z轴重合;2)然后使点绕Z轴旋转角;3)最后通过与1)相反的旋转,使ON轴回 到原来的位置。假设,绕Z轴的旋转-2矩阵为T1 绕Y轴的旋转-1矩阵为T2 绕Z轴的旋转矩阵为T3 绕Y轴的旋转1矩阵为T4 绕Z轴的旋转2矩阵为T5本讲稿第五十八页,共六十一页绕任意轴的旋转变换-方法2则总体变换矩阵为:T=T1 T2 T3 T4 T5 由上推导可看出,只要能求出1、2的值,即可通过上式获得绕ON轴的变换矩阵。由于矢量(0 0 1)绕Y轴旋转1,再绕Z轴旋转2 即可与ON轴重合。即:本讲稿第五十九页,共六十一页 l m n 1=sin1cos2,sin1sin2,cos1,1l=sin1cos2 M=sin1sin2 n=cos1从而通过上式即可得到1、2 的值。问题:当任一轴线的端点不在原点时,此时应如何计算变换矩阵?绕任意轴的旋转变换-方法2本讲稿第六十页,共六十一页作业nP147-3本讲稿第六十一页,共六十一页
限制150内