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