
学习 OpenGL 过程中总是会遇到万向节死锁这个名词,这种名词一听就显得很高级,为了理解这高级的名词,特地查阅了一番资料,这里备忘一下。
欧拉角
万向节死锁是欧拉角在描述旋转过程存在的一个问题。首先看下欧拉角是如何定义的。欧拉角是描述刚体姿态的一种方式。可以解释为:将刚体绕某一轴的一次旋转,分解为依次分别绕 X、Y、Z 轴的三次旋转。这三个轴分别旋转的转动角度,就是一组欧拉角。如图所示:

这里有两组坐标系,定义为:
- xyz:世界坐标系。
- XYZ:刚体坐标系。
这里的旋转过程可以描述为:
- 绕世界坐标系 x 轴旋转 alpha 角。
- 绕刚体坐标系 X 轴旋转 beta 角。
- 绕刚体坐标系 Z 轴旋转 gamma 角。
连贯起来如下所示:

总结上面的过程,可以得到一个固定的旋转顺序,x->X->Z,加上对应的旋转角度可以描述一个旋转过程,这样的描述方式就是欧拉角。
( z , X , Z ) − ( α , β , γ ) \begin{align}(z,X,Z) - (\alpha,\beta,\gamma)\end{align}

最低0.47元/天 解锁文章
1709

被折叠的 条评论
为什么被折叠?



