| Operatoren |
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:
/ 0 \ / Sx 0 0 \
HomMat3DScale = HomMat3D * | S 0 | S = | 0 Sy 0 |
| 0 | \ 0 0 Sz /
\ 0 0 0 1 /
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
/ ra rb rc td \
| re rf rg th |
| ri rj rk tl |
\ 0 0 0 1 /
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.
Eingabe-Transformationsmatrix.
Skalierungsfaktor in x-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sx != 0
Skalierungsfaktor in y-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sy != 0
Skalierungsfaktor in z-Richtung.
Defaultwert: 2
Wertevorschläge: 0.125, 0.25, 0.5, 1, 2, 4, 8, 112
Restriktion: Sz != 0
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
| Operatoren |