如何在三维空间中存储和修改角度

How to store and modify angles in 3D space

本文关键字:修改 存储 三维空间      更新时间:2023-10-16

这不是关于理解角度物理学,而是关于如何实际实现它

例如,我在每帧使用一个简单的线性插值(使用dT)我在角度单位方面遇到了问题,我希望能够绕任意轴旋转。

(带glm)使用vec3测量扭矩、惯性和角速度对于单轴非常有效。再多一点,你就会得到万向节锁。(即,您可以围绕局部x、y或z旋转,但叠加会阻止正确的结果)

使用四元数,我无法使它在时间、惯性或长时间内很好地发挥作用。

有什么行之有效的方法来表示这些特征吗?

通常的解决方案是使用旋转的矩阵表示。序列中的两个旋转可以通过乘以它们各自的矩阵来表示。因为矩阵乘法不是对称的,所以2次旋转的顺序很重要——这是应该的。