给定一个四元数q和三个3D向量(vx, vy, vz),它们形成坐标轴,可以朝任意方向定位,但都相互垂直,因此形成一个3D空间。 如何检查四元数q是否旋转到与某些3D向量(vx, vy, vz)相同的方向(或相反方向)?
如果q=(w,x,y,z),其中w是“标量部分”,而qv=(x,y,z)是“向量部分”,则可以使用点积计算qv与每个基向量vx、vy、vz之间的夹角。cos(theta)=(qv·vx)/(|qv|*|vx|)如果cos(theta)为+1,则q的旋转轴与该基向量平行。cos(theta)=-1意味着它们是反平行的。