#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 70 of file itkMatrix.h.
Public Types | |
| using | CompatibleSquareMatrixType = Matrix<T, VColumns, VColumns> |
| using | ComponentType = T |
| using | const_iterator = const ValueType * |
| using | const_pointer = const ValueType * |
| using | const_reference = const ValueType & |
| using | InternalMatrixType = vnl_matrix_fixed<T, VRows, VColumns> |
| using | iterator = ValueType * |
| using | pointer = ValueType * |
| using | reference = ValueType & |
| using | Self = Matrix |
| using | ValueType = T |
Public Member Functions | |
| iterator | begin () |
| const_iterator | begin () const |
| const_iterator | cbegin () const |
| const_iterator | cend () const |
| iterator | end () |
| const_iterator | end () const |
| void | Fill (const T &value) |
| vnl_matrix_fixed< T, VColumns, VRows > | GetInverse () const |
| vnl_matrix_fixed< T, VColumns, VRows > | GetTranspose () const |
| 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 () |
| constexpr unsigned int | size () const |
| void | swap (Self &other) noexcept |
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 108 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::ComponentType = T |
Definition at line 78 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::const_iterator = const ValueType * |
| using itk::Matrix< T, VRows, VColumns >::const_pointer = const ValueType * |
A const pointer to the ValueType.
Definition at line 84 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::const_reference = const ValueType & |
A const reference to the ValueType.
Definition at line 90 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::InternalMatrixType = vnl_matrix_fixed<T, VRows, VColumns> |
Internal matrix type
Definition at line 103 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::iterator = ValueType * |
The return type of the non-const overloads of begin() and end().
Definition at line 93 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::pointer = ValueType * |
A pointer to the ValueType.
Definition at line 81 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::reference = ValueType & |
A reference to the ValueType.
Definition at line 87 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::Self = Matrix |
Standard class type aliases.
Definition at line 74 of file itkMatrix.h.
| using itk::Matrix< T, VRows, VColumns >::ValueType = T |
Component value type
Definition at line 77 of file itkMatrix.h.
|
inlineexplicit |
Explicit constructor. Copies the elements from the specified vnl_matrix (assuming it has the same dimensions).
Definition at line 277 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 286 of file itkMatrix.h.
|
inline |
Converting constructor (implicit).
Definition at line 324 of file itkMatrix.h.
|
default |
Defaulted default-constructor. Zero-initializes all of its elements.
|
inlinenodiscard |
Returns an iterator to the first element.
Definition at line 362 of file itkMatrix.h.
|
inlinenodiscard |
Returns a const iterator to the first element.
Definition at line 376 of file itkMatrix.h.
|
inlinenodiscard |
Returns a const iterator to the first element.
Definition at line 390 of file itkMatrix.h.
|
inlinenodiscard |
Returns a const iterator just beyond the last element.
Definition at line 397 of file itkMatrix.h.
|
inlinenodiscard |
Returns an iterator just beyond the last element.
Definition at line 369 of file itkMatrix.h.
|
inlinenodiscard |
Returns a const iterator just beyond the last element.
Definition at line 383 of file itkMatrix.h.
|
inline |
Fill the matrix with a value.
Definition at line 262 of file itkMatrix.h.
|
inlinestatic |
Get an identity matrix.
Definition at line 253 of file itkMatrix.h.
|
inlinenodiscard |
Return the inverse matrix.
Definition at line 330 of file itkMatrix.h.
|
inlinenodiscard |
Return the transposed matrix.
Definition at line 341 of file itkMatrix.h.
|
inline |
Return the matrix.
Definition at line 232 of file itkMatrix.h.
Referenced by itk::Math::Determinant(), itk::OpenCVBasicTypeBridge< Matrix< T, static_cast< unsigned int >(VRows), static_cast< unsigned int >(VColumns)>, cv::Matx< T, VRows, VColumns > >::FromITKToOpenCV(), itk::detail::GetPointerToMatrixData(), itk::Math::MatrixExponential(), itk::operator<<(), itk::Math::SolveSymmetric(), itk::Math::SVD(), and itk::Math::SVD().
|
inlinenodiscard |
Return the matrix.
Definition at line 239 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 204 of file itkMatrix.h.
|
inline |
Return an element of the matrix.
Definition at line 211 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 177 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 132 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 170 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 194 of file itkMatrix.h.
|
inline |
Matrix by scalar division.
Definition at line 187 of file itkMatrix.h.
|
inline |
Definition at line 317 of file itkMatrix.h.
|
inline |
Assignment operator.
Definition at line 269 of file itkMatrix.h.
|
inline |
Comparison operators.
Definition at line 295 of file itkMatrix.h.
|
inline |
Return a row of the matrix.
Definition at line 218 of file itkMatrix.h.
|
inline |
Return a row of the matrix.
Definition at line 225 of file itkMatrix.h.
|
inline |
Definition at line 411 of file itkMatrix.h.
|
inline |
Set the matrix to identity.
Definition at line 246 of file itkMatrix.h.
|
inlinenodiscardconstexpr |
Returns the number of elements.
Definition at line 355 of file itkMatrix.h.
|
inlinenoexcept |
Definition at line 403 of file itkMatrix.h.
|
staticconstexpr |
Definition at line 100 of file itkMatrix.h.
|
private |
Definition at line 426 of file itkMatrix.h.
Referenced by itk::Matrix< VComponent, VRows, VCols >::operator==().
|
staticconstexpr |
Number Of Columns and Rows.
Definition at line 99 of file itkMatrix.h.