三维空间中物体两次旋转之间的连续旋转矩阵计算
问题:物体在三维空间中旋转两次(状态1,状态2),将这两次旋转平均分割成200份,使其自动的连续从状态1旋转到状态2,计算这个连续的旋转矩阵。
两种方法:
- 首先,据两次矩阵,可获得状态1到状态2的旋转矩阵A;
- 根据旋转矩阵A计算出欧拉角,alpha, beta, gamma(三个坐标轴);
- 将欧拉角平均200份,根据欧拉角算出连续旋转矩阵。
由于欧拉角本身有一些缺点,再加上欧拉角平分200后角度太小,做正弦、余弦变换后数值精度不够,从状态1连续旋转后一般达不到状态2。
第二种方法。根据旋转矩阵,计算旋转向量(Rotate Vector)
首先,据两次矩阵,可获得状态1到状态2的旋转矩阵A;
根据旋转矩阵A计算出旋转向量;
将旋转向量的旋转角平分200,计算获得连续旋转矩阵。
通过旋转向量获得的连续矩阵,使得物体从状态1可达到一个比较好的状态2(比较了一下变换后的矩阵,旋转矩阵还是有一些差距)。
参考:
刚体在三维空间的旋转(关于旋转矩阵、DCM、旋转向量、四元数、欧拉角)。
Rotation formalisms in three dimensions。