【发布时间】:2011-02-22 04:39:17
【问题描述】:
我有两个描述旋转的向量;一个起始旋转 A 和一个目标旋转 B。我最好如何将 A 插值 F 以接近 B?
当需要对多个维度进行插值(即产生不希望的旋转)时,对向量使用简单的 lerp 无法正常工作。也许从旋转向量构建四元数并使用 slerp 是要走的路。但是,那么,我怎样才能从得到的四元数中提取一个描述新旋转的向量呢?
提前致谢。
【问题讨论】:
-
你能解释一下为什么 SLERP 不适合你吗?插入多个维度是什么意思,我相信它只是从一个点(向量 A)开始并在另一个点(向量 B)结束,围绕原点进行最短的旋转。
-
一维以上是指多个轴,例如同时围绕 X 和 Y 旋转,而不是仅围绕单个轴旋转。这就是 LERP 失败的时候。
-
从根本上说,这没有多大意义,因为无论多轴的每次旋转都等价于 到某个其他轴的旋转。所以真的没有理由为什么线性插值在所有情况下都不起作用。
标签: math 3d matrix rotation quaternions