dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewDualQuatToScrew (Operator)

Name

dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewDualQuatToScrew — Umwandlung einer dualen Einheitsquaternion in eine Schraubung.

Signatur

dual_quat_to_screw( : : DualQuaternion, ScrewFormat : AxisDirectionX, AxisDirectionY, AxisDirectionZ, AxisMomentOrPointX, AxisMomentOrPointY, AxisMomentOrPointZ, Rotation, Translation)

Herror T_dual_quat_to_screw(const Htuple DualQuaternion, const Htuple ScrewFormat, Htuple* AxisDirectionX, Htuple* AxisDirectionY, Htuple* AxisDirectionZ, Htuple* AxisMomentOrPointX, Htuple* AxisMomentOrPointY, Htuple* AxisMomentOrPointZ, Htuple* Rotation, Htuple* Translation)

void DualQuatToScrew(const HTuple& DualQuaternion, const HTuple& ScrewFormat, HTuple* AxisDirectionX, HTuple* AxisDirectionY, HTuple* AxisDirectionZ, HTuple* AxisMomentOrPointX, HTuple* AxisMomentOrPointY, HTuple* AxisMomentOrPointZ, HTuple* Rotation, HTuple* Translation)

void HDualQuaternion::DualQuatToScrew(const HString& ScrewFormat, double* AxisDirectionX, double* AxisDirectionY, double* AxisDirectionZ, double* AxisMomentOrPointX, double* AxisMomentOrPointY, double* AxisMomentOrPointZ, double* Rotation, double* Translation) const

void HDualQuaternion::DualQuatToScrew(const char* ScrewFormat, double* AxisDirectionX, double* AxisDirectionY, double* AxisDirectionZ, double* AxisMomentOrPointX, double* AxisMomentOrPointY, double* AxisMomentOrPointZ, double* Rotation, double* Translation) const

void HDualQuaternion::DualQuatToScrew(const wchar_t* ScrewFormat, double* AxisDirectionX, double* AxisDirectionY, double* AxisDirectionZ, double* AxisMomentOrPointX, double* AxisMomentOrPointY, double* AxisMomentOrPointZ, double* Rotation, double* Translation) const   (Nur Windows)

static void HOperatorSet.DualQuatToScrew(HTuple dualQuaternion, HTuple screwFormat, out HTuple axisDirectionX, out HTuple axisDirectionY, out HTuple axisDirectionZ, out HTuple axisMomentOrPointX, out HTuple axisMomentOrPointY, out HTuple axisMomentOrPointZ, out HTuple rotation, out HTuple translation)

void HDualQuaternion.DualQuatToScrew(string screwFormat, out double axisDirectionX, out double axisDirectionY, out double axisDirectionZ, out double axisMomentOrPointX, out double axisMomentOrPointY, out double axisMomentOrPointZ, out double rotation, out double translation)

Beschreibung

Der Operator dual_quat_to_screwdual_quat_to_screwDualQuatToScrewDualQuatToScrewDualQuatToScrew wandelt die duale Einheitsquaternion DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion, die eine starre 3D-Abbildung repräsentiert, in die Parameter einer Schraubung um.

Eine kurze Einführung in duale Quaternionen, die verwendete Notation und die Beziehung zwischen dualen Quaternionen und Schraubungen findet sich in der Dokumentation zu diesem Kapitel (Transformationen / Duale Quaternionen).

Eine Schraubung kann beschrieben werden durch die Richtung ihrer Schraubenachse mit , das Moment der Schraubenachse mit , den Rotationswinkel der Schraubung und die Translation der Schraubung .

Wird für ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat 'moment'"moment""moment""moment""moment" gewählt, werden die beschriebenen Schraubungsparameter in den entsprechenden Parametern AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionX, AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionY, AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZ, AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY, AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ, RotationRotationRotationRotationrotation und TranslationTranslationTranslationTranslationtranslation zurückgegeben.

Alternativ ist es auch möglich, anstatt des Moments der Schraubenachse den Punkt auf der Schraubenachse zurückzugeben, der den kürzesten Abstand zum Ursprung hat. Dazu muss für ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat 'point'"point""point""point""point" gewählt werden. In diesem Fall werden die Koordinaten des Punktes in AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY und AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ zurückgegeben.

Achtung

dual_quat_to_screwdual_quat_to_screwDualQuatToScrewDualQuatToScrewDualQuatToScrew nimmt an, dass es sich bei DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion um eine duale Einheitsquaternion handelt und diese daher eine starre 3D-Abbildung darstellt. Andernfalls ist eine Umwandlung in eine Schraubung nicht sinnvoll möglich. Zu beachten ist auch, dass die Schraubenachse für die Identitätsabbildung (keine Rotation und keine Translation), nicht definiert ist. In diesem Fall wird auf gesetzt.

Ausführungsinformationen

Parameter

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

Duale Einheitsquaternion.

ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Format der Schraubungsparameter.

Defaultwert: 'moment' "moment" "moment" "moment" "moment"

Werteliste: 'moment'"moment""moment""moment""moment", 'point'"point""point""point""point"

AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionX (output_control)  point3d.x HTupleHTupleHtuple (real) (double) (double) (double)

X-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionY (output_control)  point3d.y HTupleHTupleHtuple (real) (double) (double) (double)

Y-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZ (output_control)  point3d.z HTupleHTupleHtuple (real) (double) (double) (double)

Z-Komponente des Richtungsvektors der Schraubenachse.

AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX (output_control)  point3d.x HTupleHTupleHtuple (real) (double) (double) (double)

X-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY (output_control)  point3d.y HTupleHTupleHtuple (real) (double) (double) (double)

Y-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ (output_control)  point3d.z HTupleHTupleHtuple (real) (double) (double) (double)

Z-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

RotationRotationRotationRotationrotation (output_control)  angle.rad HTupleHTupleHtuple (real) (double) (double) (double)

Rotationswinkel im Bogenmaß.

TranslationTranslationTranslationTranslationtranslation (output_control)  real HTupleHTupleHtuple (real) (double) (double) (double)

Translation.

Vorgänger

dual_quat_composedual_quat_composeDualQuatComposeDualQuatComposeDualQuatCompose, dual_quat_conjugatedual_quat_conjugateDualQuatConjugateDualQuatConjugateDualQuatConjugate, dual_quat_interpolatedual_quat_interpolateDualQuatInterpolateDualQuatInterpolateDualQuatInterpolate

Alternativen

dual_quat_to_posedual_quat_to_poseDualQuatToPoseDualQuatToPoseDualQuatToPose, dual_quat_to_hom_mat3ddual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3dDualQuatToHomMat3d

Siehe auch

pose_to_dual_quatpose_to_dual_quatPoseToDualQuatPoseToDualQuatPoseToDualQuat, dual_quat_normalizedual_quat_normalizeDualQuatNormalizeDualQuatNormalizeDualQuatNormalize, serialize_dual_quatserialize_dual_quatSerializeDualQuatSerializeDualQuatSerializeDualQuat, deserialize_dual_quatdeserialize_dual_quatDeserializeDualQuatDeserializeDualQuatDeserializeDualQuat, dual_quat_trans_line_3ddual_quat_trans_line_3dDualQuatTransLine3dDualQuatTransLine3dDualQuatTransLine3d, screw_to_dual_quatscrew_to_dual_quatScrewToDualQuatScrewToDualQuatScrewToDualQuat

Modul

Foundation