Answers:
四元数优雅地解决了一些问题:
您可以使用其他表示法解决这些问题,但是四元数非常适合其算法的简单性和性能。
Interpolation works from any start to end angle without special casing
,实际上是一个特例,当它们不在超球面的同一个半球上时,这实际上是您必须考虑的特例,因为总是有2个方向插值到目标,并且您要选择正确的人
They never exhibit gimbal lock
不太正确。他们可以相乘q(Xaxis, 0) * q(YAxis, 90) * q(Zaxis, 20)
。的确,它们可以用来避免万向节锁定,但是矩阵,轴角和其他也可以。因此,这不是四元数的唯一属性。实际上,您可以使用大多数旋转表示来实现,但是使用欧拉角。唯一真实的信息可能是“欧拉(Euler)受到万向节锁定的困扰”,但是它可以被许多其他旋转表示形式所利用,而不仅仅是四元数。
您提到的SLERP用法是四元数的更一般属性的特定情况:您可以在不同的旋转值之间平滑地插值。
内插欧拉角的旋转值时,您会看到怪异的运动,并且从逻辑上讲,没有任何方法可以内插轴角旋转的值(除了围绕同一轴的两个不同角度之外)。