dual_quat_normalize T_dual_quat_normalize DualQuatNormalize DualQuatNormalize dual_quat_normalize (Operator)
Name
dual_quat_normalize T_dual_quat_normalize DualQuatNormalize DualQuatNormalize dual_quat_normalize
— Normalize a dual quaternion.
Signature
def dual_quat_normalize (dual_quaternion : Sequence[float]) -> Sequence[float]
Description
The operator dual_quat_normalize dual_quat_normalize DualQuatNormalize DualQuatNormalize DualQuatNormalize dual_quat_normalize
normalizes the input dual
quaternion DualQuaternion DualQuaternion DualQuaternion DualQuaternion dualQuaternion dual_quaternion
and returns the normalized dual
quaternion, which is also called a unit dual quaternion,
in DualQuaternionNormalized DualQuaternionNormalized DualQuaternionNormalized DualQuaternionNormalized dualQuaternionNormalized dual_quaternion_normalized
.
For a brief introduction to dual quaternions, the used notation, and the
relationship between dual quaternions and screws, see the documentation of
this chapter (Transformations / Dual Quaternions ).
The norm of a unit dual quaternion
is 1, i.e.,
. This is
equivalent to the following two conditions:
where
represents the conjugate quaternion of
(see quat_conjugate quat_conjugate QuatConjugate QuatConjugate QuatConjugate quat_conjugate
).
A 3D rigid transformation can be represented by a unit dual quaternion.
Attention
If the norm of the real part of DualQuaternion DualQuaternion DualQuaternion DualQuaternion dualQuaternion dual_quaternion
is 0,
dual_quat_normalize dual_quat_normalize DualQuatNormalize DualQuatNormalize DualQuatNormalize dual_quat_normalize
returns the error code 9310 (H_ERR_DQ_ZERO_NORM)
because in this case no normalization is possible.
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
DualQuaternion DualQuaternion DualQuaternion DualQuaternion dualQuaternion dual_quaternion
(input_control) dual_quaternion(-array) →
HDualQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Unit dual quaternion.
DualQuaternionNormalized DualQuaternionNormalized DualQuaternionNormalized DualQuaternionNormalized dualQuaternionNormalized dual_quaternion_normalized
(output_control) dual_quaternion(-array) →
HDualQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Normalized dual quaternion.
Possible Predecessors
dual_quat_compose dual_quat_compose DualQuatCompose DualQuatCompose DualQuatCompose dual_quat_compose
Possible Successors
dual_quat_to_hom_mat3d dual_quat_to_hom_mat3d DualQuatToHomMat3d DualQuatToHomMat3d DualQuatToHomMat3d dual_quat_to_hom_mat3d
See also
dual_quat_interpolate dual_quat_interpolate DualQuatInterpolate DualQuatInterpolate DualQuatInterpolate dual_quat_interpolate
,
pose_to_dual_quat pose_to_dual_quat PoseToDualQuat PoseToDualQuat PoseToDualQuat pose_to_dual_quat
,
screw_to_dual_quat screw_to_dual_quat ScrewToDualQuat ScrewToDualQuat ScrewToDualQuat screw_to_dual_quat
,
dual_quat_to_screw dual_quat_to_screw DualQuatToScrew DualQuatToScrew DualQuatToScrew dual_quat_to_screw
,
dual_quat_to_pose dual_quat_to_pose DualQuatToPose DualQuatToPose DualQuatToPose dual_quat_to_pose
,
dual_quat_conjugate dual_quat_conjugate DualQuatConjugate DualQuatConjugate DualQuatConjugate dual_quat_conjugate
,
serialize_dual_quat serialize_dual_quat SerializeDualQuat SerializeDualQuat SerializeDualQuat serialize_dual_quat
,
deserialize_dual_quat deserialize_dual_quat DeserializeDualQuat DeserializeDualQuat DeserializeDualQuat deserialize_dual_quat
,
dual_quat_trans_line_3d dual_quat_trans_line_3d DualQuatTransLine3d DualQuatTransLine3d DualQuatTransLine3d dual_quat_trans_line_3d
,
quat_normalize quat_normalize QuatNormalize QuatNormalize QuatNormalize quat_normalize
Module
Foundation