as_dual_quat#
- RigidTransform.as_dual_quat(self, *, scalar_first=False)#
Gibt die Dualquaternionen-Darstellung der Transformation zurück.
Einheits-Dualquaternionen kodieren die Orientierung in einem realen Einheitsquaternion und die Translation in einem Dualquaternion. Es gibt eine doppelte Abdeckung, d.h. die Einheits-Dualquaternionen q und -q repräsentieren die gleiche Transformation.
- Parameter:
- scalar_firstbool, optional
Gibt an, ob die Skalar-Komponente in den beiden einzelnen Quaternionen, die den realen und den dualen Teil repräsentieren, zuerst oder zuletzt steht. Standard ist False, d.h. die Skalar-zuletzt-Reihenfolge wird verwendet.
- Rückgabe:
- dual_quatnumpy.ndarray, shape (N, 8) or (8,)
Ein einzelner Einheits-Dualquaternionen-Vektor oder ein Stapel von Einheits-Dualquaternionen-Vektoren. Der reale Teil wird in den ersten vier Komponenten und der duale Teil in den letzten vier Komponenten gespeichert.
Beispiele
>>> from scipy.spatial.transform import RigidTransform as Tf >>> import numpy as np
Erhalte die Identitäts-Dualquaternionen (wir verwenden standardmäßig Skalar-zuletzt)
>>> Tf.identity().as_dual_quat() array([0., 0., 0., 1., 0., 0., 0., 0.])
Wenn wir die Skalar-zuerst-Konvention verwenden möchten, verwenden wir das Argument
>>> Tf.identity().as_dual_quat(scalar_first=True) array([1., 0., 0., 0., 0., 0., 0., 0.])