quat_interpolateT_quat_interpolateQuatInterpolateQuatInterpolatequat_interpolate (Operator)

Name

quat_interpolateT_quat_interpolateQuatInterpolateQuatInterpolatequat_interpolate — Interpolation von zwei Quaternionen.

Signatur

quat_interpolate( : : QuaternionStart, QuaternionEnd, InterpPos : QuaternionInterpolated)

Herror T_quat_interpolate(const Htuple QuaternionStart, const Htuple QuaternionEnd, const Htuple InterpPos, Htuple* QuaternionInterpolated)

void QuatInterpolate(const HTuple& QuaternionStart, const HTuple& QuaternionEnd, const HTuple& InterpPos, HTuple* QuaternionInterpolated)

HQuaternion HQuaternion::QuatInterpolate(const HQuaternion& QuaternionEnd, const HTuple& InterpPos) const

static void HOperatorSet.QuatInterpolate(HTuple quaternionStart, HTuple quaternionEnd, HTuple interpPos, out HTuple quaternionInterpolated)

HQuaternion HQuaternion.QuatInterpolate(HQuaternion quaternionEnd, HTuple interpPos)

def quat_interpolate(quaternion_start: Sequence[float], quaternion_end: Sequence[float], interp_pos: Sequence[float]) -> Sequence[float]

Beschreibung

Der Operator quat_interpolatequat_interpolateQuatInterpolateQuatInterpolatequat_interpolate interpoliert die beiden Quaternionen QuaternionStartQuaternionStartQuaternionStartquaternionStartquaternion_start und QuaternionEndQuaternionEndQuaternionEndquaternionEndquaternion_end an der Interpolationsposition InterpPosInterpPosInterpPosinterpPosinterp_pos. Diese Position muss im Intervall [0,1] liegen. Für denn Fall InterpPosInterpPosInterpPosinterpPosinterp_pos = 0 entspricht QuaternionInterpolatedQuaternionInterpolatedQuaternionInterpolatedquaternionInterpolatedquaternion_interpolated der Eingabequaternion QuaternionStartQuaternionStartQuaternionStartquaternionStartquaternion_start. Für den Fall InterpPosInterpPosInterpPosinterpPosinterp_pos = 1 entspricht QuaternionInterpolatedQuaternionInterpolatedQuaternionInterpolatedquaternionInterpolatedquaternion_interpolated der Eingabequaternion QuaternionEndQuaternionEndQuaternionEndquaternionEndquaternion_end.

Die Interpolation erfolgt durch sphärische lineare Interpolation. Sind QuaternionStartQuaternionStartQuaternionStartquaternionStartquaternion_start und QuaternionEndQuaternionEndQuaternionEndquaternionEndquaternion_end Rotationsquaternionen, so ist auch QuaternionInterpolatedQuaternionInterpolatedQuaternionInterpolatedquaternionInterpolatedquaternion_interpolated eine Rotationsquaternion. Wird InterpPosInterpPosInterpPosinterpPosinterp_pos konstant inkrementiert, so wandert ein Punkt auf der Einheitskugel, der mit QuaternionInterpolatedQuaternionInterpolatedQuaternionInterpolatedquaternionInterpolatedquaternion_interpolated rotiert wird, mit konstanter Geschwindigkeit auf einem Bogen auf der Einheitskugel.

Ausführungsinformationen

Parameter

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

Startquaternion.

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

Endquaternion.

InterpPosInterpPosInterpPosinterpPosinterp_pos (input_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Interpolationsparameter.

Default: 0.5

Wertevorschläge: 0.0, 0.25, 0.5, 0.75, 1.0

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

Interpolierte Quaternion.

Vorgänger

axis_angle_to_quataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuataxis_angle_to_quat, quat_normalizequat_normalizeQuatNormalizeQuatNormalizequat_normalize

Nachfolger

quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3dquat_to_hom_mat3d, quat_rotate_point_3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3dquat_rotate_point_3d, quat_to_posequat_to_poseQuatToPoseQuatToPosequat_to_pose

Siehe auch

quat_rotate_point_3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3dquat_rotate_point_3d, quat_conjugatequat_conjugateQuatConjugateQuatConjugatequat_conjugate, quat_composequat_composeQuatComposeQuatComposequat_compose, dual_quat_interpolatedual_quat_interpolateDualQuatInterpolateDualQuatInterpolatedual_quat_interpolate

Modul

Foundation