Two by two double matrix. More...
#include <Mat2x2d.h>
Public Member Functions | |
| Mat2x2d (Vec2d a, Vec2d b) | |
| Construct a Mat2x2d from two Vec2d vectors. | |
| Mat2x2d (double a, double b, double c, double d) | |
| Construct a Mat2x2f from four scalars. | |
| Mat2x2d () | |
| Construct the NAN matrix. | |
| Mat2x2d (double a) | |
| Construct a Mat2x2d from a single scalar. | |
Public Member Functions inherited from CGLA::ArithSqMat2x2Float< Vec2d, Mat2x2d > | |
| ArithSqMat2x2Float (Vec2da, Vec2db) | |
| Construct a Mat2x2f from two Vec2f vectors. | |
| ArithSqMat2x2Float (ScalarType a, ScalarType b, ScalarType c, ScalarType d) | |
| Construct a Mat2x2f from four scalars. | |
| ArithSqMat2x2Float () | |
| Construct the NAN matrix. | |
| ArithSqMat2x2Float (ScalarType a) | |
| Construct a matrix from a single scalar value. | |
Public Member Functions inherited from CGLA::ArithSqMatFloat< Vec2d, Mat2x2d, 2 > | |
| const Mat2x2d & | operator*= (const Mat2x2d &m2) noexcept |
| const Mat2x2d & | operator*= (ScalarType k) noexcept |
| void | identity () |
Public Member Functions inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS > | |
| const ScalarType * | get () const |
| ScalarType * | get () |
| const Vec2d & | operator[] (unsigned int i) const |
| Const index operator. Returns i'th row of matrix. | |
| Vec2d & | operator[] (unsigned int i) |
| Non-const index operator. Returns i'th row of matrix. | |
| bool | operator== (const Mat2x2d &v) const |
| Equality operator. | |
| bool | operator!= (const Mat2x2d &v) const |
| Inequality operator. | |
| const Mat2x2d | operator* (ScalarType k) const |
| Multiply scalar onto matrix. All entries are multiplied by scalar. | |
| const Mat2x2d | operator/ (ScalarType k) const |
| Divide all entries in matrix by scalar. | |
| const Mat2x2d & | operator*= (ScalarType k) |
| Assignment multiplication of matrix by scalar. | |
| const Mat2x2d & | operator/= (ScalarType k) |
| Assignment division of matrix by scalar. | |
| const Mat2x2d | operator+ (const Mat2x2d &m1) const |
| Add two matrices. | |
| const Mat2x2d | operator- (const Mat2x2d &m1) const |
| Subtract two matrices. | |
| const Mat2x2d | operator- () const |
| Negate matrix. | |
| const Mat2x2d & | operator+= (const Mat2x2d &v) |
| Assigment addition of matrices. | |
| const Mat2x2d & | operator-= (const Mat2x2d &v) |
| Assigment subtraction of matrices. | |
Additional Inherited Members | |
Public Types inherited from CGLA::ArithSqMat2x2Float< Vec2d, Mat2x2d > | |
| typedef Vec2d | VectorType |
| Vector type. | |
| typedef Vec2d::ScalarType | ScalarType |
| The type of a matrix element. | |
Public Types inherited from CGLA::ArithSqMatFloat< Vec2d, Mat2x2d, 2 > | |
| typedef Vec2d | VectorType |
| Vector type. | |
| typedef Vec2d::ScalarType | ScalarType |
| The type of a matrix element. | |
Public Types inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS > | |
| typedef Vec2d | HVectorType |
| Horizontal vector type. | |
| typedef Vec2d | VVectorType |
| Vertical vector type. | |
| typedef Vec2d::ScalarType | ScalarType |
| The type of a matrix element. | |
Static Public Member Functions inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS > | |
| static unsigned int | get_v_dim () |
| Get vertical dimension of matrix. | |
| static unsigned int | get_h_dim () |
| Get horizontal dimension of matrix. | |
Protected Member Functions inherited from CGLA::ArithSqMatFloat< Vec2d, Mat2x2d, 2 > | |
| ArithSqMatFloat () noexcept | |
| Construct 0 matrix. | |
| ArithSqMatFloat (ScalarType _a) noexcept | |
| Construct matrix where all values are equal to constructor argument. | |
| ArithSqMatFloat (Vec2d_a, Vec2d_b) noexcept | |
| Construct 2x2 Matrix from two vectors. | |
| ArithSqMatFloat (Vec2d_a, Vec2d_b, Vec2d_c) noexcept | |
| Construct 3x3 Matrix from three vectors. | |
| ArithSqMatFloat (Vec2d_a, Vec2d_b, Vec2d_c, Vec2d_d) noexcept | |
| Construct 4x4 Matrix from four vectors. | |
Protected Member Functions inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS > | |
| ArithMatFloat () | |
| Construct 0 matrix. | |
| ArithMatFloat (ScalarType x) | |
| Construct a matrix where all entries are the same. | |
| ArithMatFloat (Vec2d_a) | |
| Construct a matrix where all rows are the same. | |
| ArithMatFloat (Vec2d_a, Vec2d_b) | |
| Construct a matrix with two rows. | |
| ArithMatFloat (Vec2d_a, Vec2d_b, Vec2d_c) | |
| Construct a matrix with three rows. | |
| ArithMatFloat (Vec2d_a, Vec2d_b, Vec2d_c, Vec2d_d) | |
| Construct a matrix with four rows. | |
Protected Attributes inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS > | |
| Vec2d | data [ROWS] |
| The actual contents of the matrix. | |
Two by two double matrix.
This class is useful for various vector transformations in the plane.
1.8.6