|
Free Electron
|
Special vector for concatenated Euler angles. More...
#include <Euler.h>

Public Member Functions | |
| Euler (T x, T y, T z) | |
| Euler (const Vector< 3, T > &other) | |
| Euler (const Euler< T > &other) | |
| Euler (const Quaternion< T > &quaternion) | |
| Euler (const Matrix< 3, 4, T > &matrix) | |
| Euler< T > & | operator= (const Euler< T > &euler) |
| Euler< T > & | operator= (const Quaternion< T > &quaternion) |
| Euler< T > & | operator= (const Matrix< 3, 4, T > &matrix) |
| operator Matrix< 3, 4, T > (void) const | |
Public Member Functions inherited from fe::Vector< 3, T > | |
| Vector (const Vector< N, T > &other) | |
| Vector (const Vector< N, U > &other) | |
| Vector (const Vector< N+1, U > &other) | |
| Vector (const Vector< N+2, U > &other) | |
| Vector (const Vector< N-1, U > &other) | |
| Vector (const Vector< N-2, U > &other) | |
| Vector (const T *array) | |
| Vector (T x, T y, T z, T w, T v, T u) | |
| Vector (T x, T y, T z, T w, T v) | |
| Vector (T x, T y, T z, T w) | |
| Vector (T x, T y, T z) | |
| Vector (T x, T y) | |
| Vector (T x) | |
| Vector (const Vector< 2, U > &other) | |
| const T & | operator[] (unsigned int index) const |
| T & | operator[] (unsigned int index) |
| T * | raw (void) |
| const T * | raw (void) const |
| const T * | temp (void) const |
| Vector< N, T > & | operator= (const T *array) |
| Vector< N, T > & | operator= (const Vector< N, T > &other) |
| Vector< N, T > & | operator= (const Vector< N, U > &other) |
| Vector< N, T > & | operator= (const Vector< N+1, T > &other) |
| Vector< N, T > & | operator= (const Vector< N+1, U > &other) |
| Vector< N, T > & | operator= (const Vector< N+2, U > &other) |
| Vector< N, T > & | operator= (const Vector< N-1, U > &other) |
| Vector< N, T > & | operator= (const Vector< N-2, U > &other) |
| bool | operator== (const Vector< N, T > &other) const |
| bool | operator!= (const Vector< N, T > &other) const |
Additional Inherited Members | |
Public Attributes inherited from fe::Vector< 3, T > | |
| T | m_data [N] |
Related Functions inherited from fe::Vector< 3, T > | |
| bool | operator== (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| equality test More... | |
| Vector< M, T > & | multiply (Vector< M, T > &b, const Matrix< M, N, T > &A, const Vector< N, U > &x) |
| Matrix Vector multiply. More... | |
| Vector< M, T > | multiply (const Matrix< M, N, T > &A, const Vector< N, U > &x) |
| Matrix Vector multiply. More... | |
| Vector< M, T > | transposeMultiply (const Matrix< M, N, T > &A, const Vector< N, T > &x) |
| Matrix Vector multiply with the matrix transposed. More... | |
| Vector< M, U > | operator* (const Matrix< M, N, T > &lhs, const Vector< N, U > &rhs) |
| Matrix Vector multiply. More... | |
| Vector< N, T > | operator* (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| Piecewise multiply operation. More... | |
| Vector< N, T > | operator* (const U lhs, const Vector< N, T > &rhs) |
| Scale operation. More... | |
| Vector< N, T > | operator* (const Vector< N, T > &lhs, const U &rhs) |
| Scale operation. More... | |
| Vector< 4, T > | operator* (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return a Vector of products of each component. More... | |
| boost::enable_if< boost::is_arithmetic< U >, Vector< 4, T > >::type | operator* (const U lhs, const Vector< 4, T > &rhs) |
| Return a uniformly scale Vector (pre) More... | |
| boost::enable_if< boost::is_arithmetic< U >, Vector< 4, T > >::type | operator* (const Vector< 4, T > &lhs, const U rhs) |
| Return a uniformly scale Vector (post) More... | |
| Vector< FE_VDIM, F32 > | operator* (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a Vector of products of each component. More... | |
| boost::enable_if< boost::is_arithmetic< T >, Vector< FE_VDIM, F32 > >::type | operator* (const T lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a uniformly scaled Vector (pre) More... | |
| boost::enable_if< boost::is_arithmetic< T >, Vector< FE_VDIM, F32 > >::type | operator* (const Vector< FE_VDIM, F32 > &lhs, const T rhs) |
| Return a uniformly scaled Vector (post) More... | |
| bool | equivalent (const Matrix< 3, 4, T > &lhs, const Matrix< 3, 4, T > &rhs, U margin) |
| Equivalence test within the given tolerance margin. More... | |
| bool | equivalent (const Vector< N, T > &lhs, const Vector< N, T > &rhs, U margin) |
| Equivalence test within the given tolerance margin. More... | |
| Vector< N, T > & | set (Vector< N, T > &lhs) |
| Set all the elements to zero. More... | |
| Vector< 4, T > & | set (Vector< 4, T > &r) |
| Set components. More... | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x) |
| Set components. More... | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y) |
| Set components. More... | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y, W z) |
| Set components. More... | |
| Vector< 4, T > & | set (Vector< 4, T > &r, U x, V y, W z, X w) |
| Set components. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r) |
| Set components. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x) |
| Set components. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y) |
| Set components. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y, V z) |
| Set components. More... | |
| Vector< FE_VDIM, F32 > & | set (Vector< FE_VDIM, F32 > &r, T x, U y, V z, W w) |
| Set components. More... | |
| Vector< N, T > & | setAll (Vector< N, T > &lhs, const U value) |
| Set all the elements to the given value. More... | |
| Vector< FE_VDIM, F32 > & | setAll (Vector< FE_VDIM, F32 > &lhs, T value) |
| Set all components to the same value. More... | |
| Vector< N, T > & | setAt (Vector< N, T > &lhs, U32 index, const U value) |
| Set the value at the index. More... | |
| Vector< 4, T > & | setAt (Vector< 4, T > &lhs, U32 index, U value) |
| Set indexed component. More... | |
| Vector< FE_VDIM, F32 > & | setAt (Vector< FE_VDIM, F32 > &lhs, U32 index, T value) |
| Set indexed component. More... | |
| U32 | size (const Vector< N, T > &lhs) |
| Return the number of elements. More... | |
| U32 | size (const Vector< 4, T > &lhs) |
| Return the number of elements. More... | |
| U32 | size (const Vector< FE_VDIM, F32 > &lhs) |
| Return the number of elements. More... | |
| Vector< N, T > & | operator+= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place add operator. More... | |
| Vector< N, T > & | operator+= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place add operator. More... | |
| Vector< 4, T > & | operator+= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Add to Vector in place. More... | |
| Vector< FE_VDIM, F32 > & | operator+= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Add to Vector in place. More... | |
| Vector< N, T > & | operator-= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place subtract operator. More... | |
| Vector< N, T > & | operator-= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place subtract operator. More... | |
| Vector< 4, T > & | operator-= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Subtract from Vector in place. More... | |
| Vector< FE_VDIM, F32 > & | operator-= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Subtract from Vector in place. More... | |
| Vector< N, T > | operator- (const Vector< N, T > &rhs) |
| Negate operation. More... | |
| Vector< N, T > | operator- (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| subtract operation More... | |
| Vector< N, T > | operator- (const Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| subtract operation More... | |
| Vector< 4, T > | operator- (const Vector< 4, T > &rhs) |
| Negate the Vector. More... | |
| Vector< 4, T > | operator- (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return difference of Vectors. More... | |
| Vector< FE_VDIM, F32 > | operator- (const Vector< FE_VDIM, F32 > &rhs) |
| Negate the Vector. More... | |
| Vector< FE_VDIM, F32 > | operator- (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return difference of Vectors. More... | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| In place piecewise multiply operator. More... | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| In place piecewise multiply operator. More... | |
| Vector< N, T > & | operator*= (Vector< N, T > &lhs, U scale) |
| In place piecewise scale operator. More... | |
| Vector< 4, T > & | operator*= (Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Independently scale components in place. More... | |
| Vector< 4, T > & | operator*= (Vector< 4, T > &lhs, U scale) |
| Uniformly scale components in place. More... | |
| Vector< FE_VDIM, F32 > & | operator*= (Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Independently scale components in place. More... | |
| Vector< FE_VDIM, F32 > & | operator*= (Vector< FE_VDIM, F32 > &lhs, T rhs) |
| Uniformly scale components in place. More... | |
| T | dot (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| Dot (inner) product. More... | |
| T | dot (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return dot product. More... | |
| F32 | dot (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return dot product. More... | |
| T | magnitude (const Vector< N, T > &rhs) |
| Frobenius norm operation. More... | |
| T | magnitude (const Vector< 4, T > &rhs) |
| Return the Vector length. More... | |
| F32 | magnitude (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector length. More... | |
| T | magnitudeSquared (const Vector< N, T > &rhs) |
| Square of the length. More... | |
| T | magnitudeSquared (const Vector< 4, T > &rhs) |
| Return square of the Vector length. More... | |
| F32 | magnitudeSquared (const Vector< FE_VDIM, F32 > &rhs) |
| Return square of the Vector length. More... | |
| Vector< N, T > | unit (const Vector< N, T > &vec) |
| Return vector scaled to unit length. More... | |
| Vector< 4, T > | unit (const Vector< 4, T > &vector) |
| Return the Vector direction scaled to unit length. More... | |
| Vector< FE_VDIM, F32 > | unit (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector direction scaled to unit length. More... | |
| Vector< N, T > | unitSafe (const Vector< N, T > &vec) |
| Return vector scaled to unit length with zero check. More... | |
| Vector< 4, T > | unitSafe (const Vector< 4, T > &vector) |
| Return the Vector direction scaled to unit length with zero check. More... | |
| Vector< FE_VDIM, F32 > | unitSafe (const Vector< FE_VDIM, F32 > &rhs) |
| Return the Vector direction scaled to unit length with zero check. More... | |
| Vector< N, T > & | normalize (Vector< N, T > &vec) |
| In place normalize operator. More... | |
| Vector< 4, T > & | normalize (Vector< 4, T > &vector) |
| Scale Vector to unit length. More... | |
| Vector< FE_VDIM, F32 > & | normalize (Vector< FE_VDIM, F32 > &rhs) |
| Scale Vector to unit length. More... | |
| Vector< N, T > & | normalizeSafe (Vector< N, T > &vec) |
| In place normalize operator with zero length check. More... | |
| Vector< 4, T > & | normalizeSafe (Vector< 4, T > &vector) |
| Scale Vector to unit length with zero check. More... | |
| Vector< FE_VDIM, F32 > & | normalizeSafe (Vector< FE_VDIM, F32 > &rhs) |
| Scale Vector to unit length. More... | |
| String | print (const Vector< N, T > &vec) |
| Print to a string. More... | |
| String | print (const Vector< 4, T > &vector) |
| Return text describing the Vector's state. More... | |
| String | print (const Vector< FE_VDIM, F32 > &rhs) |
| Return text describing the Vector's state. More... | |
| Vector< N, T > | operator+ (const Vector< N, T > &lhs, const Vector< N, T > &rhs) |
| add operation More... | |
| Vector< N, T > | operator+ (const Vector< N, T > &lhs, const Vector< M, T > &rhs) |
| add operation More... | |
| Vector< 4, T > | operator+ (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return sum of Vectors. More... | |
| Vector< FE_VDIM, F32 > | operator+ (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return sum of Vectors. More... | |
| Vector< N, T > | operator/ (const Vector< N, T > &lhs, const U &rhs) |
| Inverse Scale operation. More... | |
| Vector< N, T > & | addScaled (Vector< N, T > &lhs, U scalar, const Vector< N, T > &rhs) |
| Add with scaling. More... | |
| Vector< N, T > & | scaleAndAdd (Vector< N, T > &lhs, U scalar, const Vector< N, T > &rhs) |
| Scale then add. More... | |
| Vector< 4, T > & | cross3 (Vector< 4, T > &r, const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Return a cross product of Vectors. More... | |
| Vector< 4, T > | cross3 (const Vector< 4, T > &lhs, const Vector< 4, T > &rhs) |
| Set the Vector as a cross product of Vectors. More... | |
| Vector< FE_VDIM, F32 > & | cross3 (Vector< FE_VDIM, F32 > &r, const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Return a cross product of Vectors. More... | |
| Vector< FE_VDIM, F32 > | cross3 (const Vector< FE_VDIM, F32 > &lhs, const Vector< FE_VDIM, F32 > &rhs) |
| Set the Vector as a cross product of Vectors. More... | |
Special vector for concatenated Euler angles.
This represents a multiplication of three rotation matrices, about X, Y, and Z, in that order.
These are raw post-multiplication steps, not the pre-multiplication concatenation convention like Matrix::rotate, so the conversion to matrix rotates in the reverse order (rotate Z, rotate Y, then rotate X).
In a X-forward Z-up world this maps into a transformation of heading CCW, pitch down, and then bank right.
1.8.13