CASToR
2.0
Tomographic Reconstruction (PET/SPECT/CT)
|
Structure designed for basic matrices operations. More...
#include <oMatrix.hh>
Public Member Functions | |
oMatrix () | |
oMatrix constructor. Initialize the member variables to their default values. More... | |
~oMatrix () | |
oMatrix destructor. Free memory of the oMatrix object. More... | |
oMatrix (uint16_t nl, uint16_t nc) | |
oMatrix constructor. Instanciate a matrix structure with the number of lines and colons provided in parameters More... | |
void | Allocate (uint16_t nl, uint16_t nc) |
Instanciate a Matrix structure with the number of lines and colons provided in parameters. More... | |
int | SetMatriceElt (uint16_t l, uint16_t c, FLTNB a_val) |
Set the matrix element corresponding to the argument indices with the provided value. More... | |
FLTNB | GetMatriceElt (uint16_t l, uint16_t c) |
FLTNB ** | GetMtx () |
int | Multiplication (oMatrix *ap_Mtx, oMatrix *ap_MtxResult) |
Multiply the member matrix with the matrix provided in 1st parameter Return the result in the matric provided in 2nd parameter. More... | |
int | Transpose (oMatrix *a_MtxResult) |
Transpose the elements of the matrix. More... | |
int | Inverse (oMatrix *ap_MtxResult) |
Inverse the matrix on which the function is called An error is returned if the matrix is not square, or if there is a nil component on the diagonal The resulting matrix object must be different than the input matrix. More... | |
int | SetXRotMtx (FLTNB ang) |
Set a (3,3) X-axis rotation matrix using the provided angle. More... | |
int | SetYRotMtx (FLTNB ang) |
Set a (3,3) Y-axis rotation matrix using the provided angle. More... | |
int | SetZRotMtx (FLTNB ang) |
Set a (3,3) Z-axis rotation matrix using the provided angle. More... | |
void | Describe () |
Display the element of the matrix. More... | |
Public Attributes | |
uint16_t | m_lin |
uint16_t | m_col |
Private Attributes | |
FLTNB ** | m2p_Mat |
Structure designed for basic matrices operations.
This structure is mostly used in scanner classes, for geometrical rotation purposes
Definition at line 42 of file oMatrix.hh.
oMatrix::oMatrix | ( | ) |
oMatrix constructor. Initialize the member variables to their default values.
Definition at line 41 of file oMatrix.cc.
oMatrix::~oMatrix | ( | ) |
oMatrix destructor. Free memory of the oMatrix object.
Definition at line 81 of file oMatrix.cc.
oMatrix::oMatrix | ( | uint16_t | nl, |
uint16_t | nc | ||
) |
oMatrix constructor. Instanciate a matrix structure with the number of lines and colons provided in parameters
nl | : a number of lines |
nc | : a number of colons |
Definition at line 61 of file oMatrix.cc.
void oMatrix::Allocate | ( | uint16_t | nl, |
uint16_t | nc | ||
) |
Instanciate a Matrix structure with the number of lines and colons provided in parameters.
nl | a number of lines |
nc | a number of colons |
Definition at line 101 of file oMatrix.cc.
void oMatrix::Describe | ( | ) |
Display the element of the matrix.
Definition at line 473 of file oMatrix.cc.
FLTNB oMatrix::GetMatriceElt | ( | uint16_t | l, |
uint16_t | c | ||
) |
l | a line index |
c | a colon index |
Definition at line 166 of file oMatrix.cc.
|
inline |
Definition at line 96 of file oMatrix.hh.
int oMatrix::Inverse | ( | oMatrix * | ap_MtxResult | ) |
Inverse the matrix on which the function is called An error is returned if the matrix is not square, or if there is a nil component on the diagonal The resulting matrix object must be different than the input matrix.
ap_MtxResult | : output matrix containing the inverse matrix |
Definition at line 286 of file oMatrix.cc.
Multiply the member matrix with the matrix provided in 1st parameter Return the result in the matric provided in 2nd parameter.
ap_Mtx | : input matrix to multiply to the matrix from which the function is called |
ap_MtxResult | : output matrix containing the result of the multiplication |
Definition at line 185 of file oMatrix.cc.
int oMatrix::SetMatriceElt | ( | uint16_t | l, |
uint16_t | c, | ||
FLTNB | a_val | ||
) |
Set the matrix element corresponding to the argument indices with the provided value.
l | a line index |
c | a colon index |
a_val | : a value to initialize the matrix element with |
Definition at line 139 of file oMatrix.cc.
int oMatrix::SetXRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) X-axis rotation matrix using the provided angle.
ang | : angle in degree |
Definition at line 373 of file oMatrix.cc.
int oMatrix::SetYRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) Y-axis rotation matrix using the provided angle.
ang | : angle in degree |
Definition at line 407 of file oMatrix.cc.
int oMatrix::SetZRotMtx | ( | FLTNB | ang | ) |
Set a (3,3) Z-axis rotation matrix using the provided angle.
ang | : angle in degree |
Definition at line 441 of file oMatrix.cc.
int oMatrix::Transpose | ( | oMatrix * | a_MtxResult | ) |
Transpose the elements of the matrix.
ap_MtxResult | : output matrix containing the result of the transposition |
Definition at line 229 of file oMatrix.cc.
|
private |
2D pointer containing the matrix elements. Default =NULL
Definition at line 160 of file oMatrix.hh.
uint16_t oMatrix::m_col |
Number of colons in the matrix. Default =0
Definition at line 158 of file oMatrix.hh.
uint16_t oMatrix::m_lin |
Number of lines in the matrix. Default =0
Definition at line 157 of file oMatrix.hh.