DSC
 All Classes Namespaces Files Functions Variables Typedefs Friends Macros
Public Member Functions | List of all members
CGLA::Mat2x2d Class Reference

Two by two double matrix. More...

#include <Mat2x2d.h>

Inheritance diagram for CGLA::Mat2x2d:
CGLA::ArithSqMat2x2Float< Vec2d, Mat2x2d > CGLA::ArithSqMatFloat< Vec2d, Mat2x2d, 2 > CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS >

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 Mat2x2doperator*= (const Mat2x2d &m2) noexcept
 
const Mat2x2doperator*= (ScalarType k) noexcept
 
void identity ()
 
- Public Member Functions inherited from CGLA::ArithMatFloat< Vec2d, Vec2d, Mat2x2d, ROWS >
const ScalarTypeget () const
 
ScalarTypeget ()
 
const Vec2doperator[] (unsigned int i) const
 Const index operator. Returns i'th row of matrix.
 
Vec2doperator[] (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 Mat2x2doperator*= (ScalarType k)
 Assignment multiplication of matrix by scalar.
 
const Mat2x2doperator/= (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 Mat2x2doperator+= (const Mat2x2d &v)
 Assigment addition of matrices.
 
const Mat2x2doperator-= (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.
 

Detailed Description

Two by two double matrix.

This class is useful for various vector transformations in the plane.


The documentation for this class was generated from the following file: