hom_mat3d_scale_local
— Fügt eine Skalierung zu einer homogenen 3D-Transformationsmatrix hinzu.
hom_mat3d_scale_local( : : HomMat3D, Sx, Sy, Sz : HomMat3DScale)
hom_mat3d_scale_local
fügt zur homogenen 3D-Transformationsmatrix
HomMat3D
eine Skalierung um die Skalierungsfaktoren Sx
,
Sy
und Sz
hinzu und liefert die resultierende Matrix in
HomMat3DScale
zurück. Die Skalierung wird beschrieben durch die
3×3 Skalierungsmatrix S. Im
Gegensatz zu hom_mat3d_scale
wird sie relativ zum lokalen
Koordinatensystem, das durch HomMat3D
beschrieben ist, ausgeführt;
dies entspricht der folgenden Kette von Transformationsmatrizen:
Der Fixpunkt der Skalierung ist der Ursprung des lokalen
Koordinatensystems, d.h. dieser Punkt bleibt unverändert, wenn man
ihn mit HomMat3DScale
transformiert.
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.
HomMat3D
(input_control) hom_mat3d →
(real)
Eingabe-Transformationsmatrix.
Sx
(input_control) number →
(real / integer)
Skalierungsfaktor in x-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sx != 0
Sy
(input_control) number →
(real / integer)
Skalierungsfaktor in y-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sy != 0
Sz
(input_control) number →
(real / integer)
Skalierungsfaktor in z-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sz != 0
HomMat3DScale
(output_control) hom_mat3d →
(real)
Ausgabe-Transformationsmatrix.
hom_mat3d_scale_local
liefert den Wert 2 (H_MSG_TRUE), falls alle drei
Skalierungsfaktoren verschieden von 0 sind. Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
hom_mat3d_identity
,
hom_mat3d_translate_local
,
hom_mat3d_scale_local
,
hom_mat3d_rotate_local
hom_mat3d_translate_local
,
hom_mat3d_scale_local
,
hom_mat3d_rotate_local
hom_mat3d_invert
,
hom_mat3d_identity
,
hom_mat3d_scale
,
pose_to_hom_mat3d
,
hom_mat3d_to_pose
,
hom_mat3d_compose
Foundation