Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Math 欧拉角->;四元数->;欧拉角始终导致等效旋转?_Math_Quaternions_Euler Angles - Fatal编程技术网

Math 欧拉角->;四元数->;欧拉角始终导致等效旋转?

Math 欧拉角->;四元数->;欧拉角始终导致等效旋转?,math,quaternions,euler-angles,Math,Quaternions,Euler Angles,从Euler角度转换为四元数并返回到Euler角度时,将显示。但它们总是等价的吗?我的意思是,如果我对一个对象应用原始Euler旋转或产生的Euler旋转,该对象会以相同的方向结束吗?是 每个旋转都可以(不一定是唯一的)用欧拉角来描述。四元数也是如此。除非您在转换时出错,否则转换将使每个转换步骤的输入和输出仍然描述相同的旋转。因此,通过传递性,原始旋转与最终旋转相同,因为它们都等于由四元数描述的中间旋转 唯一的问题可能来自这样一个事实:如果您不小心,某些情况可能会导致失败,例如,导致案例被零除。

从Euler角度转换为四元数并返回到Euler角度时,将显示。但它们总是等价的吗?我的意思是,如果我对一个对象应用原始Euler旋转或产生的Euler旋转,该对象会以相同的方向结束吗?

每个旋转都可以(不一定是唯一的)用欧拉角来描述。四元数也是如此。除非您在转换时出错,否则转换将使每个转换步骤的输入和输出仍然描述相同的旋转。因此,通过传递性,原始旋转与最终旋转相同,因为它们都等于由四元数描述的中间旋转


唯一的问题可能来自这样一个事实:如果您不小心,某些情况可能会导致失败,例如,导致案例被零除。如果正确处理这些奇点,那么最终结果将与初始输入相等。

简而言之,答案是:是。(假设精度无限。)“方向”一词是正确的,但“旋转”可以用作在时间内改变方向。因此,一个方向可以由几个“欧拉天使”的组合来表示,它们可以表示不同的“旋转”。例如,通常使用“欧拉天使”来表示动画的一部分(用于用户输入)。我将旋转解释为单个原子操作,而不是随时间的连续变化。我认为我对这些词的使用相当普遍,我希望OP的意思也一样。我会用轴速度和角速度的组合,或者四元数指数来描述连续旋转。我唯一一次看到Euler角被用来描述连续运动是在天体力学的背景下,其中两个角将描述轨迹的平面,第三个角将描述该平面上的位置,这意味着最后一个角将随时间而变化。这就是你的意思吗?这是常见用法,重要的是TS以同样的方式使用它。另外,我多次在动画中使用EA来定义简单的旋转运动。