Itasca C++ Interface
|
A Vector2 in 2D, a Vector3 in 3D. More...
#include <dim.h>
Public Member Functions | |
Vector () | |
Default constructor, no data initialization. | |
Vector (const Vector< T > &v) | |
Copy constructor. | |
Vector (const Vector3< T > &v) | |
Copy constructor. | |
Vector (const T &x, const T &y, const T &z) | |
From three. | |
Vector (const T &t) | |
Single component constructor. | |
Public Member Functions inherited from Vector3< T > | |
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. | |
Additional Inherited Members | |
Public Types inherited from Vector3< T > | |
using | CompType = T |
Static Public Attributes inherited from Vector3< T > | |
static constexpr uint32 | vdim = 3 |
Related Symbols inherited from Vector3< T > | |
typedef Vector3< double > | DVect3 |
typedef Vector3< float > | FVect3 |
typedef Vector3< int32 > | IVect3 |
typedef Vector3< uint32 > | UVect3 |
typedef Vector3< int64 > | I64Vect3 |
typedef Vector3< uint64 > | U64Vect3 |
template<class T > | |
constexpr DVect3 | toDVect3 (const Vector3< T > &v) |
template<class T > | |
constexpr FVect3 | toFVect3 (const Vector3< T > &v) |
template<class T > | |
constexpr IVect3 | toIVect3 (const Vector3< T > &v) |
template<class T > | |
constexpr U64Vect3 | toU64Vect3 (const Vector3< T > &v) |
template<class T > | |
constexpr Vector3< T > | vmax (const Vector3< T > &v1, const Vector3< T > &v2) |
template<class T > | |
constexpr Vector3< T > | vmin (const Vector3< T > &v1, const Vector3< T > &v2) |
template<class T > | |
constexpr Vector3< T > | vsign (const Vector3< T > &v1, const Vector3< T > &v2) |
template<class T > | |
Vector3< T > | vceil (const Vector3< T > &v) |
template<class T > | |
Vector3< T > | vfloor (const Vector3< T > &v) |
template<class T > | |
IVect3 constexpr | vround (const Vector3< T > &v) |