转换方向的最佳方法是什么
pybullet.getBasePositionAndOrientation
到python中xyz轴表示的向量?到目前为止,我只能找到有关此问题的有限文档,感谢您提供任何见解。
SciPy 有一个Rotation
类,我觉得在处理方向/旋转时非常方便。除其他外,它使不同表示之间的转换非常容易。
PyBullet 将方向作为四元数返回。我假设“xyz 轴表示”是指在 SciPy 中称为“旋转向量”(即“与旋转轴同向且其范数给出旋转角度的 3 维向量”)。鉴于此,转换代码如下所示:
from scipy.spatial.transform import Rotation
_, pybullet_orientation = pybullet.getBasePositionAndOrientation(...)
rot = Rotation.from_quat(pybullet_orientation)
rotvec = rot.as_rotvec()