DSC
 All Classes Namespaces Files Functions Variables Typedefs Friends Macros
Public Types | Public Member Functions | List of all members
CGLA::ArithSqMat2x2Float< V, M > Class Template Reference

Two by two float matrix template. More...

#include <ArithSqMat2x2Float.h>

Inheritance diagram for CGLA::ArithSqMat2x2Float< V, M >:
CGLA::ArithSqMatFloat< V, M, 2 > CGLA::ArithMatFloat< V, V, M, ROWS >

Public Types

typedef V VectorType
 Vector type.
 
typedef V::ScalarType ScalarType
 The type of a matrix element.
 
- Public Types inherited from CGLA::ArithSqMatFloat< V, M, 2 >
typedef V VectorType
 Vector type.
 
typedef V::ScalarType ScalarType
 The type of a matrix element.
 
- Public Types inherited from CGLA::ArithMatFloat< V, V, M, ROWS >
typedef V HVectorType
 Horizontal vector type.
 
typedef V VVectorType
 Vertical vector type.
 
typedef V::ScalarType ScalarType
 The type of a matrix element.
 

Public Member Functions

 ArithSqMat2x2Float (V a, V b)
 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< V, M, 2 >
const M & operator*= (const M &m2) noexcept
 
const M & operator*= (ScalarType k) noexcept
 
void identity ()
 
- Public Member Functions inherited from CGLA::ArithMatFloat< V, V, M, ROWS >
const ScalarTypeget () const
 
ScalarTypeget ()
 
const V & operator[] (unsigned int i) const
 Const index operator. Returns i'th row of matrix.
 
V & operator[] (unsigned int i)
 Non-const index operator. Returns i'th row of matrix.
 
bool operator== (const M &v) const
 Equality operator.
 
bool operator!= (const M &v) const
 Inequality operator.
 
const M operator* (ScalarType k) const
 Multiply scalar onto matrix. All entries are multiplied by scalar.
 
const M operator/ (ScalarType k) const
 Divide all entries in matrix by scalar.
 
const M & operator*= (ScalarType k)
 Assignment multiplication of matrix by scalar.
 
const M & operator/= (ScalarType k)
 Assignment division of matrix by scalar.
 
const M operator+ (const M &m1) const
 Add two matrices.
 
const M operator- (const M &m1) const
 Subtract two matrices.
 
const M operator- () const
 Negate matrix.
 
const M & operator+= (const M &v)
 Assigment addition of matrices.
 
const M & operator-= (const M &v)
 Assigment subtraction of matrices.
 

Additional Inherited Members

- Static Public Member Functions inherited from CGLA::ArithMatFloat< V, V, M, 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< V, M, 2 >
 ArithSqMatFloat () noexcept
 Construct 0 matrix.
 
 ArithSqMatFloat (ScalarType _a) noexcept
 Construct matrix where all values are equal to constructor argument.
 
 ArithSqMatFloat (V_a, V_b) noexcept
 Construct 2x2 Matrix from two vectors.
 
 ArithSqMatFloat (V_a, V_b, V_c) noexcept
 Construct 3x3 Matrix from three vectors.
 
 ArithSqMatFloat (V_a, V_b, V_c, V_d) noexcept
 Construct 4x4 Matrix from four vectors.
 
- Protected Member Functions inherited from CGLA::ArithMatFloat< V, V, M, ROWS >
 ArithMatFloat ()
 Construct 0 matrix.
 
 ArithMatFloat (ScalarType x)
 Construct a matrix where all entries are the same.
 
 ArithMatFloat (V_a)
 Construct a matrix where all rows are the same.
 
 ArithMatFloat (V_a, V_b)
 Construct a matrix with two rows.
 
 ArithMatFloat (V_a, V_b, V_c)
 Construct a matrix with three rows.
 
 ArithMatFloat (V_a, V_b, V_c, V_d)
 Construct a matrix with four rows.
 
- Protected Attributes inherited from CGLA::ArithMatFloat< V, V, M, ROWS >
data [ROWS]
 The actual contents of the matrix.
 

Detailed Description

template<class V, class M>
class CGLA::ArithSqMat2x2Float< V, M >

Two by two float matrix template.

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


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