资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,计算机图形学基础,Computer Graphics,赵东保,华北水利水电学院,2011.9,第三章 图形变换(一),图形变换是指将一个几何图形按照某种准则变换成另一个几何图形,例如,将图形进行缩放、旋转、平移等;将三维图形投影变换到二维平面上,将静态图形变换为动态图形,实现动画效果等等,这些过程都称之为图形变换。,1 概述,二维图形几何变换的原理,二维图形由点或直线段组成,直线段可由其端点坐标定义,二维图形的几何变换:对点或对直线段端点的变换,2 基本二维图形几何变换,1.平移变换(translation),平行于x轴的方向上的移动量,平行于y轴的方向上的移动量,x,y,平移变换,(5-7),(5-8),2 基本二维图形几何变换,平行于x轴的方向上的缩放量,平行于y轴的方向上的缩放量,2.比例变换(scale),指相对于原点的比例变换,y,x,相对于,原点,的比例变换,相对于,重心,的比例变换,y,x,重心,(5-10),(5-9),比例变换的性质,当 时,变换前的图形与变换后的图形相似,当 时,图形将放大,并远离坐标原点,当 时,图形将缩小,并靠近坐标原点,当 时,图形将发生畸变,4)齐次坐标表示,齐次坐标表示不是唯一的,有n个分量的向量,有n+1个分量的向量,哑元,或,标量因子,规格化的齐次坐标,3 齐次坐标,5)基本几何变换的齐次坐标表示,平移变换,比例变换,旋转变换:,6.无穷远点或无穷远区域的齐次坐标表示,时,齐次坐标 表示一个n维的无穷远点,逆时针为正,1.对称变换,(symmetry)(反射变换或镜像变换),(1)相对于y轴对称,(2)相对于x轴对称,o,y,x,对称变换(1),y,x,o,对称变换(2),4 常用二维图形几何变换,(3)相对于原点对称(即中心对称),(4)相对于直线y=x对称,o,x,y,对称变换(3),x,y,o,y=x,对称变换(4),(5)相对于直线y=-x对称,x,y,o,y=-x,对称变换(5),2.错切变换(shear),(1)沿 x 轴方向关于 y 轴错切,将图形上关于y轴的平行线沿x方向推成,角的,倾斜线,而保持y坐标不变。,x,错切变换(1),y,x,(2)沿 y 轴方向关于 x 轴错切,将图形上关于x轴的平行线沿y方向推成,角的,倾斜线,而保持x坐标不变。,错切变换(2),y,x,y,1)相对于任意点(x0,y0)的比例变换,对任意点比例变换的步骤:,(1)平移变换,(2)相对于原点的比例变换,(3)平移变换,当(x0,y0)为图形重心的坐标时,这种变换实现的是相对于重心的比例变换。,5 二维组合变换,令,任意点比例变换示意图,平移,平移,比例,则有,2)绕任意点(x0,y0)的旋转变换,绕任意点旋转变换的步骤:,(1)平移变换,(2)对图形绕原点进行旋转变换,(3)平移变换,(x,2,y,2,),(x,3,y,3,),(x,0,y,0,),O,x,y,(x,1,y,1,),(x,4,y,4,),相对于任意点(x,0,y,0,)的旋转变换,任意点旋转变换示意图,平移,平移,旋转,令,则有,3)对称平行于X轴的任意直线,当对称轴是平行于X轴的直线yy,c,时,变换前后点的坐标之间的关系为:,变换方程写成齐次坐标矩阵形式为:,其中变换矩阵:,4)对称平行于Y轴的直线,当对称轴是平行于Y轴的直线xx,c,时,变换前后点的坐标之间的关系为:,变换方程写成齐次坐标矩阵形式为:,其中变换矩阵:,5)对称于任一点(x,c,y,c,)的变换,变换方程写成齐次坐标矩阵形式为:,其中变换矩阵:,对称于任一点(x,c,y,c,)的变换,可以看做分别相对于直线轴xx,c,和直线轴 yy,c,的两次对称变换,是两者的综合:,6)对称于任一轴的变换,首先平移直线经过坐标原点,而后将直线绕坐标原点旋转至同某一坐标轴重合,做对称于坐标轴的变换,最后反向旋转和反向平移将直线置回原处。,做对称于Y轴的对称变换,其变换矩阵为:,最后反向旋转和反向平移将直线置回原处,其变换矩阵分别为:,所以,,对称于任一轴ymxb的变换矩阵为:,当m为直线斜率,b为截距时有:,所以,替换变换矩阵中的和得:,上述变换用代数方程表示为:,6 二维图形几何变换总结,旋转、比例,错切、对称,透视,投影,总体,比例,平移,6 二维图形几何变换总结,仿射变换具有平行线不变性和有限点数目的不变性,平移、比例、旋转、错切和反射等变换均是二维仿射变换的特例,反过来,任何常用的二维仿射变换总可以表示为这五种变换的复合。,二维仿射变换,是具有如下形式的二维坐标变换:,6 二维图形几何变换总结,二维几何变换具有如下不变性:,直线的中点不变性;,平行直线不变性;,相交不变性;,仅包含旋转、平移和反射的仿射变换维持角度和长度的不变性;,错切变化引起图形角度关系的改变,甚至导致图形发生畸变。,仿射变换的封闭图形面积之比不变,窗口视图变换,1.窗口和视图区,用户坐标系,(world coordinate system,简称WC),设备坐标系,(device coordinate system,简称DC),窗口区,(window),视图区,(viewport),用户坐标系与设备坐标系的变换关系可以二维仿射变换模型予以描述,如何推导?,三维图形变换可以在二维图形变换方法基础上增加对z坐标的考虑而得到,其基本变换也为平移、比例、旋转、对称、错切等五种变换。在二维图形变换的讨论中我们已经使用了齐次坐标表示法,其变换矩阵是33阶矩阵。对于三维空间,则变换矩阵需要是44阶矩阵。,1 三维图形几何变换,平移,变换,已知空间一点的坐标是P(x,y,z),沿X、Y及Z轴方向分别平移t,x,、t,y,、t,z,,后,得新坐标P(x,y,z,)的表示式为:,矩阵形式为:,比例,变换,相对于原点的比例变换的表示式为:,矩阵表示是:,矩阵表示为:,(1)绕Z轴旋转变换,三维图形绕Z轴旋转时,图形上各顶点z坐标不变,x、y坐标的变化相当于在XY二维平面内绕原点旋转。所以绕Z轴旋转变换的表达式为:,旋转变换,(2)绕X轴旋转变换,三维图形绕X轴旋转时,图形上各顶点x坐标不变,y、z坐标的变化相当于在YZ二维平面内绕原点旋转。所以绕X轴旋转变换的表达式为:,矩阵表示为:,(3)绕Y轴旋转变换,三维图形绕Y轴旋转时,图形上各顶点y坐标不变,x、z坐标的变化相当于在XZ二维平面内绕原点旋转。所以绕Y轴旋转变换的表达式为:,矩阵表示为:,绕任意轴旋转变换,已知空间一点的坐标是P(x,y,z),设给定的旋转轴为I,它对三个坐标轴的方向余弦分别为:,绕该轴进行旋转变换其旋转矩阵的获取方法为:通过平移及旋转给定轴使其与某一坐标轴重合,绕坐标轴完成指定的旋转,然后再用逆变换使给定轴回到其原始位置。各次变换矩阵乘起来即形成复合变换。,设旋转角为,,,轴上任一点P(x,c,y,c,z,c,)为旋转的中心点。则,复合变换的过程为:,(1)将P(x,c,y,c,z,c,)平移到坐标原点;变换矩阵为:,(2)将I轴绕Y轴旋转,y,角,,同YZ平面重合,其变换矩阵为:,(3)将I轴绕X轴旋转,x,角,,同Y轴重合,其变换矩阵为:,(4)将P(x,y,z)点绕Y轴旋转,角,,其变换矩阵为:,(5)绕X轴旋转-,x,角,,其变换矩阵为:,(6)绕Y轴旋转-,y,角,,其变换矩阵为:,(7)将P(x,c,y,c,z,c,)平移回原位置,,其变换矩阵为:,复合变换矩阵为:TT,1,T,2,T,3,T,4,T,5,T,6,T,7,(8)中间变量的计算方法,变换过程式中,sin,x,、sin,y,、cos,x,、cos,y,为中间变量,应使用已知量n,1,、n,2,、n,3,表示出来。考虑I轴上的单位向量,n,,它在三个坐标轴上的投影值即为n,1,、n,2,、n,3,。取Y轴上一单位向量将其绕X轴旋转-,x,角,再绕Y轴旋转-,y,角,则此单位向量将同单位向量,n,重合,其变换过程为:,即n,1,=sin,x,sin,y,,n,2,=cos,x,,n,3,=sin,x,cos,y,。同时考虑到n,1,2,+n,2,2,+n,3,2,=1,可解得:,将,矩阵相乘后并将中间变量替换掉可得复合变换矩阵,展开成代数方程为:,x,(xx,c,)(n,1,2,(1n,1,2,)cos,(yy,c,)(,n,1,n,2,(1cos),n,3,sin),(zz,c,)(,n,1,n,3,(1cos),n,2,sin)x,c,y,=(xx,c,)(,n,1,n,2,(1cos),n,3,sin),(yy,c,)(,n,2,2,(1,n,2,2,)cos),(zz,c,)(,n,2,n,3,(1cos),n,1,sin)y,c,z,=(xx,c,)(,n,1,n,3,(1cos),n,2,sin),(yy,c,)(,n,2,n,3,(1cos),n,1,sin),(zz,c,)(,n,3,2,(1,n,3,2,),cos)z,c,对称变换,三维对称变换可以是关于给定对称轴的或者是关于给定对称平面的变换。关于给定对称轴的对称变换等价于绕此轴旋转180,可以直接使用已讨论过的相对于轴线的旋转变换公式。关于给定对称平面的对称变换其最简单的是对称于坐标平面的变换。,相对于XZ平面的对称变换只需改变y坐标的正负号,其变换的矩阵表示为:,空间一点P(x,y,z)对XY坐标平面对称变换时,只需改变z坐标的正负号,其它两坐标不变,其变换的矩阵表示为:,相对于YZ平面的对称变换只需改变x坐标的正负号,其变换的矩阵表示为:,如果需要相对于任一平面作对称变换时,可以将此平面转换成与某一坐标平面相重合,并运用上述简单的对称变换,然后再将平面反变换回原来的位置即可。,错切,变换,第一列中元素,c,和,e,不为,0,,产生沿,X,轴方向的错切;,第二列中元素,d,和,g,不为,0,,产生沿,Y,轴方向的错切;,第三列中元素,f,和,h,不为,0,,产生沿,Z,轴方向错切。,三维图形错切变换的变换矩阵为:,z,y,x,z,y,x,z,y,x,z,y,x,z,y,x,z,y,x,三维错切变换,沿z含x错切,沿z含y错切,沿y含x错切,沿y含z错切,沿x含y错切,沿x含z错切,三维变换的一般形式,旋转、比例、错切、对称,平移,透视投影,总体比例,
展开阅读全文