Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::Matrix< T, NRows, NColumns > Class Template Reference
[Data Representation Objects]

#include <itkMatrix.h>

List of all members.


Detailed Description

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
class itk::Matrix< T, NRows, NColumns >

A templated class holding a M x N size Matrix This class contains a vnl_matrix_fixed in order to make all the vnl mathematical methods available.

Definition at line 42 of file itkMatrix.h.

Public Types

typedef T ComponentType
typedef vnl_matrix_fixed<
T, NRows, NColumns > 
InternalMatrixType
typedef Matrix Self
typedef T ValueType

Public Member Functions

void Fill (const T &value)
vnl_matrix_fixed< T, NColumns,
NRows > 
GetTranspose (void) const
const InternalMatrixTypeGetVnlMatrix (void) const
InternalMatrixTypeGetVnlMatrix (void)
 Matrix (const Self &matrix)
 Matrix ()
 Matrix (const InternalMatrixType &matrix)
 Matrix (const vnl_matrix< T > &matrix)
vnl_vector< T > operator * (const vnl_vector< T > &matrix) const
vnl_matrix< T > operator * (const vnl_matrix< T > &matrix) const
Self operator * (const Self &matrix) const
CovariantVector< T, NRows > operator * (const CovariantVector< T, NColumns > &vector) const
Point< T, NRows > operator * (const Point< T, NColumns > &vector) const
Vector< T, NRows > operator * (const Vector< T, NColumns > &vector) const
void operator *= (const T &value)
void operator *= (const vnl_matrix< T > &matrix)
void operator *= (const Self &matrix)
const T & operator() (unsigned int row, unsigned int col) const
T & operator() (unsigned int row, unsigned int col)
void operator/= (const T &value)
const Selfoperator= (const Self &matrix)
const Selfoperator= (const InternalMatrixType &matrix)
const Selfoperator= (const vnl_matrix< T > &matrix)
const T * operator[] (unsigned int i) const
T * operator[] (unsigned int i)
void SetIdentity (void)
vnl_matrix_fixed< T, NColumns,
NRows > 
GetInverse (void) const
 itkStaticConstMacro (ColumnDimensions, unsigned int, NColumns)
 itkStaticConstMacro (RowDimensions, unsigned int, NRows)
Self operator * (const T &value)
bool operator!= (const Self &matrix) const
bool operator== (const Self &matrix) const
Self operator+ (const Self &matrix) const
const Selfoperator+= (const Self &matrix)
Self operator- (const Self &matrix) const
const Selfoperator-= (const Self &matrix)
Self operator/ (const T &value)


Member Typedef Documentation

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
typedef T itk::Matrix< T, NRows, NColumns >::ComponentType

Definition at line 49 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
typedef vnl_matrix_fixed<T,NRows,NColumns> itk::Matrix< T, NRows, NColumns >::InternalMatrixType

Internal matrix type

Definition at line 57 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
typedef Matrix itk::Matrix< T, NRows, NColumns >::Self

Standard class typedefs.

Definition at line 45 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
typedef T itk::Matrix< T, NRows, NColumns >::ValueType

Component value type

Definition at line 48 of file itkMatrix.h.


Constructor & Destructor Documentation

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::Matrix ( const vnl_matrix< T > &  matrix  )  [inline]

For every operator=, there should be an equivalent copy constructor.

Definition at line 157 of file itkMatrix.h.

References itk::Matrix< T, NRows, NColumns >::operator=().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::Matrix ( const InternalMatrixType matrix  )  [inline, explicit]

For every operator=, there should be an equivalent copy constructor.

Definition at line 191 of file itkMatrix.h.

References itk::Matrix< T, NRows, NColumns >::operator=().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::Matrix (  )  [inline]

Default constructor.

Definition at line 222 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::Matrix ( const Self matrix  )  [inline]

Copy constructor.

Definition at line 225 of file itkMatrix.h.


Member Function Documentation

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::Fill ( const T &  value  )  [inline]

Fill the matrix with a value.

Definition at line 146 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
vnl_matrix_fixed<T,NColumns,NRows> itk::Matrix< T, NRows, NColumns >::GetInverse ( void   )  const [inline]

Return the inverse matrix.

Definition at line 204 of file itkMatrix.h.

References itkGenericExceptionMacro.

Referenced by itk::OrientedImage< TPixel, VImageDimension >::SetDirection(), and itk::OrientedImage< TPixel, VImageDimension >::SetSpacing().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
vnl_matrix_fixed<T,NColumns,NRows> itk::Matrix< T, NRows, NColumns >::GetTranspose ( void   )  const [inline]

Return the transposed matrix.

Definition at line 216 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const InternalMatrixType& itk::Matrix< T, NRows, NColumns >::GetVnlMatrix ( void   )  const [inline]

Return the matrix.

Definition at line 138 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
InternalMatrixType& itk::Matrix< T, NRows, NColumns >::GetVnlMatrix ( void   )  [inline]

Return the matrix.

Definition at line 134 of file itkMatrix.h.

Referenced by itk::operator<<().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::itkStaticConstMacro ( ColumnDimensions  ,
unsigned  int,
NColumns   
)

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
itk::Matrix< T, NRows, NColumns >::itkStaticConstMacro ( RowDimensions  ,
unsigned  int,
NRows   
)

Number Of Columns and Rows.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Self itk::Matrix< T, NRows, NColumns >::operator * ( const T &  value  )  [inline]

Matrix by scalar multiplication.

Definition at line 99 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
vnl_vector<T> itk::Matrix< T, NRows, NColumns >::operator * ( const vnl_vector< T > &  matrix  )  const

Matrix by vnl_vector multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
vnl_matrix<T> itk::Matrix< T, NRows, NColumns >::operator * ( const vnl_matrix< T > &  matrix  )  const

Matrix by vnl_matrix multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Self itk::Matrix< T, NRows, NColumns >::operator * ( const Self matrix  )  const

Matrix by Matrix multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
CovariantVector<T,NRows> itk::Matrix< T, NRows, NColumns >::operator * ( const CovariantVector< T, NColumns > &  vector  )  const

Matrix by CovariantVector multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Point<T,NRows> itk::Matrix< T, NRows, NColumns >::operator * ( const Point< T, NColumns > &  vector  )  const

Matrix by Point multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Vector<T,NRows> itk::Matrix< T, NRows, NColumns >::operator * ( const Vector< T, NColumns > &  vector  )  const

Matrix by Vector multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::operator *= ( const T &  value  )  [inline]

Matrix by scalar multiplication.

Definition at line 95 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::operator *= ( const vnl_matrix< T > &  matrix  ) 

Matrix by vnl_matrix multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::operator *= ( const Self matrix  ) 

Matrix by Matrix multiplication.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
bool itk::Matrix< T, NRows, NColumns >::operator!= ( const Self matrix  )  const [inline]

Definition at line 178 of file itkMatrix.h.

References itk::Matrix< T, NRows, NColumns >::operator==().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const T& itk::Matrix< T, NRows, NColumns >::operator() ( unsigned int  row,
unsigned int  col 
) const [inline]

Return an element of the matrix.

Definition at line 122 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
T& itk::Matrix< T, NRows, NColumns >::operator() ( unsigned int  row,
unsigned int  col 
) [inline]

Return an element of the matrix.

Definition at line 118 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Self itk::Matrix< T, NRows, NColumns >::operator+ ( const Self matrix  )  const

Matrix addition.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const Self& itk::Matrix< T, NRows, NColumns >::operator+= ( const Self matrix  ) 

Matrix addition.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Self itk::Matrix< T, NRows, NColumns >::operator- ( const Self matrix  )  const

Matrix addition.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const Self& itk::Matrix< T, NRows, NColumns >::operator-= ( const Self matrix  ) 

Matrix addition.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
Self itk::Matrix< T, NRows, NColumns >::operator/ ( const T &  value  )  [inline]

Matrix by scalar division.

Definition at line 110 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::operator/= ( const T &  value  )  [inline]

Matrix by scalar division.

Definition at line 106 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const Self& itk::Matrix< T, NRows, NColumns >::operator= ( const Self matrix  )  [inline]

Assignment operator.

Definition at line 197 of file itkMatrix.h.

References itk::Matrix< T, NRows, NColumns >::m_Matrix.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const Self& itk::Matrix< T, NRows, NColumns >::operator= ( const InternalMatrixType matrix  )  [inline]

Definition at line 184 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const Self& itk::Matrix< T, NRows, NColumns >::operator= ( const vnl_matrix< T > &  matrix  )  [inline]

Assignment operator.

Definition at line 150 of file itkMatrix.h.

Referenced by itk::Matrix< T, NRows, NColumns >::Matrix().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
bool itk::Matrix< T, NRows, NColumns >::operator== ( const Self matrix  )  const [inline]

Comparison operators.

Definition at line 162 of file itkMatrix.h.

References itk::Matrix< T, NRows, NColumns >::m_Matrix.

Referenced by itk::Matrix< T, NRows, NColumns >::operator!=().

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
const T* itk::Matrix< T, NRows, NColumns >::operator[] ( unsigned int  i  )  const [inline]

Return a row of the matrix.

Definition at line 130 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
T* itk::Matrix< T, NRows, NColumns >::operator[] ( unsigned int  i  )  [inline]

Return a row of the matrix.

Definition at line 126 of file itkMatrix.h.

template<class T, unsigned int NRows = 3, unsigned int NColumns = 3>
void itk::Matrix< T, NRows, NColumns >::SetIdentity ( void   )  [inline]

Set the matrix to identity.

Definition at line 142 of file itkMatrix.h.


The documentation for this class was generated from the following file:
Generated at Wed Jul 30 07:03:31 2008 for ITK by doxygen 1.5.1 written by Dimitri van Heesch, © 1997-2000