dual_quat_compose T_dual_quat_compose DualQuatCompose DualQuatCompose dual_quat_compose (Operator)
dual_quat_compose T_dual_quat_compose DualQuatCompose DualQuatCompose dual_quat_compose
— Multiply two dual quaternions.
Signature
Description
The operator dual_quat_compose dual_quat_compose DualQuatCompose DualQuatCompose dual_quat_compose
multiplies the two dual quaternions
DualQuaternionLeft DualQuaternionLeft DualQuaternionLeft dualQuaternionLeft dual_quaternion_left
and DualQuaternionRight DualQuaternionRight DualQuaternionRight dualQuaternionRight dual_quaternion_right
and returns the
product in DualQuaternionComposed DualQuaternionComposed DualQuaternionComposed dualQuaternionComposed dual_quaternion_composed
.
For a brief introduction to dual quaternions, the used notation, and the
relationship between dual quaternions and screws, see
“Solution Guide III-C - 3D Vision”
.
The multiplication of the dual quaternions
and
is
.
For the multiplication of quaternions see quat_compose quat_compose QuatCompose QuatCompose quat_compose
.
Note that the multiplication of two dual quaternions is not commutative,
i.e.,
.
If DualQuaternionLeft DualQuaternionLeft DualQuaternionLeft dualQuaternionLeft dual_quaternion_left
and DualQuaternionRight DualQuaternionRight DualQuaternionRight dualQuaternionRight dual_quaternion_right
are unit
dual quaternions and, hence, represent 3D rigid transformations, their
multiplication corresponds to the multiplication of their corresponding
homogeneous transformation matrices. Consequently, dual_quat_compose dual_quat_compose DualQuatCompose DualQuatCompose dual_quat_compose
can be used to concatenate two 3D rigid transformations analogously to
pose_compose pose_compose PoseCompose PoseCompose pose_compose
or hom_mat3d_compose hom_mat3d_compose HomMat3dCompose HomMat3dCompose hom_mat3d_compose
.
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
DualQuaternionLeft DualQuaternionLeft DualQuaternionLeft dualQuaternionLeft dual_quaternion_left
(input_control) dual_quaternion(-array) →
HDualQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Left dual quaternion.
DualQuaternionRight DualQuaternionRight DualQuaternionRight dualQuaternionRight dual_quaternion_right
(input_control) dual_quaternion(-array) →
HDualQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Right dual quaternion.
DualQuaternionComposed DualQuaternionComposed DualQuaternionComposed dualQuaternionComposed dual_quaternion_composed
(output_control) dual_quaternion(-array) →
HDualQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Product of the dual quaternions.
Possible Predecessors
screw_to_dual_quat screw_to_dual_quat ScrewToDualQuat ScrewToDualQuat screw_to_dual_quat
Possible Successors
dual_quat_to_hom_mat3d dual_quat_to_hom_mat3d DualQuatToHomMat3d DualQuatToHomMat3d dual_quat_to_hom_mat3d
,
dual_quat_to_pose dual_quat_to_pose DualQuatToPose DualQuatToPose dual_quat_to_pose
,
dual_quat_to_screw dual_quat_to_screw DualQuatToScrew DualQuatToScrew dual_quat_to_screw
Alternatives
pose_compose pose_compose PoseCompose PoseCompose pose_compose
,
hom_mat3d_compose hom_mat3d_compose HomMat3dCompose HomMat3dCompose hom_mat3d_compose
See also
dual_quat_interpolate dual_quat_interpolate DualQuatInterpolate DualQuatInterpolate dual_quat_interpolate
,
pose_to_dual_quat pose_to_dual_quat PoseToDualQuat PoseToDualQuat pose_to_dual_quat
,
dual_quat_normalize dual_quat_normalize DualQuatNormalize DualQuatNormalize dual_quat_normalize
,
dual_quat_conjugate dual_quat_conjugate DualQuatConjugate DualQuatConjugate dual_quat_conjugate
,
serialize_dual_quat serialize_dual_quat SerializeDualQuat SerializeDualQuat serialize_dual_quat
,
deserialize_dual_quat deserialize_dual_quat DeserializeDualQuat DeserializeDualQuat deserialize_dual_quat
,
dual_quat_trans_line_3d dual_quat_trans_line_3d DualQuatTransLine3d DualQuatTransLine3d dual_quat_trans_line_3d
,
dual_quat_trans_point_3d dual_quat_trans_point_3d DualQuatTransPoint3d DualQuatTransPoint3d dual_quat_trans_point_3d
,
quat_compose quat_compose QuatCompose QuatCompose quat_compose
Module
Foundation