|
homog2d library
|
A simple wrapper over a 3x3 matrix, provides root functionalities. More...
#include <homog2d.hpp>


Public Member Functions | |
| HOMOG2D_INUMTYPE | determ () const |
| Return determinant of matrix. More... | |
| matrix_t< FPT > & | getRaw () |
| const matrix_t< FPT > & | getRaw () const |
| Matrix_ & | inverse () |
| Inverse matrix. More... | |
| bool | isNormalized () const |
| Matrix_ () | |
| Constructor. More... | |
| template<typename FPT2 > | |
| Matrix_ (const Matrix_< FPT2 > &other) | |
| Copy-Constructor. More... | |
| template<typename T > | |
| void | set (size_t r, size_t c, T v) |
| Matrix_ & | transpose () |
| Transpose and return matrix. More... | |
| const FPT & | value (size_t r, size_t c) const |
| FPT & | value (size_t r, size_t c) |
Public Member Functions inherited from h2d::detail::Common< FPT > | |
| std::pair< int, int > | dsize () const |
| Get data size expressed as number of bits for, respectively, mantissa and exponent. More... | |
| Dtype | dtype () const |
| Get numerical data type as a Dtype value, can be stringified with h2d::getString(Dtype) More... | |
| template<typename T > | |
| constexpr bool | isInside (const Common< T > &) const |
| This function is a fallback for all sub-classes that do not provide such a method. More... | |
| size_t | size () const |
Protected Member Functions | |
| template<typename FPT2 > | |
| void | p_divideAll (detail::Matrix_< FPT > &mat, FPT2 value) const |
Divide all elements of mat by value. More... | |
| void | p_divideBy (size_t r, size_t c) const |
| Divide all elements by the value at (r,c), used for normalization. More... | |
| void | p_fillEye () |
| template<typename T > | |
| void | p_fillWith (const T &in) |
| void | p_fillZero () |
| void | p_normalizeMat (int r, int c) const |
Protected Attributes | |
| bool | _isNormalized = false |
| matrix_t< FPT > | _mdata |
Friends | |
| template<typename T > | |
| class | Matrix_ |
| template<typename T1 , typename T2 > | |
| Matrix_< T1 > | operator* (const Matrix_< T1 > &, const Matrix_< T2 > &) |
| std::ostream & | operator<< (std::ostream &f, const Matrix_ &h) |
| template<typename T1 , typename T2 , typename FPT1 , typename FPT2 > | |
| void | product (base::LPBase< T1, FPT1 > &, const detail::Matrix_< FPT2 > &, const base::LPBase< T2, FPT1 > &) |
| Implementation of product 3x3 by 3x1. More... | |
| template<typename FPT1 , typename FPT2 , typename FPT3 > | |
| void | product (Matrix_< FPT1 > &, const Matrix_< FPT2 > &, const Matrix_< FPT3 > &) |
| Implementation of product 3x3 by 3x3. More... | |
A simple wrapper over a 3x3 matrix, provides root functionalities.
Homogeneous (thus the 'mutable' attribute).
Common, which is designed to be inherited geometric primitives and as such holds member function that cannot be used on a matrix ! (example: isInside() )
|
inline |
Constructor.
|
inline |
Copy-Constructor.
|
inline |
|
inline |

|
inline |
|
inline |
Inverse matrix.

|
inline |

|
inlineprotected |
Divide all elements of mat by value.
|
inlineprotected |
Divide all elements by the value at (r,c), used for normalization.
No need to check value, done by caller
|
inlineprotected |

|
inlineprotected |

|
inlineprotected |
|
inlineprotected |

|
inline |

|
inline |
Transpose and return matrix.

|
inline |

|
inline |
|
friend |
|
friend |
|
friend |
Implementation of product 3x3 by 3x1.
|
friend |
Implementation of product 3x3 by 3x3.
|
mutableprotected |
|
mutableprotected |
1.8.13