rtVTK  0.6.0
Classes | Enumerations | Functions
Math Namespace Reference

Collection functions and templates for mathematical operations. More...

Classes

class  Matrix
 Storage and manipulation of matrices. More...
class  Point
 Storage and manipulation of points. More...
class  Quaternion
 Mathematical structure for encoding three-dimensional rotation and orientation. More...
class  Vector
 Storage and manipulation of vectors. More...

Enumerations

enum  MatrixMode { RowMajor, ColumnMajor, numModes }

Functions

template<typename T >
Abs (const T &x)
template<typename T >
ATan (const T &x)
template<typename T >
Cos (const T &x)
template<typename T >
Exp (const T &x)
template<typename T >
Log (const T &x)
template<typename T >
Log2 (const T &x)
template<typename T >
Pow (const T &x, const T &y)
template<typename T >
Sin (const T &x)
template<typename T >
Sqrt (const T &x)
template<typename T >
Tan (const T &x)
template<>
float ATan (const float &x)
template<>
float Cos (const float &x)
template<>
float Exp (const float &x)
template<>
float Log (const float &x)
template<>
float Pow (const float &x, const float &y)
template<>
float Sin (const float &x)
template<>
float Sqrt (const float &x)
template<>
float Tan (const float &x)
template<typename T , uint Major, uint Minor, MatrixMode Mode>
ostream & operator<< (ostream &out, const Matrix< T, Major, Minor, Mode > &matrix)
template<typename T , uint Major, uint inner, uint Minor>
Matrix< T, Major, Minor, RowMajoroperator* (const Matrix< T, Major, inner, RowMajor > &lhs, const Matrix< T, inner, Minor, RowMajor > &rhs)
template<typename T , uint Major, uint inner, uint Minor>
Matrix< T, Major, Minor, RowMajoroperator* (const Matrix< T, Major, inner, RowMajor > &lhs, const Matrix< T, Minor, inner, ColumnMajor > &rhs)
template<typename T , uint Major, uint inner, uint Minor>
Matrix< T, Major, Minor,
ColumnMajor
operator* (const Matrix< T, inner, Minor, ColumnMajor > &lhs, const Matrix< T, inner, Major, RowMajor > &rhs)
template<typename T , uint Major, uint inner, uint Minor>
Matrix< T, Major, Minor,
ColumnMajor
operator* (const Matrix< T, inner, Minor, ColumnMajor > &lhs, const Matrix< T, Major, inner, ColumnMajor > &rhs)
template<typename T >
Point< T > operator* (const T &, const Point< T > &)
ostream & operator<< (ostream &out, const Quaternion &q)
template<typename T >
Vector< T > operator* (const T &, const Vector< T > &)
template<typename T >
Vector< T > operator/ (const T &, const Vector< T > &)
template<typename T >
Dot (const Vector< T > &, const Vector< T > &)
template<typename T >
Vector< T > Cross (const Vector< T > &, const Vector< T > &)

Detailed Description

Collection functions and templates for mathematical operations.

Todo:
TODO(cpg) - consider including shift operators only in RGB<int> might require a specialized RGB<int> class definition...)

Enumeration Type Documentation

Enumerator:
RowMajor 
ColumnMajor 
numModes 

Function Documentation

template<typename T >
T Math::Abs ( const T &  x) [inline]
template<typename T >
T Math::ATan ( const T &  x) [inline]
template<>
float Math::ATan ( const float &  x) [inline]
template<typename T >
T Math::Cos ( const T &  x) [inline]
template<>
float Math::Cos ( const float &  x) [inline]
template<typename T >
Vector< T > Math::Cross ( const Vector< T > &  v0,
const Vector< T > &  v1 
) [inline]
template<typename T >
T Math::Dot ( const Vector< T > &  v0,
const Vector< T > &  v1 
) [inline]
template<typename T >
T Math::Exp ( const T &  x) [inline]
template<>
float Math::Exp ( const float &  x) [inline]
template<typename T >
T Math::Log ( const T &  x) [inline]
template<>
float Math::Log ( const float &  x) [inline]
template<typename T >
T Math::Log2 ( const T &  x) [inline]
template<typename T >
Vector< T > Math::operator* ( const T &  s,
const Vector< T > &  v 
) [inline]

References Math::Vector< T >::e.

template<typename T >
Point< T > Math::operator* ( const T &  s,
const Point< T > &  v 
) [inline]

References Math::Point< T >::e.

template<typename T , uint Major, uint inner, uint Minor>
Matrix<T, Major, Minor, RowMajor> Math::operator* ( const Matrix< T, Major, inner, RowMajor > &  lhs,
const Matrix< T, inner, Minor, RowMajor > &  rhs 
)
template<typename T , uint Major, uint inner, uint Minor>
Matrix<T, Major, Minor, RowMajor> Math::operator* ( const Matrix< T, Major, inner, RowMajor > &  lhs,
const Matrix< T, Minor, inner, ColumnMajor > &  rhs 
)
template<typename T , uint Major, uint inner, uint Minor>
Matrix<T, Major, Minor, ColumnMajor> Math::operator* ( const Matrix< T, inner, Minor, ColumnMajor > &  lhs,
const Matrix< T, inner, Major, RowMajor > &  rhs 
)
template<typename T , uint Major, uint inner, uint Minor>
Matrix<T, Major, Minor, ColumnMajor> Math::operator* ( const Matrix< T, inner, Minor, ColumnMajor > &  lhs,
const Matrix< T, Major, inner, ColumnMajor > &  rhs 
)
template<typename T >
Vector< T > Math::operator/ ( const T &  s,
const Vector< T > &  v 
) [inline]

References Math::Vector< T >::e.

ostream& Math::operator<< ( ostream &  out,
const Quaternion &  q 
)

References Math::Quaternion::e.

template<typename T , uint Major, uint Minor, MatrixMode Mode>
ostream& Math::operator<< ( ostream &  out,
const Matrix< T, Major, Minor, Mode > &  matrix 
)

References RowMajor.

template<typename T >
T Math::Pow ( const T &  x,
const T &  y 
) [inline]
template<>
float Math::Pow ( const float &  x,
const float &  y 
) [inline]
template<typename T >
T Math::Sin ( const T &  x) [inline]
template<>
float Math::Sin ( const float &  x) [inline]
template<typename T >
T Math::Sqrt ( const T &  x) [inline]
template<>
float Math::Sqrt ( const float &  x) [inline]
template<typename T >
T Math::Tan ( const T &  x) [inline]
template<>
float Math::Tan ( const float &  x) [inline]
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends