scipy.spatial.transform.RigidTransform.

as_dual_quat#

RigidTransform.as_dual_quat(self, *, scalar_first=False)#

返回变换的对偶四元数表示。

单位对偶四元数将方向编码在实单位四元数中,并将平移编码在对偶四元数中。存在双重覆盖,即单位对偶四元数 q 和 -q 表示相同的变换。

参数:
scalar_firstbool,可选

标量分量在表示实部和对偶部的两个单独四元数中是第一个还是最后一个。 默认为 False,即使用标量最后顺序。

返回值:
dual_quatnumpy.ndarray,形状 (N, 8) 或 (8,)

单个单位对偶四元数向量或一堆单位对偶四元数向量。 实部存储在前四个分量中,对偶部存储在后四个分量中。

示例

>>> from scipy.spatial.transform import RigidTransform as Tf
>>> import numpy as np

获取单位对偶四元数(默认使用标量最后)

>>> Tf.identity().as_dual_quat()
array([0., 0., 0., 1., 0., 0., 0., 0.])

当我们想要使用标量第一约定,我们使用参数

>>> Tf.identity().as_dual_quat(scalar_first=True)
array([1., 0., 0., 0., 0., 0., 0., 0.])