Template class for managing 3D matrices. This class is based on boost multi_array. Check
|
Public Types |
typedef
boost::multi_array_types::index | index |
typedef MultiArray< T, 3 > | MA3 |
typedef Matrix3D< T > | This |
Public Member Functions |
template<typename T1 > |
void | cast_values (Matrix3D< T1 > &out) |
| Cast values.
|
int | get_number_of_columns () const |
| Returns the number of columns in the matrix.
|
int | get_number_of_rows () const |
| Returns the number of rows in the matrix.
|
int | get_number_of_slices () const |
| Returns the number of slices in the matrix.
|
| Matrix3D (const This &v) |
| Matrix3D (int Zdim, int Ydim, int Xdim) |
| Constructor.
|
| Matrix3D () |
| Empty constructor.
|
template<typename T1 > |
T & | operator() (T1 &idx) const |
T & | operator() (int k, int j, int i) const |
This | operator* (const T &v) const |
| Multiplication operator for an array and a scalar.
|
This | operator* (const This &v) const |
| Multiplication operator.
|
This & | operator*= (const T &v) |
| Multiplication operator for an array and a scalar.
|
This & | operator*= (const This &v) |
| Multiplication operator.
|
This | operator+ (const T &v) const |
| Sum operator for an array and a scalar.
|
This | operator+ (const This &v) const |
| Sum operator.
|
This & | operator+= (const T &v) |
| Addition operator for an array and a scalar.
|
This & | operator+= (const This &v) |
| Addition operator.
|
This | operator- (const T &v) const |
| Minus operator for an array and a scalar.
|
This | operator- (const This &v) const |
| Minus operator.
|
This & | operator-= (const T &v) |
| Substraction operator for an array and a scalar.
|
This & | operator-= (const This &v) |
| Substraction operator.
|
This | operator/ (const T &v) const |
| Division operator for an array and a scalar.
|
This | operator/ (const This &v) const |
| Division operator.
|
This & | operator/= (const T &v) |
| Division operator for an array and a scalar.
|
This & | operator/= (const This &v) |
| Division operator.
|
void | operator= (const This &v) |
void | pad (This &padded) |
void | pad (This &padded, T val) |
template<typename T1 > |
void | reshape (const Matrix3D< T1 > &v) |
| Reshapes the matrix copying the size and range of a given one.
|
template<typename T1 > |
void | resize (const Matrix3D< T1 > &v) |
| Resizes the matrix copying the size of a given one.
|
void | resize (int Zdim, int Ydim, int Xdim) |
| Resizes the matrix.
|
Friends |
This | operator* (const T &X, const This &a1) |
| Multiplication operator for a scalar and an array.
|
This | operator+ (const T &X, const This &a1) |
| Sum operator for a scalar and an array.
|
This | operator- (const T &X, const This &a1) |
| Minus operator for a scalar and an array.
|
This | operator/ (const T &X, const This &a1) |
| Division operator for a scalar and an array.
|
Related Functions |
(Note that these are not member functions.)
|
template<typename T > |
T | interpolate (algebra::Matrix3D< T > &m, VectorD< 3 > &idx, bool wrap=false, T outside=0.0, int interp=0) |
| General function to call in case of interpolation in 3D matrices.
|
template<typename T > |
T | trilinear_interpolation (Matrix3D< T > &m, VectorD< 3 > &idx, bool wrap, T outside) |
| Trilinear interpolation for a point using the 8 closest values in the matrix.
|