|
| Vector3 () |
| Default constructor - no data initialization.
|
|
constexpr | Vector3 (const Vector3< T > &v) |
| Copy constructor.
|
|
constexpr | Vector3 (const T &x, const T &y, const T &z=0) |
| Explicit constructor, by the three components of the vector.
|
|
constexpr | Vector3 (const T &t) |
| Explicit constructor, all three components are inintialized to t.
|
|
constexpr const Vector3< T > & | operator= (const Vector3< T > &in) |
|
constexpr const T & | x () const |
| The x-component of the vector.
|
|
constexpr const T & | y () const |
| The y-component of the vector.
|
|
constexpr const T & | z () const |
| The z-component of the vector.
|
|
constexpr const T & | dof (unsigned u) const |
| The degree-of-freedom u (0-2) component.
|
|
T & | rx () |
| Reference access to the x-component of the vector.
|
|
T & | ry () |
| Reference access to the y-component of the vector.
|
|
T & | rz () |
| Reference access to the z-component of the vector.
|
|
T & | rdof (unsigned u) |
| Reference access to degree-of-freedom u (0-2) of the vector.
|
|
constexpr const T & | operator[] (unsigned u) const |
| Allows array like access to degrees-of-freedom.
|
|
T & | operator[] (unsigned u) |
| Allows array like access to degrees-of-freedom.
|
|
template<std::size_t N> |
constexpr T | get () const |
|
constexpr T | fsum () const |
| Manhattan norm.
|
|
constexpr T | sum () const |
| Sum of components.
|
|
constexpr T | mag2 () const |
| Square of the magnitude, or the vector dotted with itself.
|
|
constexpr T | mag () const |
| The vector magnitude.
|
|
constexpr T | volume () const |
| Volume of region represented by x*y*z - can be negative.
|
|
Vector3< T > | unit () const |
| Unit vector - be sure vector is nonzero.
|
|
constexpr Vector3< T > | abs () const |
| Returns vector of absolute values of components.
|
|
void | fill (const T &d) |
| Fills all three components with value d.
|
|
constexpr T | maxComp () const |
| Returns the maximum component.
|
|
constexpr T | minComp () const |
| Returns the minimum component.
|
|
constexpr unsigned | maxCompIndex () const |
| Returns the max component index.
|
|
constexpr unsigned | minCompIndex () const |
| Returns the min component index.
|
|
constexpr const Vector3< T > & | safeDivE (const Vector3< T > &v) |
| "Safe" division operation - checks for zero and overflow.
|
|
constexpr const Vector3< T > | safeDiv (const Vector3< T > &v) |
| "Safe" division operation - checks for zero and overflow.
|
|
constexpr bool | operator== (const Vector3< T > &v) const |
| Comparison operator - no tolerance is used.
|
|
constexpr bool | operator!= (const Vector3< T > &v) const |
| Comparison operator - no tolerance is used.
|
|
constexpr bool | operator< (const Vector3< T > &v) const |
| Comparison operator, compare each DOF in order.
|
|
constexpr bool | operator> (const Vector3< T > &v) const |
| Comparison operator, compare each DOF in order.
|
|
constexpr const Vector3< T > & | operator+= (const Vector3< T > &v) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr const Vector3< T > & | operator-= (const Vector3< T > &v) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr const Vector3< T > & | operator*= (const Vector3< T > &v) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr const Vector3< T > & | operator*= (const T &t) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr const Vector3< T > & | operator/= (const Vector3< T > &v) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr const Vector3< T > & | operator/= (const T &t) |
| In-place mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator+ (const Vector3< T > &v) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator- (const Vector3< T > &v) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator* (const Vector3< T > &v) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator* (const T &t) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator/ (const Vector3< T > &v) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator/ (const T &t) const |
| Binary mathematical operators – * and / are done on a component basis.
|
|
constexpr Vector3< T > | operator& (const Vector3< T > &v) const |
| Cross Product.
|
|
constexpr T | operator| (const Vector3< T > &v) const |
| Dot Product.
|
|
template<class T>
class Vector3< T >
3D vector utility class.