jrlMathTools::Vector3D< T > Struct Template Reference

Template to handle 3 dimensional vector. More...

List of all members.

Public Member Functions

 Vector3D ()
 Vector3D (const T x, const T y, const T z)
Vector3D< T > operator= (const struct Vector3D< T > &v)
Vector3D< T > operator- () const
T & operator[] (unsigned i)
operator[] (unsigned i) const
T & operator() (unsigned i)
bool operator== (const struct Vector3D< T > &v) const
Vector3D< T > operator+ (const struct Vector3D< T > &v) const
Vector3D< T > operator- (const struct Vector3D< T > &v) const
void operator+= (const struct Vector3D< T > &v)
void operator-= (const struct Vector3D< T > &v)
Vector3D< T > operator* (const T &t) const
operator* (const Vector3D< T > &v) const
Vector3D< T > operator/ (const T &t) const
void operator*= (const T &t)
void operator/= (const T &t)
void normalize ()
norm () const
bool IsZero () const
normsquared () const
struct Vector3D< T > operator^ (const struct Vector3D< T > &v2) const

Public Attributes

m_x
m_y
m_z

Friends

std::ostream & operator<< (std::ostream &os, Vector3D< T > const &v)

Detailed Description

template<typename T>
struct jrlMathTools::Vector3D< T >

Template to handle 3 dimensional vector.


Constructor & Destructor Documentation

template<typename T >
jrlMathTools::Vector3D< T >::Vector3D (  )  [inline]

Basic constructor: all the field are set to zero.

template<typename T >
jrlMathTools::Vector3D< T >::Vector3D ( const T  x,
const T  y,
const T  z 
) [inline]

Member Function Documentation

template<typename T >
bool jrlMathTools::Vector3D< T >::IsZero (  )  const [inline]
template<typename T >
T jrlMathTools::Vector3D< T >::norm (  )  const [inline]

Get the norm.

template<typename T >
void jrlMathTools::Vector3D< T >::normalize (  )  [inline]

Normalize .

template<typename T >
T jrlMathTools::Vector3D< T >::normsquared (  )  const [inline]

Get the norm squared

template<typename T >
T& jrlMathTools::Vector3D< T >::operator() ( unsigned  i  )  [inline]

Array operator

template<typename T >
T jrlMathTools::Vector3D< T >::operator* ( const Vector3D< T > &  v  )  const [inline]

Binary operator * : dot product

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator* ( const T &  t  )  const [inline]

Binary operator *

template<typename T >
void jrlMathTools::Vector3D< T >::operator*= ( const T &  t  )  [inline]

Binary operator *=

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator+ ( const struct Vector3D< T > &  v  )  const [inline]

Binary operator +

template<typename T >
void jrlMathTools::Vector3D< T >::operator+= ( const struct Vector3D< T > &  v  )  [inline]

Binary operator +=

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator- ( const struct Vector3D< T > &  v  )  const [inline]

Binary operator -

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator- (  )  const [inline]

Unary operator -

template<typename T >
void jrlMathTools::Vector3D< T >::operator-= ( const struct Vector3D< T > &  v  )  [inline]

Binary operator -=

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator/ ( const T &  t  )  const [inline]

Binary operator /

template<typename T >
void jrlMathTools::Vector3D< T >::operator/= ( const T &  t  )  [inline]

Binary operator /=

template<typename T >
Vector3D<T> jrlMathTools::Vector3D< T >::operator= ( const struct Vector3D< T > &  v  )  [inline]

Assignement operator

template<typename T >
bool jrlMathTools::Vector3D< T >::operator== ( const struct Vector3D< T > &  v  )  const [inline]

Binary operator ==

template<typename T >
T jrlMathTools::Vector3D< T >::operator[] ( unsigned  i  )  const [inline]

Array operator

template<typename T >
T& jrlMathTools::Vector3D< T >::operator[] ( unsigned  i  )  [inline]

Array operator

template<typename T >
struct Vector3D< T > jrlMathTools::Vector3D< T >::operator^ ( const struct Vector3D< T > &  v2  )  const [inline, read]

Cross product


Friends And Related Function Documentation

template<typename T >
std::ostream& operator<< ( std::ostream &  os,
Vector3D< T > const &  v 
) [friend]

Member Data Documentation

template<typename T >
T jrlMathTools::Vector3D< T >::m_x
template<typename T >
T jrlMathTools::Vector3D< T >::m_y
template<typename T >
T jrlMathTools::Vector3D< T >::m_z




jrlMathTools library documentation