quat_composeT_quat_composeQuatComposeQuatComposequat_compose (Operator)

Name

quat_composeT_quat_composeQuatComposeQuatComposequat_compose — Multiply two quaternions.

Signature

quat_compose( : : QuaternionLeft, QuaternionRight : QuaternionComposed)

Herror T_quat_compose(const Htuple QuaternionLeft, const Htuple QuaternionRight, Htuple* QuaternionComposed)

void QuatCompose(const HTuple& QuaternionLeft, const HTuple& QuaternionRight, HTuple* QuaternionComposed)

HQuaternion HQuaternion::QuatCompose(const HQuaternion& QuaternionRight) const

static void HOperatorSet.QuatCompose(HTuple quaternionLeft, HTuple quaternionRight, out HTuple quaternionComposed)

HQuaternion HQuaternion.QuatCompose(HQuaternion quaternionRight)

def quat_compose(quaternion_left: Sequence[float], quaternion_right: Sequence[float]) -> Sequence[float]

Description

The operator quat_composequat_composeQuatComposeQuatComposeQuatComposequat_compose multiplies the two quaternions QuaternionLeftQuaternionLeftQuaternionLeftQuaternionLeftquaternionLeftquaternion_left and QuaternionRightQuaternionRightQuaternionRightQuaternionRightquaternionRightquaternion_right and returns the result in QuaternionComposedQuaternionComposedQuaternionComposedQuaternionComposedquaternionComposedquaternion_composed.

A quaternion is given by . In HALCON, a quaternion is represented by a four value tuple: .

The product of two quaternions and is defined as:

As a consequence, the multiplication of two quaternions is not commutative, i.e. .

Execution Information

Parameters

QuaternionLeftQuaternionLeftQuaternionLeftQuaternionLeftquaternionLeftquaternion_left (input_control)  quaternion HQuaternion, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Left quaternion.

QuaternionRightQuaternionRightQuaternionRightQuaternionRightquaternionRightquaternion_right (input_control)  quaternion HQuaternion, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Right quaternion.

QuaternionComposedQuaternionComposedQuaternionComposedQuaternionComposedquaternionComposedquaternion_composed (output_control)  quaternion HQuaternion, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Product of the input quaternions.

Possible Predecessors

axis_angle_to_quataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuatAxisAngleToQuataxis_angle_to_quat

Possible Successors

quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3dQuatToHomMat3dquat_to_hom_mat3d, quat_to_posequat_to_poseQuatToPoseQuatToPoseQuatToPosequat_to_pose, quat_rotate_point_3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3dQuatRotatePoint3dquat_rotate_point_3d

See also

axis_angle_to_quataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuatAxisAngleToQuataxis_angle_to_quat, quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3dQuatToHomMat3dquat_to_hom_mat3d, quat_rotate_point_3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3dQuatRotatePoint3dquat_rotate_point_3d, quat_normalizequat_normalizeQuatNormalizeQuatNormalizeQuatNormalizequat_normalize, quat_conjugatequat_conjugateQuatConjugateQuatConjugateQuatConjugatequat_conjugate, dual_quat_composedual_quat_composeDualQuatComposeDualQuatComposeDualQuatComposedual_quat_compose

Module

Foundation