stores a set of ordinatry matrices More...
#include <Matrix3D.h>
Public Types | |
typedef TMatrix2D | Matrix2D_Type |
Public Member Functions | |
~Matrix3D () | |
constructors | |
Matrix3D (unsigned int rows, unsigned int cols, unsigned int depth, const typename TMatrix2D::RingType *ring, string name="") | |
Matrix3D (unsigned int rows, unsigned int cols, const vector< TMatrix2D * > &matlist, const typename TMatrix2D::RingType *ring=NULL, string name="") | |
properties | |
unsigned int | getRowNum () const |
unsigned int | getColNum () const |
unsigned int | getZNum () const |
returns number of frontal matrices (spatial z-dimension) | |
const TMatrix2D::RingType * | getRing () const |
void | setName (string name) |
std::string | getName (string name) const |
data access | |
void | setVal (unsigned int row, unsigned int col, unsigned int z, typename TMatrix2D::ElementType val) |
TMatrix2D::ElementType | getVal (unsigned int row, unsigned int col, unsigned int z) const |
void | setFrontalMatrix (unsigned int index, TMatrix2D *matrix) |
void | appendFrontalMatrix (TMatrix2D *matrix) |
TMatrix2D & | getFrontalMatrixRef (unsigned int index) |
const TMatrix2D & | getFrontalMatrixConstRef (unsigned int index) const |
operators | |
Matrix3D * | leftMultiply (const TMatrix2D *mat) const |
multiplies all frontal matrices with given matrix | |
Matrix3D * | rightMultiply (const TMatrix2D *mat) const |
multiplies all frontal matrices with given matrix | |
Matrix3D * | getTransversalForm () const |
Matrix3D * | computeFrontalMatrixBasis () const |
Ermittelt eine Basis einer MatrixListe matrix3D, also aller Frontal-Matrizen. | |
void | clear () |
output | |
void | printTransversalView () const |
void | print3DMatrix (ostream &os) const |
void | print3DMatrix () const |
Private Member Functions | |
safety | |
void | checkDimensions (unsigned int row, unsigned int col, unsigned int depth) const |
Private Attributes | |
data | |
unsigned int | rows_m |
frontal matrix rows | |
unsigned int | cols_m |
frontal matrix cols | |
const TMatrix2D::RingType * | ring_m |
Matrix Elements are elements of a Ring; each matrix has the same pointer to this ring. | |
string | name_m |
vector< TMatrix2D * > | matrix2DList_m |
2D matrix list |
/
Definition at line 12 of file Matrix3D.h.
typedef TMatrix2D Matrix3D< TMatrix2D >::Matrix2D_Type |
Definition at line 32 of file Matrix3D.h.
Matrix3D< TMatrix2D >::Matrix3D | ( | unsigned int | rows, | |
unsigned int | cols, | |||
unsigned int | depth, | |||
const typename TMatrix2D::RingType * | ring, | |||
string | name = "" | |||
) | [inline] |
Definition at line 5 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
Referenced by Matrix3D< TMatrix2D >::getTransversalForm(), Matrix3D< TMatrix2D >::leftMultiply(), and Matrix3D< TMatrix2D >::rightMultiply().
Matrix3D< TMatrix2D >::Matrix3D | ( | unsigned int | rows, | |
unsigned int | cols, | |||
const vector< TMatrix2D * > & | matlist, | |||
const typename TMatrix2D::RingType * | ring = NULL , |
|||
string | name = "" | |||
) | [inline] |
Definition at line 24 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::getColNum(), Matrix3D< TMatrix2D >::getRing(), Matrix3D< TMatrix2D >::getRowNum(), Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
Definition at line 333 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m.
void Matrix3D< TMatrix2D >::appendFrontalMatrix | ( | TMatrix2D * | matrix | ) | [inline] |
Definition at line 110 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
Referenced by Matrix3D< TMatrix2D >::computeFrontalMatrixBasis().
void Matrix3D< TMatrix2D >::checkDimensions | ( | unsigned int | row, | |
unsigned int | col, | |||
unsigned int | depth | |||
) | const [inline, private] |
Definition at line 43 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, and Matrix3D< TMatrix2D >::rows_m.
Referenced by Matrix3D< TMatrix2D >::getVal(), and Matrix3D< TMatrix2D >::setVal().
void Matrix3D< TMatrix2D >::clear | ( | ) | [inline] |
Definition at line 321 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m.
Matrix3D< TMatrix2D > * Matrix3D< TMatrix2D >::computeFrontalMatrixBasis | ( | ) | const [inline] |
Definition at line 256 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::appendFrontalMatrix(), Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::getFrontalMatrixConstRef(), TVector< TRing >::getVal(), Matrix3D< TMatrix2D >::getZNum(), TVector< TRing >::isNotZero(), Matrix3D< TMatrix2D >::ring_m, Matrix3D< TMatrix2D >::rows_m, and TVector< TRing >::setName().
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall().
unsigned int Matrix3D< TMatrix2D >::getColNum | ( | ) | const [inline] |
Definition at line 79 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeLambda(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall(), and Matrix3D< TMatrix2D >::Matrix3D().
const TMatrix2D & Matrix3D< TMatrix2D >::getFrontalMatrixConstRef | ( | unsigned int | index | ) | const [inline] |
Definition at line 132 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m.
Referenced by Matrix3D< TMatrix2D >::computeFrontalMatrixBasis().
TMatrix2D & Matrix3D< TMatrix2D >::getFrontalMatrixRef | ( | unsigned int | index | ) | [inline] |
Definition at line 142 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m.
std::string Matrix3D< TMatrix2D >::getName | ( | string | name | ) | const [inline] |
Definition at line 65 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::name_m.
const TMatrix2D::RingType * Matrix3D< TMatrix2D >::getRing | ( | ) | const [inline] |
Definition at line 52 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::ring_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeAlpha(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeLambda(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall(), and Matrix3D< TMatrix2D >::Matrix3D().
unsigned int Matrix3D< TMatrix2D >::getRowNum | ( | ) | const [inline] |
Definition at line 72 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::rows_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeLambda(), and Matrix3D< TMatrix2D >::Matrix3D().
Matrix3D< TMatrix2D > * Matrix3D< TMatrix2D >::getTransversalForm | ( | ) | const [inline] |
Definition at line 205 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::getVal(), Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::ring_m, Matrix3D< TMatrix2D >::rows_m, and Matrix3D< TMatrix2D >::setVal().
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall(), and Matrix3D< TMatrix2D >::printTransversalView().
TMatrix2D::ElementType Matrix3D< TMatrix2D >::getVal | ( | unsigned int | row, | |
unsigned int | col, | |||
unsigned int | z | |||
) | const [inline] |
Definition at line 197 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::checkDimensions(), and Matrix3D< TMatrix2D >::matrix2DList_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeAlpha(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeLambda(), and Matrix3D< TMatrix2D >::getTransversalForm().
unsigned int Matrix3D< TMatrix2D >::getZNum | ( | ) | const [inline] |
Definition at line 86 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m.
Referenced by Matrix3D< TMatrix2D >::computeFrontalMatrixBasis(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric(), and nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall().
Matrix3D< TMatrix2D > * Matrix3D< TMatrix2D >::leftMultiply | ( | const TMatrix2D * | mat | ) | const [inline] |
Definition at line 151 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeBigQuadric(), and nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall().
void Matrix3D< TMatrix2D >::print3DMatrix | ( | ) | const [inline] |
Definition at line 314 of file Matrix3D.hpp.
void Matrix3D< TMatrix2D >::print3DMatrix | ( | ostream & | os | ) | const [inline] |
Definition at line 234 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::matrix2DList_m, and Matrix3D< TMatrix2D >::name_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall(), and Matrix3D< TMatrix2D >::printTransversalView().
void Matrix3D< TMatrix2D >::printTransversalView | ( | ) | const [inline] |
Definition at line 223 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::getTransversalForm(), and Matrix3D< TMatrix2D >::print3DMatrix().
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric().
Matrix3D< TMatrix2D > * Matrix3D< TMatrix2D >::rightMultiply | ( | const TMatrix2D * | mat | ) | const [inline] |
Definition at line 170 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeBigQuadric().
void Matrix3D< TMatrix2D >::setFrontalMatrix | ( | unsigned int | index, | |
TMatrix2D * | matrix | |||
) | [inline] |
Definition at line 93 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::cols_m, Matrix3D< TMatrix2D >::matrix2DList_m, Matrix3D< TMatrix2D >::ring_m, and Matrix3D< TMatrix2D >::rows_m.
void Matrix3D< TMatrix2D >::setName | ( | string | name | ) | [inline] |
Definition at line 59 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::name_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric(), and nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeQuadricSmall().
void Matrix3D< TMatrix2D >::setVal | ( | unsigned int | row, | |
unsigned int | col, | |||
unsigned int | z, | |||
typename TMatrix2D::ElementType | val | |||
) | [inline] |
Definition at line 188 of file Matrix3D.hpp.
References Matrix3D< TMatrix2D >::checkDimensions(), and Matrix3D< TMatrix2D >::matrix2DList_m.
Referenced by nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeAlpha(), nCenterFocus::CenterFocusExperiment< variant >::computeQuadric_computeLambda(), and Matrix3D< TMatrix2D >::getTransversalForm().
Definition at line 21 of file Matrix3D.h.
Referenced by Matrix3D< TMatrix2D >::appendFrontalMatrix(), Matrix3D< TMatrix2D >::checkDimensions(), Matrix3D< TMatrix2D >::computeFrontalMatrixBasis(), Matrix3D< TMatrix2D >::getColNum(), Matrix3D< TMatrix2D >::getTransversalForm(), Matrix3D< TMatrix2D >::leftMultiply(), Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::rightMultiply(), and Matrix3D< TMatrix2D >::setFrontalMatrix().
vector< TMatrix2D *> Matrix3D< TMatrix2D >::matrix2DList_m [private] |
Definition at line 27 of file Matrix3D.h.
Referenced by Matrix3D< TMatrix2D >::appendFrontalMatrix(), Matrix3D< TMatrix2D >::checkDimensions(), Matrix3D< TMatrix2D >::clear(), Matrix3D< TMatrix2D >::getFrontalMatrixConstRef(), Matrix3D< TMatrix2D >::getFrontalMatrixRef(), Matrix3D< TMatrix2D >::getTransversalForm(), Matrix3D< TMatrix2D >::getVal(), Matrix3D< TMatrix2D >::getZNum(), Matrix3D< TMatrix2D >::leftMultiply(), Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::print3DMatrix(), Matrix3D< TMatrix2D >::rightMultiply(), Matrix3D< TMatrix2D >::setFrontalMatrix(), Matrix3D< TMatrix2D >::setVal(), and Matrix3D< TMatrix2D >::~Matrix3D().
Definition at line 25 of file Matrix3D.h.
Referenced by Matrix3D< TMatrix2D >::getName(), Matrix3D< TMatrix2D >::print3DMatrix(), and Matrix3D< TMatrix2D >::setName().
Definition at line 23 of file Matrix3D.h.
Referenced by Matrix3D< TMatrix2D >::appendFrontalMatrix(), Matrix3D< TMatrix2D >::computeFrontalMatrixBasis(), Matrix3D< TMatrix2D >::getRing(), Matrix3D< TMatrix2D >::getTransversalForm(), Matrix3D< TMatrix2D >::leftMultiply(), Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::rightMultiply(), and Matrix3D< TMatrix2D >::setFrontalMatrix().
Definition at line 20 of file Matrix3D.h.
Referenced by Matrix3D< TMatrix2D >::appendFrontalMatrix(), Matrix3D< TMatrix2D >::checkDimensions(), Matrix3D< TMatrix2D >::computeFrontalMatrixBasis(), Matrix3D< TMatrix2D >::getRowNum(), Matrix3D< TMatrix2D >::getTransversalForm(), Matrix3D< TMatrix2D >::leftMultiply(), Matrix3D< TMatrix2D >::Matrix3D(), Matrix3D< TMatrix2D >::rightMultiply(), and Matrix3D< TMatrix2D >::setFrontalMatrix().