计算机图形学-三维图形变换与投影

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

跨入计算机殿堂的入门篇计算机图形学施智平shizhiping@gmail.com第六章三维图形基本几何变换矩阵平行投影透视投影三维基本几何三维基本几何变换矩阵三维复合变换投影变换透视变换本章小结习题三维基本几何变换三维变换矩阵三维几何变换二维变换abcd对图形作缩放、旋转、对称、错切变换lm对图形作平移变换qp对图形作投影变换s对图形作整体变换acl对x’起作用,bdm对y’起作用,qps对整体起作用。smlpdcqbayxyx11''6三维齐次坐标三维坐标,右手坐标系旋转轴正的旋转方向xy-zyz-xzx-y三维齐次坐标(x,y,z)点对应的齐次坐标为标准齐次坐标(x,y,z,1)7),,,(hzyxhhh0,,,hhzzhyyhxxhhhxyz三维变换矩阵三维几何变换三维几何变换是二维几何变换的推广三维几何变换在齐次坐标空间中可以用4×4的变换矩阵表示变换矩阵:8snmlrjihqfedpcba三维基本几何变换三维基本几何变换都是相对于坐标原点和坐标轴进行的几何变换假设三维形体变换前一点为p(x,y,z),变换后为p'(x',y',z')。9snmlrjihqfedpcbazyxTpzyxpD11''''3其中对图形进行比例、旋转、反射和错切变换。对图形进行平移变换。对图形进行投影变换。对图形进行整体比例变换。三维几何变换对于线框模型的变换,通常是以点变换为基础三维几何变换的基本方法是把变换矩阵作为一个算子,作用到变换前的图形顶点集合的坐标矩阵上,得到变换后新的图形顶点集合的坐标矩阵连接变换后的新的图形顶点,可以绘制出变换后的三维图形。111222111nnnzyxzyxzyxP111''''2'2'2'1'1'1'nnnzyxzyxzyxP设图形变换前的顶点集合的规范化齐次坐标矩阵为:变换后的顶点集合的规范化齐次坐标矩阵为:snmlrihgqfedpcbaTTPP'snmlrihgqfedpcbazyxzyxzyxzyxzyxzyxnnnnnn111111222111''''2'2'2'1'1'1变换矩阵为:则三维图形基本几何变换有即:三维基本几何变换矩阵平移变换比例变换旋转变换反射变换错切变换平移变换zyxTzzTyyTxx'''1010000100001zyxTTTT平移变换的坐标表示为:因此,三维平移变换矩阵为:Tx,Ty,Tz是平移参数。zyxzSzySyxSx'''1000000000000zyxSSST比例变换的坐标表示为:因此,三维比例变换矩阵为:这里Sx,Sy,Sz是比例系数比例变换旋转变换三维旋转一般看作是二维旋转变换的组合可以分为:绕x轴的旋转,绕y轴的旋转,绕z轴的旋转。转角的正向满足右手定则:大拇指指向旋转轴,四指的转向为正向。''cossin'sincosxxyyzzyz10000cossin00sincos00001T绕x轴旋转变换的坐标表示为:1.绕x轴旋转zyxzyx绕x轴旋转'sincos''cossinxzxyyzzxcos0sin00100sin0cos00001T同理可得,绕y轴旋转变换:2.绕y轴旋转zyxzyx绕y轴旋转'cossin'sincos'xxyyxyzzcossin00sincos0000100001T绕z轴旋转变换表示为:3.绕z轴旋转zyxzyx绕z轴旋转zzyyxx'''1000010000100001T三维反射分为两类:关于坐标轴的反射关于坐标平面的反射反射变换变换矩阵为:1.关于x轴的反射坐标表示为:zzyyxx'''1000010000100001T变换的坐标表示为:变换矩阵为:2.关于y轴的反射zzyyxx'''1000010000100001T变换的坐标表示为:变换矩阵为:3.关于z轴的反射'''xxyyzz1000010000100001T变换的坐标表示为:变换矩阵为:4.关于xoy面的反射zzyyxx'''1000010000100001T坐标表示为:变换矩阵为:5.关于yoz面的反射zzyyxx'''1000010000100001T坐标表示为:变换矩阵为:6.关于zox面的反射fycxzzhzbxyygzdyxx'''1000010101hgfdcbT三维错切变换的坐标表示为:因此,三维错切变换矩阵为:错切变换三维错切变换中,一个坐标的变化受另外两个坐标变化的影响。如果变换矩阵第一列中元素d和g不为0,产生沿x轴方向的错切;第二列中元素b和h不为0,产生沿y轴方向的错切第三列中元素c和f不为0,产生沿z轴方向的错切错切变换1000010101hgfdcbTb=0,h=0,c=0,f=010000100010001gdTd=0时,错切平面离开z轴,沿x方向移动gz距离;g=0时,错切平面离开y轴,沿x方向移动dy距离。1.沿x方向错切zzyygzdyxx'''zyxzyxd=0,g=0,c=0,f=0。b=0时,错切平面离开z轴,沿y方向移动hz距离;h=0时,错切平面离开x轴,沿y方向移动bx距离。2.沿y方向错切zzhzbxyyxx'''zyxzyxd=0,g=0,b=0,h=010000100010001fcTc=0时,错切平面离开y轴,沿z方向移动fy距离;f=0时,错切平面离开x轴,沿z方向移动cx距离。3.沿z方向错切fycxzzyyxx'''zyxzyx三维复合变换32三维复合变换基本几何变换是相对于坐标原点和坐标轴进行的几何变换相对于任意点和任意方向的几何变换通过三维复合变换来实现对三维图形按顺序进行多个基本变换,即可完成三维复合变换,复合变换矩阵是每一步变换矩阵相乘的结果33三维复合变换例子:使三维图形绕J轴旋转θ角思路:将J轴重合Z轴之后,使立体旋转θ角,然后返回34xzyJ步骤:1。J轴绕Z轴转φ角至yoz平面,成为J1。2。J1轴绕X轴转γ角后与z轴平行,成为J2。3。立体绕J2轴转θ角4。从J2返回J1。5。从J1返回J。35zyxJ1J2zyxJ1J2zyxJ1J三维复合变换投影变换36投影变换显示器只能用二维图形表示三维物体,因此三维物体就要靠投影来降低维数得到二维平面图形把三维物体转变为二维图形的过程称为投影变换SSS(a)透视投影(b)正投影(c)斜投影38投影变换可分为两大类:透视投影的投影中心到投影面之间的距离是有限的;平行投影的投影中心到投影面之间的距离是无限的;平行投影的最大特点是无论物体距离视点多远,投影后的物体尺寸保持不变。平行投影可分成两类:正投影和斜投影。投影变换三视图三视图三视图是正投影视图包括主视图、俯视图和侧视图投影面分别与y轴、z轴和x轴垂直将三维物体分别对正面、水平面和侧平面做正投影得到三个基本视图yzx0yzy0x主视图俯视图侧视图正三棱柱的立体图正三棱柱的三视图三视图主视图的形成:直接向V面(XOZ坐标面)投影;俯视图的形成:绕X轴向下旋转90度,平移N距离;左视图的形成:绕Z轴向后旋转90度,平移L距离。xZYx轴Z轴Y10000100000000011101'''zyxzxzyx1000010000000001xozVTT将三棱柱向xoz面作平行投影,得到主视图。设三棱柱上任一点坐标用P(x,y,z)表示它在xoz面上投影后坐标为P’(x’,y’,z’)坐标关系x’=x,y’=0,z’=z主视图投影变换矩阵为:(1)主视图10000000001000011101'''zyxyxzyx1000000000100001xoyT将三棱柱向xoy面作平行投影得到俯视图。设三维物体上任一点坐标用P(x,y,z)表示它在xoy面上投影后坐标为P’(x’,y’,z’)其中x’=x,y’=y,z’=0。xoy面投影变换矩阵为:⑵俯视图为了使俯视图和主视图在一个平面内,使xoy面绕x轴顺时针旋转90°,旋转变换矩阵为:100000100100000110000)2cos()2sin(00)2sin()2cos(00001RxT为了使俯视图和主视图有一定的间距,还要使xoy面沿z负方向平移一段距离z01000100001000010zTTz⑵俯视图100010000100001100000100100000110000000001000010zTTTTTzRxxoyH100000001000001T0Hz俯视图的投影变换矩阵为上述三个变换矩阵的乘积:俯视图总投影变换矩阵为:⑵俯视图10000100001000001101'''zyxzyzyx1000010000100000yozT将三维形体向yoz面作垂直投影得到侧视图。设三维物体上任一点坐标用P(x,y,z)表示,它在yoz面上投影后坐标为P’(x’,y’,z’)。其中x’=0,y’=y,z’=z。yoz面投影变换矩阵为:⑶侧视图为了在xoz平面内表示侧视图,需要将yoz面绕z轴逆时针旋转90°,旋转变换矩阵为:100001000001001010000100002cos2sin002sin2cosRzT为了使侧视图和主视图之间有一定的间距,还要将yoz面沿x轴负向平移一段距离x01000100001000010xTTx⑶侧视图100010000100001100001000001001010000100001000000xTTTTTxRzyozW100010000010000T0wx侧视图的投影变换矩阵为上面三个变换矩阵的乘积:侧视图总投影变换矩阵为:⑶侧视图从三视图的变换矩阵可以看出,三个视图中的y坐标始终为0,表明三个视图均落在xoz平面上,即三维物体用二维视图来表示。三视图是工程上常用的图样,由于三视图中物体的投影面平行于坐标平面,其投影能真实地反映物体的实际尺寸,三个视图具有长对正、高平齐、宽相等的特点,因此,机械工程中常用三视图来测量形体间的

1 / 94
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功