KlassenKlassenKlassenKlassen | | | | Operatoren

quat_rotate_point_3dT_quat_rotate_point_3dQuatRotatePoint3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3d (Operator)

Name

quat_rotate_point_3dT_quat_rotate_point_3dQuatRotatePoint3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3d — Rotation eines Punktes mit einer Einheitsquaternion.

Signatur

quat_rotate_point_3d( : : Quaternion, Px, Py, Pz : Qx, Qy, Qz)

Herror T_quat_rotate_point_3d(const Htuple Quaternion, const Htuple Px, const Htuple Py, const Htuple Pz, Htuple* Qx, Htuple* Qy, Htuple* Qz)

Herror quat_rotate_point_3d(const HTuple& Quaternion, const HTuple& Px, const HTuple& Py, const HTuple& Pz, double* Qx, double* Qy, double* 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

void HOperatorSetX.QuatRotatePoint3d(
[in] VARIANT Quaternion, [in] VARIANT Px, [in] VARIANT Py, [in] VARIANT Pz, [out] VARIANT* Qx, [out] VARIANT* Qy, [out] VARIANT* Qz)

double HQuaternionX.QuatRotatePoint3d(
[in] double Px, [in] double Py, [in] double Pz, [out] double* Qy, [out] double* Qz)

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)

Beschreibung

Der Operator quat_rotate_point_3dquat_rotate_point_3dQuatRotatePoint3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3d rotiert den Punkt (PxPxPxPxPxpx, PyPyPyPyPypy, PzPzPzPzPzpz) mit der Rotationsquaternion QuaternionQuaternionQuaternionQuaternionQuaternionquaternion (z.B. erzeugt durch axis_angle_to_quataxis_angle_to_quatAxisAngleToQuataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuat). Der rotierte Punkt wird als (QxQxQxQxQxqx, QyQyQyQyQyqy, QzQzQzQzQzqz) zurückgegeben.

Die Rotation eines Punktes x durch eine Einheitsquaternion q ist definiert durch

entspricht der Konjugation von q (siehe quat_conjugatequat_conjugateQuatConjugatequat_conjugateQuatConjugateQuatConjugate). 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_3dquat_rotate_point_3dQuatRotatePoint3dquat_rotate_point_3dQuatRotatePoint3dQuatRotatePoint3d überprüft nicht, ob QuaternionQuaternionQuaternionQuaternionQuaternionquaternion eine Einheitsquaternion ist. Falls QuaternionQuaternionQuaternionQuaternionQuaternionquaternion keine Einheitsquaternion ist, ist das Ergebnis dieses Operators nicht definiert.

Parallelisierung

Parameter

QuaternionQuaternionQuaternionQuaternionQuaternionquaternion (input_control)  quaternion HQuaternion, HTupleHTupleHTupleHQuaternionX, VARIANTHtuple (real) (double) (double) (double) (double) (double)

Rotationsquaternion.

PxPxPxPxPxpx (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

X-Koordinate des zu drehenden Punktes.

PyPyPyPyPypy (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Y-Koordinate des zu drehenden Punktes.

PzPzPzPzPzpz (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Z-Koordinate des zu drehenden Punktes.

QxQxQxQxQxqx (output_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

X-Koordinate des gedrehten Punktes.

QyQyQyQyQyqy (output_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Y-Koordinate des gedrehten Punktes.

QzQzQzQzQzqz (output_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Z-Koordinate des gedrehten Punktes.

Vorgänger

axis_angle_to_quataxis_angle_to_quatAxisAngleToQuataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuat

Siehe auch

axis_angle_to_quataxis_angle_to_quatAxisAngleToQuataxis_angle_to_quatAxisAngleToQuatAxisAngleToQuat, quat_to_hom_mat3dquat_to_hom_mat3dQuatToHomMat3dquat_to_hom_mat3dQuatToHomMat3dQuatToHomMat3d, quat_composequat_composeQuatComposequat_composeQuatComposeQuatCompose, quat_normalizequat_normalizeQuatNormalizequat_normalizeQuatNormalizeQuatNormalize, quat_conjugatequat_conjugateQuatConjugatequat_conjugateQuatConjugateQuatConjugate, quat_interpolatequat_interpolateQuatInterpolatequat_interpolateQuatInterpolateQuatInterpolate, dual_quat_trans_line_3ddual_quat_trans_line_3dDualQuatTransLine3ddual_quat_trans_line_3dDualQuatTransLine3dDualQuatTransLine3d

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren