平面上的旋转矩阵
欧拉角
Yaw Pitch Roll 分别是绕XYZ进行旋转
注意
绕固定坐标系旋转是右乘 / 向量变换,求向量、点的旋转结果是右乘
每次旋转都按自身坐标系 是左乘 / 坐标变换,求向量、点在先前坐标系下的坐标是左乘
如绕X轴旋转α,绕Y轴旋转β,绕Z轴旋转γ
则R = Rxα Ryβ Rzγ
如绕X轴旋转α,绕Y’旋转β,绕Z’‘旋转γ
则R = Rz’'γ Ry’β Rxα
欧拉角的旋转,依赖旋转轴的旋转顺序,称为顺规
绕固定轴的旋转矩阵,其中如图结果有错误
万向节
应用:相机云台、导弹导航
欧拉角的退化(万向节死锁
可以参考北极观察天空的例子。简单来说就是按照顺规中第二个轴旋转90度,则会导致旋转轴的缺失
使用欧拉角代表旋转的一些问题
1.万向节死锁
2.很难插值(不利于动画
3.很难做旋转的叠加(比如有两个旋转R1,R2,则总的旋转不能简单用R1+R2来表示
4.绕固定轴的旋转很难表示
四元数
用高阶复述表达三维空间的旋转,用群论来证明,只有在三维空间是work的,高维空间就不行了
注意 关于四元数的乘法计算,目前还存疑,究竟是四元数是有product、dot、cross三种乘法,还是四元数有product/cross、dot两种乘法呢?
目前看来,四元数应该是有Product/cross,dot两种乘法
product
四元数的product,可以表达成三种形式
- 复数式
其实就是简单的展开相乘,参照复数乘数表2. 矩阵式
从上面的四元数展开相乘可以很直观地过渡道到下面的表达方式
3.矢量式
欧拉角–>四元数
四元数表达旋转
单位四元数的共轭==四元数的逆
四元数–>旋转矩阵
四元数的常见运算
1.四元数的逆
2.四元数表示旋转的叠加
3.两个单位向量之间的旋转四元数求解