Methods
Quaternion repräsentiert ein Einheitsquaternion, das zur Kodierung von 3D-Rotationen verwendet wird. Im Gegensatz zu Euler-Winkeln vermeiden Quaternionen Gimbal-Lock und interpolieren glatt. Das Transform.rotation Eigenschaft auf einem Szenenknoten speichert ein Quaternion.
Die Komponenten werden als (w, x, y, z) wobei w ist der skalare Teil und (x, y, z) bilden den Vektoranteil.
Methods: aspose.threed.utilities
Methods
| Methods | Methods |
|---|
Quaternion() | Identitätsquaternion (w=1, x=0, y=0, z=0) |
Quaternion(w, x, y, z) | Expliziter Komponenten‑Konstruktor |
Methods
| Methods | Methods | Methods |
|---|
w | float | Skalar (reeller) Teil |
x | float | Vektor x‑Komponente |
y | float | Vektor y‑Komponente |
z | float | Vektor Z-Komponente |
length | float | Betrag des Quaternion |
Statische Fabrikmethoden
| Methods | Rückgabetyp | Methods |
|---|
Quaternion.from_euler_angle(pitch, yaw, roll) | Quaternion | Konstruiert aus Euler-Winkeln im Bogenmaß (Pitch=X, Yaw=Y, Roll=Z). Akzeptiert außerdem ein Vector3 als erstes Argument |
Quaternion.from_angle_axis(angle, axis) | Quaternion | Konstruiert aus einem Winkel (Bogenmaß) und einem Vector3 Achse |
Quaternion.from_rotation(orig, dest) | Quaternion | Kürzeste Bogenrotation von Richtung orig zu Richtung dest |
Quaternion.interpolate(t, from_q, to_q) | Quaternion | SLERP-Interpolation; t in [0, 1] |
Quaternion.slerp(t, v1, v2) | Quaternion | Alias für interpolate |
Instanzmethoden
| Methods | Rückgabetyp | Methods |
|---|
normalize() | Quaternion | Gibt eine Kopie mit Einheitslänge zurück |
conjugate() | Quaternion | Gibt das Konjugierte zurück (w, -x, -y, -z) |
inverse() | Quaternion | Gibt das multiplikative Inverse zurück; wirft ValueError wenn die Länge null ist |
dot(q) | float | Skalarprodukt mit einem anderen Quaternion |
concat(rhs) | Quaternion | Hamilton-Produkt (Komposition zweier Rotationen) |
euler_angles() | Vector3 | Extrahiert Euler‑Winkel (Bogenmaß) als Vector3(roll, pitch, yaw) |
to_matrix(translation=None) | Matrix4 | Konvertiert in eine 4×4‑Rotationsmatrix; bettet optional eine Translation ein Vector3 |
to_angle_axis(angle, axis) | None | Zerlegt in Winkel (Bogenmaß) und Achse; Ergebnisse werden in ein‑elementige Listen geschrieben angle[0] und axis[0] |
Methods
Siehe auch