1

我有一个带有方向的对象以及围绕每个身体轴的旋转速率。我需要找到从这种状态到具有不同速率集的第二种状态的平稳过渡。此外,我对围绕每个轴旋转/加速的速度有限制。

我已经探索过 Quaternion slerp,虽然我可以使用它们在状态之间进行平滑插值,但我没有看到一种简单的方法来获得速率匹配。

这感觉就像是微分方程和路径规划的练习,但我不确定如何准确地制定问题,以便现有的算法可以解决它。

任何可以帮助解决此问题的算法建议和/或有关制定与这些算法一起使用的问题的提示将不胜感激。

[编辑 - 这是我正在处理的问题类型的示例]

想象一下直升机上的炮手需要在直升机飞行时跟踪目标。为了争论起见,他需要从目标升起到不再出现在视野中。这个目标的相对速率不是恒定的,但我假设通过几个“速率匹配”操作的聚合,我可以很好地近似这个跟踪。我可以计算任何时候所需的枪方向和跟踪速率,它只是从一些让我难过的离散方向和速率生成一个配置文件。

谢谢!

4

1 回答 1

0

首先,您围绕每个轴的旋转速率应该组成一个旋转速率向量(即w = [w_x w_y w_z]^T)。然后,您可以将旋转的幅度与旋转的轴分开。幅度是 w_mag = w /| w |。那么轴就是单位向量u = w /w_mag。然后,您可以通过使用您最喜欢的表示(即旋转矩阵、四元数)组合增量旋转来更新您的总旋转。如果您的起始旋转是 R_0 并且您的增量旋转由 R_inc(w_mag*dt, u ) 定义,那么您遵循以下组合规则:

R_1 = R_0 * R_inc

R_k+1 = R_k * R_inc

请享用。

于 2010-12-07T01:29:24.663 回答