KlassenKlassenKlassenKlassen | | | | Operatoren

hom_mat3d_rotate_localT_hom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal (Operator)

Name

hom_mat3d_rotate_localT_hom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal — Fügt eine Rotation zu einer homogenen 3D-Transformationsmatrix hinzu.

Signatur

hom_mat3d_rotate_local( : : HomMat3D, Phi, Axis : HomMat3DRotate)

Herror T_hom_mat3d_rotate_local(const Htuple HomMat3D, const Htuple Phi, const Htuple Axis, Htuple* HomMat3DRotate)

Herror hom_mat3d_rotate_local(const HTuple& HomMat3D, const HTuple& Phi, const HTuple& Axis, HTuple* HomMat3DRotate)

void HomMat3dRotateLocal(const HTuple& HomMat3D, const HTuple& Phi, const HTuple& Axis, HTuple* HomMat3DRotate)

HHomMat3D HHomMat3D::HomMat3dRotateLocal(const HTuple& Phi, const HTuple& Axis) const

HHomMat3D HHomMat3D::HomMat3dRotateLocal(double Phi, const HString& Axis) const

HHomMat3D HHomMat3D::HomMat3dRotateLocal(double Phi, const char* Axis) const

void HOperatorSetX.HomMat3dRotateLocal(
[in] VARIANT HomMat3d, [in] VARIANT Phi, [in] VARIANT Axis, [out] VARIANT* HomMat3dRotate)

IHHomMat3DX* HHomMat3DX.HomMat3dRotateLocal(
[in] VARIANT Phi, [in] VARIANT Axis)

static void HOperatorSet.HomMat3dRotateLocal(HTuple homMat3D, HTuple phi, HTuple axis, out HTuple homMat3DRotate)

HHomMat3D HHomMat3D.HomMat3dRotateLocal(HTuple phi, HTuple axis)

HHomMat3D HHomMat3D.HomMat3dRotateLocal(double phi, string axis)

Beschreibung

hom_mat3d_rotate_localhom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal fügt zur homogenen 3D-Transformationsmatrix HomMat3DHomMat3DHomMat3DHomMat3DHomMat3DhomMat3D eine Rotation um den Winkel PhiPhiPhiPhiPhiphi um die im Parameter AxisAxisAxisAxisAxisaxis übergebene Achse hinzu. Die Achse kann dabei entweder durch die Strings 'x', 'y' oder 'z' oder als Vektor [x,y,z] in Form eines Tupels festgelegt werden.

Die Rotation wird beschrieben durch die 3×3 Rotationsmatrix R. Im Gegensatz zu hom_mat3d_rotatehom_mat3d_rotateHomMat3dRotatehom_mat3d_rotateHomMat3dRotateHomMat3dRotate wird sie relativ zum lokalen Koordinatensystem, das durch HomMat3DHomMat3DHomMat3DHomMat3DHomMat3DhomMat3D beschrieben ist, ausgeführt; dies entspricht der folgenden Kette von Transformationsmatrizen:

AxisAxisAxisAxisAxisaxis = 'x'"x""x""x""x""x":

AxisAxisAxisAxisAxisaxis = 'y'"y""y""y""y""y":

AxisAxisAxisAxisAxisaxis = 'z'"z""z""z""z""z":

AxisAxisAxisAxisAxisaxis = [x,y,z]:

Der Fixpunkt der Rotation ist der Ursprung des lokalen Koordinatensystems, d.h. dieser Punkt bleibt unverändert, wenn man ihn mit HomMat3DRotateHomMat3DRotateHomMat3DRotateHomMat3DRotateHomMat3DRotatehomMat3DRotate transformiert.

Achtung

Homogene Transformationsmatrizen werden zeilenweise in Form eines Tupels abgespeichert; die letzte Zeile wird im Normalfall nicht gespeichert, da sie für alle affinen Transformationsmatrizen identisch ist. Zum Beispiel wird die Matrix

als das Tupel [ra, rb, rc, td, re, rf, rg, th, ri, rj, rk, tl] gespeichert. Es ist aber auch möglich, volle 4×4 Matrizen, die eine projektive 3D-Transformation darstellen können, zu verarbeiten.

Parallelisierung

Parameter

HomMat3DHomMat3DHomMat3DHomMat3DHomMat3DhomMat3D (input_control)  hom_mat3d HHomMat3D, HTupleHTupleHTupleHHomMat3DX, VARIANTHtuple (real) (double) (double) (double) (double) (double)

Eingabe-Transformationsmatrix.

PhiPhiPhiPhiPhiphi (input_control)  angle.rad HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Rotationswinkel.

Defaultwert: 0.78

Wertevorschläge: 0.1, 0.2, 0.3, 0.4, 0.78, 1.57, 3.14

Typischer Wertebereich: 0 ≤ Phi Phi Phi Phi Phi phi ≤ 6.28318530718

AxisAxisAxisAxisAxisaxis (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong) (BSTR / double / Hlong) (char* / double / Hlong)

Achse, um die gedreht wird.

Defaultwert: 'x' "x" "x" "x" "x" "x"

Wertevorschläge: 'x'"x""x""x""x""x", 'y'"y""y""y""y""y", 'z'"z""z""z""z""z"

HomMat3DRotateHomMat3DRotateHomMat3DRotateHomMat3DRotateHomMat3DRotatehomMat3DRotate (output_control)  hom_mat3d HHomMat3D, HTupleHTupleHTupleHHomMat3DX, VARIANTHtuple (real) (double) (double) (double) (double) (double)

Ausgabe-Transformationsmatrix.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert hom_mat3d_rotate_localhom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

hom_mat3d_identityhom_mat3d_identityHomMat3dIdentityhom_mat3d_identityHomMat3dIdentityHomMat3dIdentity, hom_mat3d_translate_localhom_mat3d_translate_localHomMat3dTranslateLocalhom_mat3d_translate_localHomMat3dTranslateLocalHomMat3dTranslateLocal, hom_mat3d_scale_localhom_mat3d_scale_localHomMat3dScaleLocalhom_mat3d_scale_localHomMat3dScaleLocalHomMat3dScaleLocal, hom_mat3d_rotate_localhom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal

Nachfolger

hom_mat3d_translate_localhom_mat3d_translate_localHomMat3dTranslateLocalhom_mat3d_translate_localHomMat3dTranslateLocalHomMat3dTranslateLocal, hom_mat3d_scale_localhom_mat3d_scale_localHomMat3dScaleLocalhom_mat3d_scale_localHomMat3dScaleLocalHomMat3dScaleLocal, hom_mat3d_rotate_localhom_mat3d_rotate_localHomMat3dRotateLocalhom_mat3d_rotate_localHomMat3dRotateLocalHomMat3dRotateLocal

Siehe auch

hom_mat3d_inverthom_mat3d_invertHomMat3dInverthom_mat3d_invertHomMat3dInvertHomMat3dInvert, hom_mat3d_identityhom_mat3d_identityHomMat3dIdentityhom_mat3d_identityHomMat3dIdentityHomMat3dIdentity, hom_mat3d_rotatehom_mat3d_rotateHomMat3dRotatehom_mat3d_rotateHomMat3dRotateHomMat3dRotate, pose_to_hom_mat3dpose_to_hom_mat3dPoseToHomMat3dpose_to_hom_mat3dPoseToHomMat3dPoseToHomMat3d, hom_mat3d_to_posehom_mat3d_to_poseHomMat3dToPosehom_mat3d_to_poseHomMat3dToPoseHomMat3dToPose, hom_mat3d_composehom_mat3d_composeHomMat3dComposehom_mat3d_composeHomMat3dComposeHomMat3dCompose

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren