ITK
6.0.0
Insight Toolkit
|
#include <itkMatrix.h>
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 52 of file itkMatrix.h.
Public Types | |
using | CompatibleSquareMatrixType = Matrix< T, VColumns, VColumns > |
using | ComponentType = T |
using | InternalMatrixType = vnl_matrix_fixed< T, VRows, VColumns > |
using | Self = Matrix |
using | ValueType = T |
Public Member Functions | |
void | Fill (const T &value) |
InternalMatrixType & | GetVnlMatrix () |
const InternalMatrixType & | GetVnlMatrix () const |
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION (Self) | |
Matrix ()=default | |
Matrix (const InternalMatrixType &matrix) | |
template<typename TElement > | |
Matrix (const TElement(&elements)[VRows][VColumns]) | |
Matrix (const vnl_matrix< T > &matrix) | |
T & | operator() (unsigned int row, unsigned int col) |
const T & | operator() (unsigned int row, unsigned int col) const |
Self | operator* (const CompatibleSquareMatrixType &matrix) const |
CovariantVector< T, VRows > | operator* (const CovariantVector< T, VColumns > &covect) const |
Point< T, VRows > | operator* (const Point< T, VColumns > &pnt) const |
Self | operator* (const T &value) const |
Vector< T, VRows > | operator* (const Vector< T, VColumns > &vect) const |
vnl_matrix< T > | operator* (const vnl_matrix< T > &matrix) const |
template<unsigned int OuterDim> | |
Matrix< T, VRows, OuterDim > | operator* (const vnl_matrix_fixed< T, VRows, OuterDim > &matrix) const |
vnl_vector< T > | operator* (const vnl_vector< T > &vc) const |
vnl_vector_fixed< T, VRows > | operator* (const vnl_vector_fixed< T, VColumns > &inVNLvect) const |
void | operator*= (const CompatibleSquareMatrixType &matrix) |
void | operator*= (const T &value) |
void | operator*= (const vnl_matrix< T > &matrix) |
Self | operator+ (const Self &matrix) const |
const Self & | operator+= (const Self &matrix) |
Self | operator- (const Self &matrix) const |
const Self & | operator-= (const Self &matrix) |
Self | operator/ (const T &value) const |
void | operator/= (const T &value) |
Self & | operator= (const InternalMatrixType &matrix) |
Self & | operator= (const vnl_matrix< T > &matrix) |
bool | operator== (const Self &matrix) const |
T * | operator[] (unsigned int i) |
const T * | operator[] (unsigned int i) const |
void | PrintSelf (std::ostream &os, Indent indent) const |
void | SetIdentity () |
void | swap (Self &other) |
vnl_matrix_fixed< T, VColumns, VRows > | GetInverse () const |
vnl_matrix_fixed< T, VColumns, VRows > | GetTranspose () const |
Static Public Member Functions | |
static Self | GetIdentity () |
Static Public Attributes | |
static constexpr unsigned int | ColumnDimensions = VColumns |
static constexpr unsigned int | RowDimensions = VRows |
Private Attributes | |
InternalMatrixType | m_Matrix {} |
using itk::Matrix< T, VRows, VColumns >::CompatibleSquareMatrixType = Matrix<T, VColumns, VColumns> |
Compatible square matrix. This is currently used by operator* to help with wrapping.
Definition at line 72 of file itkMatrix.h.
using itk::Matrix< T, VRows, VColumns >::ComponentType = T |
Definition at line 60 of file itkMatrix.h.
using itk::Matrix< T, VRows, VColumns >::InternalMatrixType = vnl_matrix_fixed<T, VRows, VColumns> |
Internal matrix type
Definition at line 67 of file itkMatrix.h.
using itk::Matrix< T, VRows, VColumns >::Self = Matrix |
Standard class type aliases.
Definition at line 56 of file itkMatrix.h.
using itk::Matrix< T, VRows, VColumns >::ValueType = T |
Component value type
Definition at line 59 of file itkMatrix.h.
|
inlineexplicit |
Explicit constructor. Copies the elements from the specified vnl_matrix
(assuming it has the same dimensions).
Definition at line 225 of file itkMatrix.h.
|
inlineexplicit |
Explicit constructor template. Copies the elements from the specified C-style array of rows.
Matrix(const T (&)[VRows][VColumns])
constructor, but SWIG did not like that, saying: "Wrapping/Typedefs/itkMatrix.i:76: Error: Syntax error in input(3)." Definition at line 234 of file itkMatrix.h.
|
inline |
Converting constructor (implicit).
Definition at line 272 of file itkMatrix.h.
|
default |
Defaulted default-constructor. Zero-initializes all of its elements.
|
inline |
Fill the matrix with a value.
Definition at line 210 of file itkMatrix.h.
Referenced by TestBaseClassMethodsMeshIO().
|
inlinestatic |
Get an identity matrix.
Definition at line 200 of file itkMatrix.h.
|
inline |
Return the inverse matrix.
Definition at line 278 of file itkMatrix.h.
|
inline |
Return the transposed matrix.
Definition at line 291 of file itkMatrix.h.
|
inline |
Return the matrix.
Definition at line 179 of file itkMatrix.h.
Referenced by itk::OpenCVBasicTypeBridge< itk::Matrix< T, VRows, VColumns >, cv::Matx< T, VRows, VColumns > >::FromITKToOpenCV(), itk::detail::GetPointerToMatrixData(), and itk::operator<<().
|
inline |
Return the matrix.
Definition at line 186 of file itkMatrix.h.
itk::Matrix< T, VRows, VColumns >::ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION | ( | Self | ) |
|
inline |
Return an element of the matrix.
Definition at line 159 of file itkMatrix.h.
|
inline |
Return an element of the matrix.
Definition at line 166 of file itkMatrix.h.
Self itk::Matrix< T, VRows, VColumns >::operator* | ( | const CompatibleSquareMatrixType & | matrix | ) | const |
CovariantVector<T, VRows> itk::Matrix< T, VRows, VColumns >::operator* | ( | const CovariantVector< T, VColumns > & | covect | ) | const |
Matrix by CovariantVector multiplication.
Point<T, VRows> itk::Matrix< T, VRows, VColumns >::operator* | ( | const Point< T, VColumns > & | pnt | ) | const |
|
inline |
Matrix by scalar multiplication.
Definition at line 132 of file itkMatrix.h.
Vector<T, VRows> itk::Matrix< T, VRows, VColumns >::operator* | ( | const Vector< T, VColumns > & | vect | ) | const |
vnl_matrix<T> itk::Matrix< T, VRows, VColumns >::operator* | ( | const vnl_matrix< T > & | matrix | ) | const |
Matrix by vnl_matrix multiplication.
|
inline |
Definition at line 90 of file itkMatrix.h.
vnl_vector<T> itk::Matrix< T, VRows, VColumns >::operator* | ( | const vnl_vector< T > & | vc | ) | const |
Matrix by vnl_vector multiplication.
vnl_vector_fixed<T, VRows> itk::Matrix< T, VRows, VColumns >::operator* | ( | const vnl_vector_fixed< T, VColumns > & | inVNLvect | ) | const |
Matrix by vnl_vector_fixed multiplication.
void itk::Matrix< T, VRows, VColumns >::operator*= | ( | const CompatibleSquareMatrixType & | matrix | ) |
|
inline |
Matrix by scalar multiplication.
Definition at line 126 of file itkMatrix.h.
void itk::Matrix< T, VRows, VColumns >::operator*= | ( | const vnl_matrix< T > & | matrix | ) |
Matrix by vnl_matrix multiplication.
Self itk::Matrix< T, VRows, VColumns >::operator+ | ( | const Self & | matrix | ) | const |
Matrix addition.
const Self& itk::Matrix< T, VRows, VColumns >::operator+= | ( | const Self & | matrix | ) |
Self itk::Matrix< T, VRows, VColumns >::operator- | ( | const Self & | matrix | ) | const |
Matrix addition.
const Self& itk::Matrix< T, VRows, VColumns >::operator-= | ( | const Self & | matrix | ) |
|
inline |
Matrix by scalar division.
Definition at line 149 of file itkMatrix.h.
|
inline |
Matrix by scalar division.
Definition at line 142 of file itkMatrix.h.
|
inline |
Definition at line 265 of file itkMatrix.h.
|
inline |
Assignment operator.
Definition at line 217 of file itkMatrix.h.
|
inline |
Comparison operators.
Definition at line 243 of file itkMatrix.h.
|
inline |
Return a row of the matrix.
Definition at line 172 of file itkMatrix.h.
|
inline |
Return a row of the matrix.
Definition at line 175 of file itkMatrix.h.
|
inline |
Definition at line 313 of file itkMatrix.h.
|
inline |
Set the matrix to identity.
Definition at line 193 of file itkMatrix.h.
Referenced by itk::IOTestHelper::SetIdentityDirection().
|
inline |
Definition at line 305 of file itkMatrix.h.
Referenced by itk::swap().
|
staticconstexpr |
Definition at line 64 of file itkMatrix.h.
|
private |
Definition at line 328 of file itkMatrix.h.
Referenced by itk::Matrix< double, Self::ImageDimension, Self::ImageDimension >::operator==(), and itk::Matrix< double, Self::ImageDimension, Self::ImageDimension >::swap().
|
staticconstexpr |
Number Of Columns and Rows.
Definition at line 63 of file itkMatrix.h.