将两个四元数旋转与两个矩阵相同并将其转换为四元数的结果是?组合四元数旋转和旋转矩阵之间的差异
我有一个四元数(q1)和旋转矩阵(m2)作为一个函数的输入(不幸的是不可协商),并想旋转矩阵的初始四元数导致一个新的四元数。我已经尝试了一些公平的方法来做到这一点,并且有些奇怪的结果。
如果我将q1转换成矩阵(m1),计算m2.m1并将结果转换为四元数,我将得到什么是可能的四元数结果。然而,如果我使用完全相同的函数将m2转换为四元数并将它们相乘(两个顺序中,我知道它是不可交换的),我会得到完全不同的东西。我想要实现四元数组合,这样我最终可以从当前四元数的SLERP到结果。
所有功能都来自此:http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/index.htm并正在用C++实现和数学测试
非常感谢Chris。该公式对于测试我的功能实际上非常有帮助。我认为我的问题稍微更基本(根据我的矩阵的使用情况),但这非常有助于我发现这一点。再次感谢。 –