矩阵旋转到另一个矩阵

时间:2018-04-19 11:54:23

标签: android matrix opengl-es transformation

我有两个4x4旋转矩阵M和N.M描述了我目前在太空中的物体姿态,N是一个理想的物体姿态。现在我想将M矩阵向N方向旋转,因此对象将在后续迭代中慢慢朝向所需位置旋转。知道如何处理这个吗?

1 个答案:

答案 0 :(得分:0)

如果这些矩阵不奇怪,应该是描述“旋转矩阵”的情况,你应该通过在极坐标系中插入它们的基矢量来做到这一点。

要检查我们想要将左上角3x3矩阵转换为由角度和距离定义的3个向量。完成此操作后,您应对左上角3x3零件的角度和距离进行线性插值,而其余部分应进行直接笛卡尔插值。从角度和距离,您可以转换回笛卡尔坐标。

当然,内部仍有工作,比如选择旋转的方式(使用最接近的)并检查没有边缘情况,其中一个基矢量旋转到不同的方向然后另一个...

我设法在2D系统中成功地完成了这项工作,这有点容易,但3D应该没有什么不同。

要注意,只要角度相对较小(<10度猜测),笛卡尔插值就可以正常工作,这很可能不是你的情况。