ClassesClasses | | Operators

dual_quat_to_hom_mat3dT_dual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3d (Operator)

Name

dual_quat_to_hom_mat3dT_dual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3d — Convert a unit dual quaternion into a homogeneous transformation matrix.

Signature

dual_quat_to_hom_mat3d( : : DualQuaternion : HomMat3D)

Herror T_dual_quat_to_hom_mat3d(const Htuple DualQuaternion, Htuple* HomMat3D)

void DualQuatToHomMat3d(const HTuple& DualQuaternion, HTuple* HomMat3D)

HHomMat3D HDualQuaternion::DualQuatToHomMat3d() const

static void HOperatorSet.DualQuatToHomMat3d(HTuple dualQuaternion, out HTuple homMat3D)

HHomMat3D HDualQuaternion.DualQuatToHomMat3d()

Description

The operator dual_quat_to_hom_mat3ddual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3dDualQuatToHomMat3d converts a unit dual quaternion DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion, which represents a 3D rigid transformation, into its corresponding homogeneous transformation matrix HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D.

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 rotation part of HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D is computed from the real part of the dual quaternion, as described in quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3dQuatToHomMat3d. The translation part of HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D is computed from the real and dual part of :

where is the vector part of the quaternion .

Attention

HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D will only be a valid rigid transformation matrix if DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion is a unit dual quaternion.

Execution Information

Parameters

DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion (input_control)  dual_quaternion HDualQuaternion, HTupleHTupleHtuple (real) (double) (double) (double)

Unit dual quaternion.

HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D (output_control)  hom_mat3d HHomMat3D, HTupleHTupleHtuple (real) (double) (double) (double)

Transformation matrix.

Possible Predecessors

screw_to_dual_quatscrew_to_dual_quatScrewToDualQuatScrewToDualQuatScrewToDualQuat, dual_quat_interpolatedual_quat_interpolateDualQuatInterpolateDualQuatInterpolateDualQuatInterpolate, dual_quat_composedual_quat_composeDualQuatComposeDualQuatComposeDualQuatCompose, dual_quat_normalizedual_quat_normalizeDualQuatNormalizeDualQuatNormalizeDualQuatNormalize

Possible Successors

affine_trans_point_3daffine_trans_point_3dAffineTransPoint3dAffineTransPoint3dAffineTransPoint3d

Alternatives

dual_quat_to_posedual_quat_to_poseDualQuatToPoseDualQuatToPoseDualQuatToPose, dual_quat_to_screwdual_quat_to_screwDualQuatToScrewDualQuatToScrewDualQuatToScrew

See also

dual_quat_composedual_quat_composeDualQuatComposeDualQuatComposeDualQuatCompose, pose_to_dual_quatpose_to_dual_quatPoseToDualQuatPoseToDualQuatPoseToDualQuat, dual_quat_conjugatedual_quat_conjugateDualQuatConjugateDualQuatConjugateDualQuatConjugate, serialize_dual_quatserialize_dual_quatSerializeDualQuatSerializeDualQuatSerializeDualQuat, deserialize_dual_quatdeserialize_dual_quatDeserializeDualQuatDeserializeDualQuatDeserializeDualQuat, dual_quat_trans_line_3ddual_quat_trans_line_3dDualQuatTransLine3dDualQuatTransLine3dDualQuatTransLine3d, quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3dQuatToHomMat3d

Module

Foundation


ClassesClasses | | Operators