齐次坐标

来源:互联网 发布:php分销数据库设计 编辑:程序博客网 时间:2024/04/28 15:57
一直对齐次坐标这个概念的理解不够彻底,只见大部分的书中说道“齐次坐标在仿射变换中非常的方便”,然后就没有了后文,今天在一个叫做“三百年 重生”的博客上看到一篇关于透视投影变换的探讨的文章,其中有对齐次坐标有非常精辟的说明,特别是针对这样一句话进行了有力的证明:“齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”—— F.S. Hill, JR。
     由于作者对齐次坐标真的解释的不错,我就原封不动的摘抄过来:
     对于一个向量v,使得v = v1 a + v2 b + v3 c          而对于一个),使得 p – o = p1 a + p2 b + p3 c            是坐标系下表达一个)(3是坐标基矩阵,右边的列向量分别是向量v这样,向量和点在同一个基下就有了不同的表达:3D个代数分量是0的第4个代数分量表示3D如果写成(1,4,7,0下面是如何在普通坐标(Ordinary Coordinate)(1)从普通坐标转换成齐次坐标时
是个点,则变为(x,y,z,1);
是个向量,则变为(x,y,z,0)
(2)   
,则知道它是个点,变成(x,y,z);
,则知道它是个向量,仍然变成(x,y,z)
 
、缩放S此外,对于一个普通坐标的,其中w的齐次坐)、(-0.1, -0.4, -0.7, -0.1因此,如果把一个点从普通坐标变成齐次坐标,给x,y,z个分量w前三个坐标同时除以第4由于齐次坐标使用了4所说,仿射(线性)变换的进行以上很好的阐释了齐次坐标的作用及运用齐次坐标的好处。其实在图形学的理论中,很多已经被封装的好的API也是很有研究<span times="" new="" roman';="" mso-hansi-font-family:="" 'times="" roman'"="" style="padding: 0px; margin: 0px; font-family: 宋体; font-size: 12pt; ">学习者,除了知其然必须还得知其所以然。<span times="" new="" roman';="" mso-hansi-font-family:="" 'times="" roman'"="" style="padding: 0px; margin: 0px; font-family: 宋体; font-size: 12pt; ">这样在遇到问题的时候才能迅速定位问题的根源,从而解决问题。
原创粉丝点击