- 1、本文档共48页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11讲(第4章图形变换透视投影)
计算机图形学 透视图 透视图 透视图 三、透视投影变换--透视的基本知识 透视投影是一种中心投影法,在日常生活中,我们观察外界的景物时,常会看到一些明显的透视现象。 如:我们站在笔直的大街上,向远处看去,会感到街上具有相同高度的路灯柱子,显得近处的高,远处的矮,越远越矮。这些路灯柱子,即使它们之间的距离相等,但是视觉产生的效果则是近处的间隔显得大,远处的间隔显得小,越远越密。观察道路的宽度,也会感到越远越窄,最后汇聚于一点。这些现象,称之为透视现象。 三、透视投影变换 三、透视投影变换 在介绍三维变换矩阵 时,说到矩阵中的元素(p , q , r)取非全0时,能产生透视效果。 透视投影投影方程 1.透视变换矩阵 (1) 一点透视(平行透视) 先设q?0,p=r=0,对点[ x y z ]进行变换: 1 0 0 0 [x y z 1] 0 1 0 q =[x y z qy+1 ] 0 0 1 0 0 0 0 1 = [ x/(qy+1) y/(qy+1) z/(qy+1) 1] (齐次化) 1.透视变换矩阵 现在来对Y的取值情况进行讨论: ? 当 y = 0 (在XOZ坐标平面内) [x’ y’ z’ 1] = [x 0 z 1] ? 当 y?∞ [x’ y’ z’ 1] = [0 1/q 0 1] * [ x/(qy+1) y/(qy+1) z/(qy+1) 1] *a 1.透视变换矩阵 从以上结果可以看到:当Y值无限变大时,所有点经过变换后均集中于Y轴上的 1/q 处,于是所有平行于Y轴的直线将延伸相交于此点。 该点( 0,1/q ,0)称为灭点。形成一个灭点的透视称为一点透视,亦称平行透视。为了取得较好的效果,取 q?0 。(让灭点位于Y轴的负半轴上) 1.透视变换矩阵 同样道理,当 p ?0,q=r=0时,则产生 的一个灭点在X轴上(1/p,0,0)处。在 这种情况下,所有平行于X轴的直线 将延伸交于该点。 当 r ?0,p=q=0时,则产生的一 个灭点在Z轴上(0,0,1/r)处。在这 种情况下,所有平行于Z轴的直线将 延伸交于该点。 (2) 两点透视(成角透视) 如果在 p , q , r 中有两个非0元素,这时将会产生两个灭点,得到的透视图称为两点透视,或称成角透视。 例如:设p ?0, r ?0, q= 0, 看透视变换的效果。 (2) 两点透视(成角透视) 1 0 0 P [ x y z 1 ] 0 1 0 0 0 0 1 r 0 0 0 1 =[x y z px+rz+1 ] =[x/(px+rz+1) y/(px+rz+1) z/(px+rz+1) 1] =[x’ y’ z’ 1] 一个灭点在X轴上的 1/p 处; 另一个灭点在Z轴上的 1/r 处。 (3)三点透视(斜透视) 以此类推,当 p、q、r三个元素全为 非 0 时,变换的结果将形成三点透 视。产生的三个灭点将分别位于X轴 上的 1/p 处、Y轴上的 1/q 处和Z 轴上的 1/r 处。 透视投影 透视投影 可以简单的推断: 1、与一个坐标轴垂直的平面作为投影平面的话,该平面上的投影一定是一点投影。 2、与两个坐标轴相交且与第三个坐标轴不相交的平面作为投影平面的话,该平面上的投影一定是两点投影。 3、与三个坐标轴都相交且不含有任何坐标轴的平面作为投影平面的话,该平面上的投影一定是三点投影。 透视投影 灭点:不平行于投影平面的平行线,经过透视投影之后收敛于一点,称为灭点. 主灭点:平行于坐标轴的平行线的灭点。 一点透视 两点透视 三点透视 特点:产生近大远小的视觉效果,由它产生的图形深度感强,看起来更加真实。 2.生成透视投影图的方法 生成透视图分两步进行: ? 对立体进行透视变换; ? 然后向XOZ坐标平面作正投影。 1 0 0 0 1 0 0 0 1 0 0 0 T= 0 1 0 q 0 0 0 0 = 0 0 0 q 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 2.生成透视投影图的方法 所以其变换过程用矩阵表示为: (1)
文档评论(0)