quat_rotate_point_3d T_quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d (Operator)
Name
quat_rotate_point_3d T_quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d — Rotation eines Punktes mit einer Einheitsquaternion.
Signatur
Herror T_quat_rotate_point_3d (const Htuple Quaternion , const Htuple Px , const Htuple Py , const Htuple Pz , Htuple* Qx , Htuple* Qy , Htuple* Qz )
void QuatRotatePoint3d (const HTuple& Quaternion , const HTuple& Px , const HTuple& Py , const HTuple& Pz , HTuple* Qx , HTuple* Qy , HTuple* Qz )
double HQuaternion ::QuatRotatePoint3d (double Px , double Py , double Pz , double* Qy , double* Qz ) const
static void HOperatorSet .QuatRotatePoint3d (HTuple quaternion , HTuple px , HTuple py , HTuple pz , out HTuple qx , out HTuple qy , out HTuple qz )
double HQuaternion .QuatRotatePoint3d (double px , double py , double pz , out double qy , out double qz )
def quat_rotate_point_3d (quaternion : Sequence[float], px : float, py : float, pz : float) -> Tuple[float, float, float]
Beschreibung
Der Operator quat_rotate_point_3d quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d rotiert den Punkt (Px Px Px px px ,
Py Py Py py py , Pz Pz Pz pz pz ) mit der Rotationsquaternion Quaternion Quaternion Quaternion quaternion quaternion
(z.B. erzeugt durch axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat ). Der rotierte Punkt wird als
(Qx Qx Qx qx qx , Qy Qy Qy qy qy , Qz Qz Qz qz qz ) zurückgegeben.
Die Rotation eines Punktes x durch eine Einheitsquaternion q ist
definiert durch
entspricht der Konjugation von q (siehe
quat_conjugate quat_conjugate QuatConjugate QuatConjugate quat_conjugate ). Der Punkt x wird intern in Quaternionenform
umgewandelt, damit obige Gleichung angewandt werden kann. Dabei wird
der Realteil der Quaternion auf Null gesetzt und die Komponenten von x
den drei imaginären Komponenten der Quaternion zugewiesen.
Achtung
Der Operator quat_rotate_point_3d quat_rotate_point_3d QuatRotatePoint3d QuatRotatePoint3d quat_rotate_point_3d überprüft nicht, ob
Quaternion Quaternion Quaternion quaternion quaternion eine Einheitsquaternion ist. Falls Quaternion Quaternion Quaternion quaternion quaternion
keine Einheitsquaternion ist, ist das Ergebnis dieses Operators nicht
definiert.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Parameter
Quaternion Quaternion Quaternion quaternion quaternion (input_control) quaternion → HQuaternion , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Rotationsquaternion.
Px Px Px px px (input_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
X-Koordinate des zu drehenden Punktes.
Py Py Py py py (input_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Y-Koordinate des zu drehenden Punktes.
Pz Pz Pz pz pz (input_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Z-Koordinate des zu drehenden Punktes.
Qx Qx Qx qx qx (output_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
X-Koordinate des gedrehten Punktes.
Qy Qy Qy qy qy (output_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Y-Koordinate des gedrehten Punktes.
Qz Qz Qz qz qz (output_control) real → HTuple float HTuple Htuple (real) (double ) (double ) (double )
Z-Koordinate des gedrehten Punktes.
Vorgänger
axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat
Siehe auch
axis_angle_to_quat axis_angle_to_quat AxisAngleToQuat AxisAngleToQuat axis_angle_to_quat ,
quat_to_hom_mat3d quat_to_hom_mat3d QuatToHomMat3d QuatToHomMat3d quat_to_hom_mat3d ,
quat_compose quat_compose QuatCompose QuatCompose quat_compose ,
quat_normalize quat_normalize QuatNormalize QuatNormalize quat_normalize ,
quat_conjugate quat_conjugate QuatConjugate QuatConjugate quat_conjugate ,
quat_interpolate quat_interpolate QuatInterpolate QuatInterpolate quat_interpolate ,
dual_quat_trans_point_3d dual_quat_trans_point_3d DualQuatTransPoint3d DualQuatTransPoint3d dual_quat_trans_point_3d ,
dual_quat_trans_line_3d dual_quat_trans_line_3d DualQuatTransLine3d DualQuatTransLine3d dual_quat_trans_line_3d
Modul
Foundation