为什么四元数由[vector,w]定义为什么不由[point,w]定义?

时间:2014-01-04 01:59:16

标签: graphics vector rotational-matrices quaternions

四元数旋转定义3d空间中的点并围绕该点的轴旋转。 我试图理解为什么四元数旋转需要矢量和旋转,为什么不仅仅是空间和旋转中的3d点?

例如:在下图中,手指向3d空间中可绕其轴旋转的点。 http://s29.postimg.org/ih79tirnr/quarternion.jpg

由于

1 个答案:

答案 0 :(得分:1)

实际上,四元数的x,y和z分量定义了一个指向旋转轴方向的矢量。 w分量定义沿该轴的旋转量。因此,x,y和z实际上并不表示一个点。随着旋转量的改变,x,y,z向量的长度将改变,但向量总是指向相同的方向。因此,将此视为空间中的一点是没有意义的。它只是一个方向和围绕该轴的旋转。

我曾经定义过一个新类,它包含一个四元数来定义一个对象的变换以及一个描述对象平移的向量。然后,该对象可以表示3D空间中的完全变换,类似于3x4变换矩阵。