通过使用左手规则,我使用y轴左右旋转一个对象,并使用x轴向上/向下旋转。 第一个对象向右旋转后,向上/向下旋转应使用z轴。
然而,当我尝试使用z轴旋转时,在第一次旋转后,当我使用y轴旋转时它具有相同的效果。
任何人都有任何想法?
由于
答案 0 :(得分:0)
为了保持一切正直,正确的旋转顺序是滚动,俯仰,偏航。也就是说,绕X轴旋转,绕Y轴旋转,绕Z轴旋转。
答案 1 :(得分:0)
不确定你的问题是什么,但如果你问为什么会发生这种情况,答案就是旋转不是可交换的。也就是说,θ围绕轴A旋转,然后围绕轴B旋转phi与围绕轴B旋转phi,然后围绕轴A旋转θ不同。
如果你问为什么在你想象它时看起来不错的一系列操作无法在代码中工作,请确保你使用的是右手坐标系。此外,使用单位矢量(1,0,0)处理x,y和z轴的各种旋转矩阵可能会有所帮助 - 事实上,如果你在纸上完成它,你将获得更好的直觉发生了什么事。
答案 2 :(得分:0)
感谢所有答案:
对不起,我没有说清楚问题。 这是典型的万向节锁定问题。 我的解决方案是使用四元数旋转