Public Types |
Public Member Functions |
Static Public Member Functions |
Protected Member Functions |
List of all members
CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived > Class Template Reference
#include <Core/Matrix/MatrixDenseBase.hpp>
Inheritance diagram for CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >:
Public Types | |
| using | ValueType = T |
| using | Reference = T & |
| using | ConstReference = const T & |
Public Member Functions | |
| template<size_t R, size_t C, typename E > | |
| void | CopyFrom (const MatrixExpression< T, R, C, E > &expression) |
| Copies from generic expression. More... | |
| void | SetDiagonal (ConstReference val) |
| Sets diagonal elements with input scalar. More... | |
| void | SetOffDiagonal (ConstReference val) |
| Sets off-diagonal elements with input scalar. More... | |
| template<size_t R, size_t C, typename E > | |
| void | SetRow (size_t i, const MatrixExpression< T, R, C, E > &row) |
| Sets i-th row with input column vector. More... | |
| template<size_t R, size_t C, typename E > | |
| void | SetColumn (size_t j, const MatrixExpression< T, R, C, E > &col) |
| Sets j-th column with input vector. More... | |
| void | Normalize () |
| void | Transpose () |
| Transposes this matrix. More... | |
| void | Invert () |
| Inverts this matrix. More... | |
| Reference | operator() (size_t i, size_t j) |
| ConstReference | operator() (size_t i, size_t j) const |
| template<size_t R, size_t C, typename E > | |
| MatrixDenseBase & | operator= (const MatrixExpression< T, R, C, E > &expression) |
| Copies from generic expression. More... | |
| template<size_t R, size_t C, typename E > | |
| MatrixDenseBase< T, Rows, Cols, D > & | operator= (const MatrixExpression< T, R, C, E > &expression) |
Static Public Member Functions | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixSizeStatic< Rows, Cols >), D > | MakeZero () |
| Makes a static matrix with zero entries. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixSizeDynamic< Rows, Cols >), D > | MakeZero (size_t rows, size_t cols) |
| Makes a dynamic matrix with zero entries. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixSizeStatic< Rows, Cols >), D > | MakeConstant (ValueType val) |
| Makes a static matrix with constant entries. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixSizeDynamic< Rows, Cols >), D > | MakeConstant (size_t rows, size_t cols, ValueType val) |
| Makes a dynamic matrix with constant entries. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >), D > | MakeIdentity () |
| Makes a static identity matrix. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixSizeDynamic< Rows, Cols >), D > | MakeIdentity (size_t rows) |
| Makes a dynamic identity matrix. More... | |
| template<typename... Args, typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >), D > | MakeScaleMatrix (ValueType first, Args... rest) |
| Makes scale matrix. More... | |
| template<size_t R, size_t C, typename E , typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >), D > | MakeScaleMatrix (const MatrixExpression< T, R, C, E > &expression) |
| Makes scale matrix. More... | |
| template<typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >) &&(Rows==2), D > | MakeRotationMatrix (T rad) |
| template<size_t R, size_t C, typename E , typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >) &&(Rows==3||Rows==4), D > | MakeRotationMatrix (const MatrixExpression< T, R, C, E > &axis, T rad) |
| template<size_t R, size_t C, typename E , typename D = Derived> | |
| static std::enable_if_t< IsMatrixStaticSquare< Rows, Cols >) &&(Rows==4), D > | MakeTranslationMatrix (const MatrixExpression< T, R, C, E > &t) |
| Makes translation matrix. More... | |
Protected Member Functions | |
| MatrixDenseBase ()=default | |
Member Typedef Documentation
◆ ConstReference
template<typename T, size_t Rows, size_t Cols, typename Derived>
| using CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >::ConstReference = const T& |
◆ Reference
template<typename T, size_t Rows, size_t Cols, typename Derived>
| using CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >::Reference = T& |
◆ ValueType
template<typename T, size_t Rows, size_t Cols, typename Derived>
| using CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >::ValueType = T |
Constructor & Destructor Documentation
◆ MatrixDenseBase()
template<typename T, size_t Rows, size_t Cols, typename Derived>
|
protecteddefault |
Member Function Documentation
◆ CopyFrom()
template<typename T, size_t Rows, size_t Cols, typename D >
template<size_t R, size_t C, typename E >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::CopyFrom | ( | const MatrixExpression< T, R, C, E > & | expression | ) |
Copies from generic expression.
◆ Invert()
template<typename T , size_t Rows, size_t Cols, typename D >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::Invert | ( | ) |
Inverts this matrix.
◆ MakeConstant() [1/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a static matrix with constant entries.
◆ MakeConstant() [2/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a dynamic matrix with constant entries.
◆ MakeIdentity() [1/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a static identity matrix.
◆ MakeIdentity() [2/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a dynamic identity matrix.
◆ MakeRotationMatrix() [1/2]
template<typename T, size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes rotation matrix.
- Warning
- Input angle should be radian.
◆ MakeRotationMatrix() [2/2]
template<typename T, size_t Rows, size_t Cols, typename Derived >
template<size_t R, size_t C, typename E , typename D >
|
static |
Makes rotation matrix.
- Warning
- Input angle should be radian.
◆ MakeScaleMatrix() [1/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename... Args, typename D >
|
static |
Makes scale matrix.
◆ MakeScaleMatrix() [2/2]
template<typename T, size_t Rows, size_t Cols, typename Derived >
template<size_t R, size_t C, typename E , typename D >
|
static |
Makes scale matrix.
◆ MakeTranslationMatrix()
template<typename T, size_t Rows, size_t Cols, typename Derived >
template<size_t R, size_t C, typename E , typename D >
|
static |
Makes translation matrix.
◆ MakeZero() [1/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a static matrix with zero entries.
◆ MakeZero() [2/2]
template<typename T , size_t Rows, size_t Cols, typename Derived >
template<typename D >
|
static |
Makes a dynamic matrix with zero entries.
◆ Normalize()
template<typename T , size_t Rows, size_t Cols, typename D >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::Normalize | ( | ) |
◆ operator()() [1/2]
template<typename T , size_t Rows, size_t Cols, typename D >
| MatrixDenseBase< T, Rows, Cols, D >::Reference CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::operator() | ( | size_t | i, |
| size_t | j | ||
| ) |
◆ operator()() [2/2]
template<typename T , size_t Rows, size_t Cols, typename D >
| MatrixDenseBase< T, Rows, Cols, D >::ConstReference CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::operator() | ( | size_t | i, |
| size_t | j | ||
| ) | const |
◆ operator=() [1/2]
template<typename T, size_t Rows, size_t Cols, typename Derived>
template<size_t R, size_t C, typename E >
| MatrixDenseBase& CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >::operator= | ( | const MatrixExpression< T, R, C, E > & | expression | ) |
Copies from generic expression.
◆ operator=() [2/2]
template<typename T, size_t Rows, size_t Cols, typename Derived>
template<size_t R, size_t C, typename E >
| MatrixDenseBase<T, Rows, Cols, D>& CubbyFlow::MatrixDenseBase< T, Rows, Cols, Derived >::operator= | ( | const MatrixExpression< T, R, C, E > & | expression | ) |
◆ SetColumn()
template<typename T, size_t Rows, size_t Cols, typename D >
template<size_t R, size_t C, typename E >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::SetColumn | ( | size_t | j, |
| const MatrixExpression< T, R, C, E > & | col | ||
| ) |
Sets j-th column with input vector.
◆ SetDiagonal()
template<typename T , size_t Rows, size_t Cols, typename D >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::SetDiagonal | ( | ConstReference | val | ) |
Sets diagonal elements with input scalar.
◆ SetOffDiagonal()
template<typename T , size_t Rows, size_t Cols, typename D >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::SetOffDiagonal | ( | ConstReference | val | ) |
Sets off-diagonal elements with input scalar.
◆ SetRow()
template<typename T, size_t Rows, size_t Cols, typename D >
template<size_t R, size_t C, typename E >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::SetRow | ( | size_t | i, |
| const MatrixExpression< T, R, C, E > & | row | ||
| ) |
Sets i-th row with input column vector.
◆ Transpose()
template<typename T , size_t Rows, size_t Cols, typename D >
| void CubbyFlow::MatrixDenseBase< T, Rows, Cols, D >::Transpose | ( | ) |
Transposes this matrix.
The documentation for this class was generated from the following files:
- Core/Matrix/MatrixDenseBase.hpp
- Core/Matrix/MatrixDenseBase-Impl.hpp
1.8.13