Generic 4D vector. More...
#include <jrl/mathtools/vector4.hh>
Public Member Functions | |
Vector4D () | |
Default constructor: all fields are set to zero. More... | |
Vector4D (const T &x, const T &y, const T &z, const T &w=1.) | |
Vector4D< T > | operator= (const Vector4D< T > &v) |
Assignement operator. More... | |
Vector4D< T > | operator= (const Vector3D< T > &v) |
Assignement operator from vector3d. More... | |
Vector4D< T > | operator- () |
Unary operator -. More... | |
T & | operator[] (unsigned i) |
Array operator. More... | |
const T & | operator[] (unsigned i) const |
Array operator. More... | |
T & | operator() (unsigned i) |
Array operator. More... | |
T | operator() (unsigned i) const |
Array operator. More... | |
bool | operator== (const Vector4D< T > &v) const |
Binary operator ==. More... | |
Vector4D< T > | operator+ (const Vector4D< T > &v) const |
Binary operator +. More... | |
Vector4D< T > | operator- (const Vector4D< T > &v) const |
Binary operator -. More... | |
void | operator+= (const Vector4D< T > &v) |
Binary operator +=. More... | |
void | operator-= (const Vector4D< T > &v) |
Binary operator -=. More... | |
Vector4D< T > | operator* (const T &t) const |
Binary operator *. More... | |
Vector4D< T > | operator/ (const T &t) const |
Binary operator /. More... | |
void | operator*= (const T &t) |
Binary operator *=. More... | |
void | operator/= (const T &t) |
Binary operator /=. More... | |
void | normalize () |
Normalize. More... | |
T | norm () const |
Get the norm. More... | |
T | normsquared () const |
Get the norm squared. More... | |
std::ostream & | display (std::ostream &os) const |
Public Attributes | |
T | m_x |
T | m_y |
T | m_z |
T | m_w |
Generic 4D vector.
|
inline |
Default constructor: all fields are set to zero.
|
inlineexplicit |
|
inline |
|
inline |
Get the norm.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Normalize.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Get the norm squared.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Array operator.
|
inline |
Array operator.
|
inline |
Binary operator *.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator *=.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator +.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator +=.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Unary operator -.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator -.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator -=.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator /.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Binary operator /=.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Assignement operator.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Assignement operator from vector3d.
Set last component to 1.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector3D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, jrlMathTools::Vector3D< T >::m_y, jrlMathTools::Vector4D< T >::m_z, and jrlMathTools::Vector3D< T >::m_z.
|
inline |
Binary operator ==.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Array operator.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
|
inline |
Array operator.
References jrlMathTools::Vector4D< T >::m_w, jrlMathTools::Vector4D< T >::m_x, jrlMathTools::Vector4D< T >::m_y, and jrlMathTools::Vector4D< T >::m_z.
T jrlMathTools::Vector4D< T >::m_w |
Referenced by jrlMathTools::Matrix4x4< T >::CeqthismulB(), jrlMathTools::Vector4D< T >::display(), jrlMathTools::Vector4D< T >::norm(), jrlMathTools::Vector4D< T >::normalize(), jrlMathTools::Vector4D< T >::normsquared(), jrlMathTools::Vector4D< T >::operator*(), jrlMathTools::Matrix4x4< T >::operator*(), jrlMathTools::Vector4D< T >::operator*=(), jrlMathTools::Vector4D< T >::operator+(), jrlMathTools::Vector4D< T >::operator+=(), jrlMathTools::Vector4D< T >::operator-(), jrlMathTools::Vector4D< T >::operator-=(), jrlMathTools::Vector4D< T >::operator/(), jrlMathTools::Vector4D< T >::operator/=(), jrlMathTools::Vector4D< T >::operator=(), jrlMathTools::Vector4D< T >::operator==(), and jrlMathTools::Vector4D< T >::operator[]().
T jrlMathTools::Vector4D< T >::m_x |
Referenced by jrlMathTools::Matrix4x4< T >::CeqthismulB(), jrlMathTools::Vector4D< T >::display(), jrlMathTools::Vector4D< T >::norm(), jrlMathTools::Vector4D< T >::normalize(), jrlMathTools::Vector4D< T >::normsquared(), jrlMathTools::Vector4D< T >::operator*(), jrlMathTools::Matrix4x4< T >::operator*(), jrlMathTools::Vector4D< T >::operator*=(), jrlMathTools::Vector4D< T >::operator+(), jrlMathTools::Vector4D< T >::operator+=(), jrlMathTools::Vector4D< T >::operator-(), jrlMathTools::Vector4D< T >::operator-=(), jrlMathTools::Vector4D< T >::operator/(), jrlMathTools::Vector4D< T >::operator/=(), jrlMathTools::Vector4D< T >::operator=(), jrlMathTools::Vector4D< T >::operator==(), and jrlMathTools::Vector4D< T >::operator[]().
T jrlMathTools::Vector4D< T >::m_y |
Referenced by jrlMathTools::Matrix4x4< T >::CeqthismulB(), jrlMathTools::Vector4D< T >::display(), jrlMathTools::Vector4D< T >::norm(), jrlMathTools::Vector4D< T >::normalize(), jrlMathTools::Vector4D< T >::normsquared(), jrlMathTools::Vector4D< T >::operator*(), jrlMathTools::Matrix4x4< T >::operator*(), jrlMathTools::Vector4D< T >::operator*=(), jrlMathTools::Vector4D< T >::operator+(), jrlMathTools::Vector4D< T >::operator+=(), jrlMathTools::Vector4D< T >::operator-(), jrlMathTools::Vector4D< T >::operator-=(), jrlMathTools::Vector4D< T >::operator/(), jrlMathTools::Vector4D< T >::operator/=(), jrlMathTools::Vector4D< T >::operator=(), jrlMathTools::Vector4D< T >::operator==(), and jrlMathTools::Vector4D< T >::operator[]().
T jrlMathTools::Vector4D< T >::m_z |
Referenced by jrlMathTools::Matrix4x4< T >::CeqthismulB(), jrlMathTools::Vector4D< T >::display(), jrlMathTools::Vector4D< T >::norm(), jrlMathTools::Vector4D< T >::normalize(), jrlMathTools::Vector4D< T >::normsquared(), jrlMathTools::Vector4D< T >::operator*(), jrlMathTools::Matrix4x4< T >::operator*(), jrlMathTools::Vector4D< T >::operator*=(), jrlMathTools::Vector4D< T >::operator+(), jrlMathTools::Vector4D< T >::operator+=(), jrlMathTools::Vector4D< T >::operator-(), jrlMathTools::Vector4D< T >::operator-=(), jrlMathTools::Vector4D< T >::operator/(), jrlMathTools::Vector4D< T >::operator/=(), jrlMathTools::Vector4D< T >::operator=(), jrlMathTools::Vector4D< T >::operator==(), and jrlMathTools::Vector4D< T >::operator[]().