4元素矢量(3D数学)

时间:2010-10-02 22:21:46

标签: math opengl 3d vector directx

为什么在很多3D API的Vector类中都有一个W术语(即Vector4(x,y,z,w))?是否存在绝对需要W项的数学运算?

1 个答案:

答案 0 :(得分:19)

这是3D空间中一个点的特殊表示,称为齐次坐标

它们只是描述3D空间中一个点的另一种方式。它们在3D图形中被大量使用,因为它们具有一些优点:它们使一些公式更简单,并且它们允许您表示“无穷远处的点”(或“无穷远处的线”等取决于维度)。

参见例如这篇文章的解释是:

http://andrewharvey4.wordpress.com/2008/09/29/xyzw-in-opengldirect3d-homogeneous-coordinates/

维基百科也提供了一个很好的概述(警告,一些有趣但严肃的数学):

http://en.wikipedia.org/wiki/Homogeneous_coordinates

http://en.wikipedia.org/wiki/Projective_geometry

(射影几何是齐次坐标的基础理论)

奖金事实:

使用齐次坐标实际上更容易从我们熟悉的3D空间转换对象的原因是因为与直觉相反,投影几何避免了欧几里德几何中需要的一些特殊情况。有关详细信息,请参阅上面的文章,或关于投影几何的任何体面的数学书: - )。