dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewDualQuatToScrewdual_quat_to_screw (Operator)

Name

dual_quat_to_screwT_dual_quat_to_screwDualQuatToScrewDualQuatToScrewdual_quat_to_screw — 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)

def dual_quat_to_screw(dual_quaternion: Sequence[float], screw_format: str) -> Tuple[float, float, float, float, float, float, float, float]

Beschreibung

Der Operator dual_quat_to_screwdual_quat_to_screwDualQuatToScrewDualQuatToScrewDualQuatToScrewdual_quat_to_screw wandelt die duale Einheitsquaternion DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaterniondual_quaternion, 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 ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormatscrew_format 'moment'"moment""moment""moment""moment""moment" gewählt, werden die beschriebenen Schraubungsparameter in den entsprechenden Parametern AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionXaxis_direction_x, AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionYaxis_direction_y, AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZaxis_direction_z, AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointXaxis_moment_or_point_x, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointYaxis_moment_or_point_y, AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZaxis_moment_or_point_z, 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 ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormatscrew_format 'point'"point""point""point""point""point" gewählt werden. In diesem Fall werden die Koordinaten des Punktes in AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointXaxis_moment_or_point_x, AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointYaxis_moment_or_point_y und AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZaxis_moment_or_point_z zurückgegeben.

Achtung

dual_quat_to_screwdual_quat_to_screwDualQuatToScrewDualQuatToScrewDualQuatToScrewdual_quat_to_screw nimmt an, dass es sich bei DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaterniondual_quaternion 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

DualQuaternionDualQuaternionDualQuaternionDualQuaterniondualQuaterniondual_quaternion (input_control)  dual_quaternion HDualQuaternion, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Duale Einheitsquaternion.

ScrewFormatScrewFormatScrewFormatScrewFormatscrewFormatscrew_format (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Format der Schraubungsparameter.

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

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

AxisDirectionXAxisDirectionXAxisDirectionXAxisDirectionXaxisDirectionXaxis_direction_x (output_control)  point3d.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

X-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionYAxisDirectionYAxisDirectionYAxisDirectionYaxisDirectionYaxis_direction_y (output_control)  point3d.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

Y-Komponente des Richtungsvektors der Schraubenachse.

AxisDirectionZAxisDirectionZAxisDirectionZAxisDirectionZaxisDirectionZaxis_direction_z (output_control)  point3d.z HTuplefloatHTupleHtuple (real) (double) (double) (double)

Z-Komponente des Richtungsvektors der Schraubenachse.

AxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXAxisMomentOrPointXaxisMomentOrPointXaxis_moment_or_point_x (output_control)  point3d.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

X-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYAxisMomentOrPointYaxisMomentOrPointYaxis_moment_or_point_y (output_control)  point3d.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

Y-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

AxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZAxisMomentOrPointZaxisMomentOrPointZaxis_moment_or_point_z (output_control)  point3d.z HTuplefloatHTupleHtuple (real) (double) (double) (double)

Z-Komponente des Momentenvektors oder eines Punktes der Schraubenachse.

RotationRotationRotationRotationrotationrotation (output_control)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Rotationswinkel im Bogenmaß.

TranslationTranslationTranslationTranslationtranslationtranslation (output_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Translation.

Vorgänger

dual_quat_composedual_quat_composeDualQuatComposeDualQuatComposeDualQuatComposedual_quat_compose, dual_quat_conjugatedual_quat_conjugateDualQuatConjugateDualQuatConjugateDualQuatConjugatedual_quat_conjugate, dual_quat_interpolatedual_quat_interpolateDualQuatInterpolateDualQuatInterpolateDualQuatInterpolatedual_quat_interpolate

Alternativen

dual_quat_to_posedual_quat_to_poseDualQuatToPoseDualQuatToPoseDualQuatToPosedual_quat_to_pose, dual_quat_to_hom_mat3ddual_quat_to_hom_mat3dDualQuatToHomMat3dDualQuatToHomMat3dDualQuatToHomMat3ddual_quat_to_hom_mat3d

Siehe auch

pose_to_dual_quatpose_to_dual_quatPoseToDualQuatPoseToDualQuatPoseToDualQuatpose_to_dual_quat, dual_quat_normalizedual_quat_normalizeDualQuatNormalizeDualQuatNormalizeDualQuatNormalizedual_quat_normalize, serialize_dual_quatserialize_dual_quatSerializeDualQuatSerializeDualQuatSerializeDualQuatserialize_dual_quat, deserialize_dual_quatdeserialize_dual_quatDeserializeDualQuatDeserializeDualQuatDeserializeDualQuatdeserialize_dual_quat, dual_quat_trans_line_3ddual_quat_trans_line_3dDualQuatTransLine3dDualQuatTransLine3dDualQuatTransLine3ddual_quat_trans_line_3d, screw_to_dual_quatscrew_to_dual_quatScrewToDualQuatScrewToDualQuatScrewToDualQuatscrew_to_dual_quat

Modul

Foundation