iaux::iaMatrix2D< T > Class Template Reference

#include <iaMatrix2D.h>

Public Member Functions

void operator+= (iaMatrix2D &a)
 
void operator-= (iaMatrix2D &a)
 
bool operator== (const iaMatrix2D< T > &a) const
 
bool operator!= (const iaMatrix2D< T > &a) const
 
iaVector2< T > operator* (iaVector2< T > &a)
 
iaVector3< T > operator* (iaVector3< T > &a)
 
iaMatrix2D operator* (iaMatrix2D &m)
 
void operator*= (iaMatrix2D &m)
 
T & operator[] (const int i)
 
void identity ()
 
determinant ()
 
void transpose ()
 
void translate (const iaVector2< T > &a)
 
void translate (T x, T y)
 
void scale (iaVector2< T > &s)
 
void scale (T x, T y)
 
void rotate (T angle)
 
const T * getData () const
 
T * getData ()
 
void setData (T *data)
 
template<class T2 >
iaMatrix2D< T2 > convert ()
 
 iaMatrix2D ()
 
 ~iaMatrix2D ()
 
template<class T2 >
iaMatrix2D< T2 > convert ()
 

Public Attributes

_m [9]
 

Detailed Description

template<class T>
class iaux::iaMatrix2D< T >

3x3 Matrix

Constructor & Destructor Documentation

◆ iaMatrix2D()

template<class T >
IGOR_INLINE iaMatrix2D::iaMatrix2D ( )

initializes the matrix with the id matrix

◆ ~iaMatrix2D()

template<class T >
IGOR_INLINE iaMatrix2D::~iaMatrix2D ( )

does nothing

Member Function Documentation

◆ convert() [1/2]

template<class T >
template<class T2 >
iaMatrix2D< T2 > iaux::iaMatrix2D< T >::convert ( )

converts the vector in to given type of vector

Returns
matrix for given type

◆ convert() [2/2]

template<class T >
template<class T2 >
iaMatrix2D< T2 > iaux::iaMatrix2D< T >::convert ( )

◆ determinant()

template<class T >
IGOR_INLINE T iaMatrix2D::determinant ( )

returns the determinant of the 3x3 part of the matrix

◆ getData() [1/2]

template<class T >
IGOR_INLINE T * iaMatrix2D::getData ( )

returns pointer to the data

◆ getData() [2/2]

template<class T >
IGOR_INLINE const T * iaMatrix2D::getData ( ) const

returns pointer to the data

◆ identity()

template<class T >
IGOR_INLINE void iaMatrix2D::identity ( )

initializes matrix with id matrix

◆ operator!=()

template<class T >
IGOR_INLINE bool iaMatrix2D::operator!= ( const iaMatrix2D< T > &  a) const

negated comparison of two matrices

Parameters
athe second matrix to compare this matrix with
Returns
true if matrices are not equal

◆ operator*() [1/3]

template<class T >
iaMatrix2D iaux::iaMatrix2D< T >::operator* ( iaMatrix2D< T > &  m)

matrix multiplication

◆ operator*() [2/3]

template<class T >
iaVector2< T > iaux::iaMatrix2D< T >::operator* ( iaVector2< T > &  a)

matrix vector2 multiplication

◆ operator*() [3/3]

template<class T >
IGOR_INLINE iaVector3< T > iaMatrix2D::operator* ( iaVector3< T > &  a)

matrix vector3 multiplication

◆ operator*=()

template<class T >
IGOR_INLINE void iaMatrix2D::operator*= ( iaMatrix2D< T > &  m)

matrix multiplication

◆ operator+=()

template<class T >
IGOR_INLINE void iaMatrix2D::operator+= ( iaMatrix2D< T > &  a)

addition

◆ operator-=()

template<class T >
IGOR_INLINE void iaMatrix2D::operator-= ( iaMatrix2D< T > &  a)

subtraction

◆ operator==()

template<class T >
IGOR_INLINE bool iaMatrix2D::operator== ( const iaMatrix2D< T > &  a) const

comparison of two matrices

Parameters
athe second matrix to compare this matrix with
Returns
true if matrices are equal

◆ operator[]()

template<class T >
IGOR_INLINE T & iaMatrix2D::operator[] ( const int  i)

matrix component by index

Parameters
ionly indexes from 0 to 8 are allowed

◆ rotate()

template<class T >
IGOR_INLINE void iaMatrix2D::rotate ( angle)

rotates the matrix

Parameters
angleangle to rotate in radians

◆ scale() [1/2]

template<class T >
IGOR_INLINE void iaMatrix2D::scale ( iaVector2< T > &  s)

scale matrix by vector

Parameters
sscale vector

◆ scale() [2/2]

template<class T >
IGOR_INLINE void iaMatrix2D::scale ( x,
y 
)

scale matrix by vector

Parameters
xx component of vector
yy component of vector

◆ setData()

template<class T >
IGOR_INLINE void iaMatrix2D::setData ( T *  data)

set data

◆ translate() [1/2]

template<class T >
void iaux::iaMatrix2D< T >::translate ( const iaVector2< T > &  a)

translate the matrix by vector dd

Parameters
atranslation vector

◆ translate() [2/2]

template<class T >
IGOR_INLINE void iaMatrix2D::translate ( x,
y 
)

translate the matrix by vector 2d

Parameters
xx component
yy component

◆ transpose()

template<class T >
IGOR_INLINE void iaMatrix2D::transpose ( )

calculates the inverse of the matrix and overwrites the original value

Member Data Documentation

◆ _m

template<class T >
T iaux::iaMatrix2D< T >::_m[9]

internal data


The documentation for this class was generated from the following files: