第5章 三维图形变换
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
平移变换
比例变换
5.2 图形的三维几何变换
三维图形变换可以在二维图形变换方法基础上增 加对z坐标的考虑而得到,其变换也为平移、缩放、 旋转、对称、错切等五种变换。在二维图形变换的讨 论中我们已经使用了齐次坐标表示法,其变换矩阵是 3×3阶矩阵。对于三维空间,则变换矩阵需要是4×4 阶矩阵。在三维图形变换的讨论中,仍采用假定坐标 系不动,图形变换的方式。并且假定变换是在右手坐 标系下进行。
5.2.5 错切变换 相对于三个坐标轴的错切变换矩阵表示为:
三维图形错切变换,一个坐标方向的变化受另外两个坐标 变化的影响。如果变换矩阵第一列中元素c和e不为0,产生 沿X轴方向的错切;第二列中元素d和g不为0,产生沿Y轴方 向的错切;第三列中元素f和h不为0,产生沿Z轴方向错切。 同二维图形变换的情况相同,上面讨论的五种变换也属于 仿射变换,具有保持直线、平面及平行关系的不变特性。
变换到投影面上,此点称为投影中心,相当于观察点,
也称为视点。投影线与投影面相交在投影面上形成的 图象即为三维图形的投影。
平行投影和透视投影区别在于透视投影的投影中心 到投影面之间的距离是有限的,而平行投影的投影中心 到投影面之间的距离是无限的。当投影中心在无限远时, 投影线互相平行,所以定义平行投影时,给出投影线的 方向就可以了,而定义透视投影时,需要指定投影中心 的具体位置。
主视图:
侧视图:
俯视图:
由于在三视图上保持了有关比例的不变性,可以精 确地测量长度和角度等量,因此常用于工程制图。下图 是一个三视图投影的例子。
(2)正轴测投影 正轴测投影是能够显示形体多个侧面的投影变
换,如果投影平面不与任一坐标轴垂直,就形成正 轴测投影。正轴测投影有正等测、正二测和正三测 三种。当投影面与三个坐标轴之间的夹角都相等时 为正等测;当投影面与两个坐标轴之间的夹角相等 时为正二测;当投影面与三个坐标轴之间的夹角都 不相等时为正三测。正等测投影中三个坐标分量保 持相同的变化比例;正二测投影中三个坐标分量中 的两个保持相同的变化比例;正三测投影中三个坐 标分量的变化比例各不相同。
其它两坐标不变,因此,其变换的矩阵表示为:
同样,相对于XZ平面的对称变换只需改变y坐标的正负号, 其变换的矩阵表示为:
相对于YZ平面的对称变换只需改变x坐标的正负号, 其 变换的矩阵表示为:
如果需要相对于任一平面作对称变换时,可以将此平面 转换成与某一坐标平面相重合,并运用上述简单的对称 变换,然后再将平面反变换回原来的位置即可。
当三维图形用透视变换投影到投影面上,图形中与投 影面平行的平行线投影后仍保持平行。不与投影面平行的 任一组平行线投影后收敛于一点,此点称为灭点。
平行于某一坐标轴方向的平行线在投影面上形成的灭点 又称作主灭点。因为有X、Y和Z三个坐标轴,所以主灭点最 多有三个。当某个坐标轴与投影面平行时,则该坐标轴方 向的平行线在投影面上的投影仍保持平行,不形成灭点。 投影中主灭点数目由与投影面相交的坐标轴数目来决定, 并据此将透视投影分类为一点、二点或三点透视。一点透 视有一个主灭点,即投影面与一个坐标轴正交,与另外两 个坐标轴平行;两点透视有两个主灭点,即投影面与两个 坐标轴相交,与另一个坐标轴平行;三点透视有三个主灭 点,即投影面与三个坐标轴都相交。
1.正平行投影 正平行投影根据投影面与坐标轴的夹角又可分成两 类:正投影(三视图)和正轴测投影。当投影面与某一坐 标轴垂直时,得到的投影为三视图,这时投影方向与 这个坐标轴的方向一致。否则,得到的投影为正轴测 投影,如图所示。
(1)正投影 正投影有主视图、侧视图和俯视图三种,投影面分别与 X轴、Y轴和Z轴垂直。三视图的投影变换矩阵分别为:
设空间一点P(x,y,z)投影到 投影面上的位置是 P(x′,y′,d),将P和P点分别 投Байду номын сангаас到XZ平面上和YZ平面 上如下图(b)(c)所示, 根据相似三角形对应边成比 例的关系,可得:
其中h=z/d。
利用三维齐次坐标的矩阵形式表示透视变换为:
称
为透视变换矩阵。
投影平面上的投影坐标计算为:
其中,原z坐标值在透视投影中保持不变,以便用于其它 同深度有关的处理。 由上式可以看出,距离z位于分母处,即物体透视投影 的大小与物体到投影中心的距离成反比,远处的物体比 近处的物体的投影要小。这种效应所产生的视觉效果十 分类似于照相系统和人的视觉系统。因此,透视投影能 够产生立体感。
即n1=sinθ x sinθ y,n2= cosθ x,n3= sinθ 虑到n12+n22+n32=1,可解得:
x
cosθ y。同时考
将矩阵相乘后并将中间变量替换掉可得复合变换矩阵, 展开成代数方程为:
x’﹦(x﹣xc)(n12﹢(1﹣n12)cosθ ﹢(y﹣yc)( n1n2(1﹣cosθ )﹢n3sinθ ) ﹢(z﹣zc)( n1n3(1﹣cosθ )﹣n2sinθ )﹢xc y’= (x﹣xc)( n1n2(1﹣cosθ )﹣n3sinθ ) ﹢(y﹣yc)( n22﹢(1﹣n22)cosθ ) ﹢(z﹣zc)( n2n3(1﹣cosθ )﹢n1sinθ )﹢yc z’= (x﹣xc)( n1n3(1﹣cosθ )﹢n2sinθ ) ﹢(y﹣yc)( n2n3(1﹣cosθ )﹣n1sinθ ) ﹢(z﹣zc)( n32﹢(1﹣n32)cosθ )﹢zc
课 题:三维几何变换、投影变换 目的要求:掌握平移、旋转、缩放、错切、反射等三 维坐标变换及其矩阵表示,掌握三维图形的投 影的概念、原理与方法 。 教学重点:三维坐标变换 教学难点:投影变换 教学课时:2课时 教学方法:讲授法、多媒体授课
5.1 三维图形齐次坐标变换矩阵
• 齐次变换矩阵提供一个三维空间中包括平移、旋转、透 视、投影、反射、错切和比例等变换在内的统一表达式, 使得物体的变换可在统一的矩阵形式下进行。 旋转、错切等 透视变换
1.绕坐标轴的旋转变换 (1) 绕Z轴旋转变换 绕Z轴旋转时,图形上各点z坐标不变,x、y坐标的变化 相当于在XY二维平面内绕原点旋转。旋转变换公式为:
矩阵表示为:
(2) 绕X轴旋转变换 绕X轴旋转时,图形上各点x坐标不变,y、z坐标的变化 相当于在YZ二维平面内绕原点旋转。旋转变换公式为:
矩阵表示为:
5.3 投影变换
• 什么是投影变换(投影变换的作用)
由于显示器和绘图机只能用二维空间表示图形,
这就需要我们把三维坐标表示的几何体变换成二维坐 标表示的图形,这就是图形的投影变换。 • 投影变换的要素 视点(投影中心),投影平面,投影线等
5.3.1 投影变换分类 在投影变换中,观察平面称为投影面。将三维图形 投影到投影面上,有两种基本的投影方式,即平行投 影和透视投影。在平行投影中,图形沿平行线变换到 投影面上;对透视投影,图形沿收敛于某一点的直线
相对于给定点Pc(xc,yc,zc)的比例变换的矩阵表示为:
5.2.3 旋转变换 三维图形作旋转变换时,需要指定一个旋转轴和旋 转角度。三维旋转变换可围绕空间任意直线轴进行。通 常规定图形绕某轴逆时针方向旋转时角度为正。 旋转变换前后三维图形的大小和形状不发生变化, 只是空间位置发生了变化。 绕坐标轴的旋转变换是最简单的旋转变换,当三 维图形绕某一坐标轴旋转时,图形上各点关于此轴的 坐标值不变,而在另两坐标轴所组成的坐标面上的坐 标值相当于一个二维的旋转变换。
(3) 将I轴绕X轴旋转x角,同Y轴重合,其变换矩阵为:
(4) 将P(x,y,z)点绕Y轴旋转θ角,其变换矩阵为:
(5)绕X轴旋转-x角,其变换矩阵为:
(6)绕Y轴旋转-y角,其变换矩阵为:
(7)将Pc(xc,yc,zc)平移回原位置,其变换矩阵为:
复合变换矩阵为:T﹦T1T2T3T4T5T6T7 变换过程式中,sinθ x 、sinθ y 、cosθ x 、cosθ y 为中间 变量,应使用已知量n1 、n2 、n3 表示出来。考虑I轴上的 单位向量n,它在三个坐标轴上的投影值即为n1 、n2 、n3 。 取Y轴上一单位向量将其绕X轴旋转-θ x角,再绕Y轴旋转θ y角,则此单位向量将同单位向量n重合,其变换过程为:
Q P R
从图中可以直接得出斜投影的坐标是:
常用的两种斜平行投影是斜等测和斜二测。当
ctgα=1,即投影方向与投影面成α=45°角时,得到 的是斜等测投影。这时,和投影面垂直的任何直线段, 其投影的长度不变。当ctgα=2(α≈63.4°)时,得 到的是斜二测投影,这时,和投影面垂直的任何直线, 其投影的长度为原来的一半。而角β通常选择为30° 或45°。
2.斜平行投影
斜平行投影与正平行投影的区别在于投影方向与
投影面不垂直。斜平行投影能够将正平行投影的可 测量性和正轴测投影的立体效果特性结合起来。比 如选择投影面垂直于某个坐标轴,这样,对平行于 投影面的物体表面其长度和角度投影后保持不变,
可进行测量。同时,它还可以显示一些其面。
斜平行投影的倾斜度可以 由两个角来描述,如图所示。 此图中投影面选择垂直于Z坐 标轴,且过原点。下面我们 推导斜平行投影的变换矩阵。 空间一点P(x,y,z)投影到投 影 面 上 的 位 置 是 Q(x′,y′,0 ) , 其 正 投 影 坐 标是R(x,y,0)。PQ与QR的夹 角α,QR与 投影面水平方向 构成夹角β。记QR长度为L, 则有:L=zctgα
5.2.1 平移变换 已知空间一点的坐标是P(x,y,z),沿X、Y及Z轴 方向分别平移tx 、ty、tz,后,得新坐标P(x′,y′,z′) 的表示式为:
矩阵形式为:
5.2.2 缩放变换 相对于原点的 缩放变换的表示式为:
矩阵表示是:
式中sx、sy和sz分别表示点P(x, y, z)沿X、Y及Z轴方 向相对坐标原点的比例变换系数。系数可赋予任何正数值, 当值小于1时缩小图形,值大于1则放大图形。当sx、sy和sz 被赋予相同值时,使图形产生三个坐标轴方向相对比例一 致的变换, sx、sy和sz值不等时则产生不一致的变换。
n1、n2、n3为I轴上的单位向量n在三个坐标轴上的投影值
5.2.4 对称变换 三维对称变换可以是关于给定对称轴的或者是关于给 定对称平面的变换。关于给定对称轴的对称变换等价于 绕此轴旋转180°,可以直接使用已讨论过的相对于轴线 的旋转变换公式。关于给定对称平面的对称变换其最简 单的是对称于坐标平面的变换。比如,空间一点P(x,y,z) 对XY坐标平面对称变换时,只需改变z坐标的正负号,
各次变换矩阵乘起来即形成复合变换。
已知空间一点的坐标是P(x,y,z),设给定的旋转轴为I, 它对三个坐标轴的方向余弦分别为:
Pc
如右图所示
旋转角为θ,轴上点 Pc(xc , yc , zc)为旋转的中心点。
复合变换的过程为: (1) 将Pc(xc,yc,zc)平移到坐标原点 变换矩阵为:
(2) 将I轴绕Y轴旋转y角,同YZ平面重合,其变换 矩阵为:
下图表示了立方体的斜投影的例子。从图中可以看 出,这种图形的真实感较强。(ctgα=2)
5.3.3 透视投影 透视投影不同于平行投影,它必须设定投影中心。投 影中心也称为视点,它相当于观察者的眼睛。投影面位 于投影中心与需要投影的三维图形之间,将三维图形上 各点与投影中心相连所得到的投影线与投影面相交,其 交点就是三维图形的透视投影。如下图所示,设投影中 心在坐标原点,投影面与Z轴垂直,在z=d的位置上。
透视投影
平行投影
平行投影保持物 体的有关比例不变, 物体的各个面的精确 视图可以由平行投影 得到。透视投影不保 持相关比例,但能够 生成真实感视图。对 同样大小的物体,离 投影面较远的物体比 离投影面较近物体的 投影图象要小,产生 近大远小的效果。
5.3.2 平行投影 平行投影可根据投影方向与投影面的夹角分成两类: 正投影和斜投影。当投影方向与投影面的夹角为90°时, 得到的投影为正平行投影,否则为斜平行投影, 如下图 所示。
(3) 绕Y轴旋转变换
绕Y轴旋转时,图形上各点y坐标不变,x、z坐标的变化 相当于在XZ二维平面内绕原点旋转。旋转变换公式为:
矩阵表示为:
2.一般三维旋转变换
更一般的旋转变换是绕空间任意轴作旋转变换。我
们可以用平移变换与绕坐标轴旋转变换的复合变换得到 其变换公式。如果给定旋转轴和旋转角,可以通过平移 及旋转给定轴使其与某一坐标轴重合,绕坐标轴完成指 定的旋转,然后再用逆变换使给定轴回到其原始位置。