|
| Quaternion () |
| Default constructor (identity rotation) More...
|
|
template<class OtherRotation > |
| Quaternion (const OtherRotation &r) |
| Construct from another supported rotation type (see gv_detail::convert ) More...
|
|
template<class IT > |
| Quaternion (IT begin, IT end) |
| Construct given a pair of pointers or iterators defining the beginning and end of an array of four Scalars. More...
|
|
| Quaternion (Scalar u, Scalar i, Scalar j, Scalar k) |
| Construct from four Scalars representing the coefficients of u, i, j, k. More...
|
|
Scalar | Distance (const Quaternion &q) const |
| Distance between two rotations in Quaternion form Note: The rotation group is isomorphic to a 3-sphere with diametrically opposite points identified. More...
|
|
template<class IT > |
void | GetComponents (IT begin) const |
| Get the components into data specified by an iterator begin. More...
|
|
template<class IT > |
void | GetComponents (IT begin, IT end) const |
| Get the components into data specified by an iterator begin and another to the end of the desired data (4 past start). More...
|
|
void | GetComponents (Scalar &u, Scalar &i, Scalar &j, Scalar &k) const |
| Get the components into four Scalars. More...
|
|
Scalar | I () const |
|
Quaternion | Inverse () const |
| Return inverse of a rotation. More...
|
|
void | Invert () |
| Invert a rotation in place. More...
|
|
Scalar | J () const |
|
Scalar | K () const |
|
bool | operator!= (const Quaternion &rhs) const |
|
template<class CoordSystem , class Tag > |
DisplacementVector3D< CoordSystem, Tag > | operator() (const DisplacementVector3D< CoordSystem, Tag > &v) const |
| Rotation operation on a displacement vector in any coordinate system. More...
|
|
template<class ForeignVector > |
ForeignVector | operator() (const ForeignVector &v) const |
| Rotation operation on an arbitrary vector v. More...
|
|
template<class CoordSystem > |
LorentzVector< CoordSystem > | operator() (const LorentzVector< CoordSystem > &v) const |
| Rotation operation on a Lorentz vector in any 4D coordinate system. More...
|
|
template<class CoordSystem , class Tag > |
PositionVector3D< CoordSystem, Tag > | operator() (const PositionVector3D< CoordSystem, Tag > &p) const |
| Rotation operation on a position vector in any coordinate system. More...
|
|
XYZVector | operator() (const XYZVector &v) const |
|
template<class AVector > |
AVector | operator* (const AVector &v) const |
| Overload operator * for rotation on a vector. More...
|
|
Quaternion | operator* (const AxisAngle &a) const |
|
Quaternion | operator* (const EulerAngles &e) const |
|
Quaternion | operator* (const Quaternion &q) const |
| Multiply (combine) two rotations. More...
|
|
Quaternion | operator* (const Rotation3D &r) const |
|
Quaternion | operator* (const RotationX &rx) const |
|
Quaternion | operator* (const RotationY &ry) const |
|
Quaternion | operator* (const RotationZ &rz) const |
|
Quaternion | operator* (const RotationZYX &r) const |
|
template<class R > |
Quaternion & | operator*= (const R &r) |
| Post-Multiply (on right) by another rotation : T = T*R. More...
|
|
template<class OtherRotation > |
Quaternion & | operator= (OtherRotation const &r) |
| Assign from another supported rotation type (see gv_detail::convert ) More...
|
|
bool | operator== (const Quaternion &rhs) const |
| Equality/inequality operators. More...
|
|
void | Rectify () |
| Re-adjust components to eliminate small deviations from |Q| = 1 orthonormality. More...
|
|
template<class IT > |
void | SetComponents (IT begin, IT end) |
| Set the four components given an iterator to the start of the desired data, and another to the end (4 past start). More...
|
|
void | SetComponents (Scalar u, Scalar i, Scalar j, Scalar k) |
| Set the components based on four Scalars. More...
|
|
Scalar | U () const |
| Access to the four quaternion components: U() is the coefficient of the identity Pauli matrix, I(), J() and K() are the coefficients of sigma_x, sigma_y, sigma_z. More...
|
|