KlassenKlassenKlassenKlassen | | | | Operatoren

dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewdual_quat_to_screwDualQuatToScrewDualQuatToScrew (Operator)

Name

dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewdual_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)

Herror dual_quat_to_screw(const HTuple& DualQuaternion, const HTuple& ScrewFormat, double* AxisDirectionX, double* AxisDirectionY, double* AxisDirectionZ, double* AxisMomentOrPointX, double* AxisMomentOrPointY, double* AxisMomentOrPointZ, double* Rotation, double* 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 HOperatorSetX.DualQuatToScrew(
[in] VARIANT DualQuaternion, [in] VARIANT ScrewFormat, [out] VARIANT* AxisDirectionX, [out] VARIANT* AxisDirectionY, [out] VARIANT* AxisDirectionZ, [out] VARIANT* AxisMomentOrPointX, [out] VARIANT* AxisMomentOrPointY, [out] VARIANT* AxisMomentOrPointZ, [out] VARIANT* Rotation, [out] VARIANT* Translation)

double HDualQuaternionX.DualQuatToScrew(
[in] BSTR ScrewFormat, [out] double* AxisDirectionY, [out] double* AxisDirectionZ, [out] double* AxisMomentOrPointX, [out] double* AxisMomentOrPointY, [out] double* AxisMomentOrPointZ, [out] double* Rotation, [out] double* Translation)

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_screwDualQuatToScrewdual_quat_to_screwDualQuatToScrewDualQuatToScrew wandelt die duale Einheitsquaternion DualQuaternionDualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion, 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 ScrewFormatScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat 'moment'"moment""moment""moment""moment""moment" gewählt, werden die beschriebenen Schraubungsparameter in den entsprechenden Parametern AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionX, AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionY, AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZ, AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY, AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ, RotationRotationRotationRotationRotationrotation und TranslationTranslationTranslationTranslationTranslationtranslation 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 ScrewFormatScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat 'point'"point""point""point""point""point" gewählt werden. In diesem Fall werden die Koordinaten des Punktes in AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY und AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ zurückgegeben.

Achtung

dual_quat_to_screwdual_quat_to_screwDualQuatToScrewdual_quat_to_screwDualQuatToScrewDualQuatToScrew nimmt an, dass es sich bei DualQuaternionDualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion 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.

Parallelisierung

Parameter

DualQuaternionDualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaternion (input_control)  dual_quaternion HDualQuaternion, HTupleHTupleHTupleHDualQuaternionX, VARIANTHtuple (real) (double) (double) (double) (double) (double)

Duale Einheitsquaternion.

ScrewFormatScrewFormatScrewFormatScrewFormatScrewFormatscrewFormat (input_control)  string HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Format der Schraubungsparameter.

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

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

AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionX (output_control)  point3d.x HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

X-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionY (output_control)  point3d.y HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Y-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZ (output_control)  point3d.z HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Z-Komponente des Richtungsvektors der Schraubenachse.

AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointX (output_control)  point3d.x HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

X-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointY (output_control)  point3d.y HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Y-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZ (output_control)  point3d.z HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Z-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

RotationRotationRotationRotationRotationrotation (output_control)  angle.rad HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Rotationswinkel im Bogenmaß.

TranslationTranslationTranslationTranslationTranslationtranslation (output_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Translation.

Vorgänger

dual_quat_composedual_quat_composeDualQuatComposedual_quat_composeDualQuatComposeDualQuatCompose, dual_quat_conjugatedual_quat_conjugateDualQuatConjugatedual_quat_conjugateDualQuatConjugateDualQuatConjugate, dual_quat_interpolatedual_quat_interpolateDualQuatInterpolatedual_quat_interpolateDualQuatInterpolateDualQuatInterpolate

Alternativen

dual_quat_to_posedual_quat_to_poseDualQuatToPosedual_quat_to_poseDualQuatToPoseDualQuatToPose, dual_quat_to_hom_mat3ddual_quat_to_hom_mat3dDualQuatToHomMat3ddual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3d

Siehe auch

pose_to_dual_quatpose_to_dual_quatPoseToDualQuatpose_to_dual_quatPoseToDualQuatPoseToDualQuat, dual_quat_normalizedual_quat_normalizeDualQuatNormalizedual_quat_normalizeDualQuatNormalizeDualQuatNormalize, serialize_dual_quatserialize_dual_quatSerializeDualQuatserialize_dual_quatSerializeDualQuatSerializeDualQuat, deserialize_dual_quatdeserialize_dual_quatDeserializeDualQuatdeserialize_dual_quatDeserializeDualQuatDeserializeDualQuat, dual_quat_trans_line_3ddual_quat_trans_line_3dDualQuatTransLine3ddual_quat_trans_line_3dDualQuatTransLine3dDualQuatTransLine3d, screw_to_dual_quatscrew_to_dual_quatScrewToDualQuatscrew_to_dual_quatScrewToDualQuatScrewToDualQuat

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren