OpenStructure
Public Member Functions | Static Public Member Functions
Mat4 Class Reference

#include <mat4.hh>

Public Member Functions

 Mat4 ()
 Mat4 (Real i00, Real i01, Real i02, Real i03, Real i10, Real i11, Real i12, Real i13, Real i20, Real i21, Real i22, Real i23, Real i30, Real i31, Real i32, Real i33)
 Mat4 (const Mat4 &m)
 Mat4 (const Mat2 &m)
 Mat4 (const Mat3 &m)
 Mat4 (const float[16])
 Mat4 (const double[16])
Mat4operator= (const Mat4 &m)
bool operator== (const Mat4 &rhs) const
Realoperator() (std::size_t r, std::size_t c)
const Realoperator() (std::size_t r, std::size_t c) const
Mat4operator+= (const Mat4 &rhs)
Mat4operator-= (const Mat4 &rhs)
Mat4operator*= (const Real d)
Mat4operator/= (const Real d)
Mat4operator*= (const Mat4 &m)
Mat3 ExtractRotation () const
void PasteRotation (const Mat3 &m)
Vec3 ExtractTranslation () const
void PasteTranslation (const Vec3 &v)
RealData ()
const RealData () const

Static Public Member Functions

static Mat4 Identity ()

Detailed Description

Definition at line 36 of file mat4.hh.


Constructor & Destructor Documentation

Mat4 ( )

Default initialization, identity matrix.

Mat4 ( Real  i00,
Real  i01,
Real  i02,
Real  i03,
Real  i10,
Real  i11,
Real  i12,
Real  i13,
Real  i20,
Real  i21,
Real  i22,
Real  i23,
Real  i30,
Real  i31,
Real  i32,
Real  i33 
)

In with 16 values in row-major order.

row-major order means that the matrix

| a b c d | | e f g h | | i j k l | | m n o p |

is initialized with (a,b,c,d, e,f,g,h, i,j,k,l, m,n,o,p)

Mat4 ( const Mat4 m)

Copy ctor.

Mat4 ( const Mat2 m)
explicit

implicit initialization from mat2

Mat4 ( const Mat3 m)
explicit

implicit initialization from mat3

Mat4 ( const float  [16])
explicit

initialization from array

Mat4 ( const double  [16])
explicit

Member Function Documentation

Real* Data ( )
inline

Definition at line 100 of file mat4.hh.

const Real* Data ( ) const
inline

Definition at line 101 of file mat4.hh.

Mat3 ExtractRotation ( ) const
Vec3 ExtractTranslation ( ) const
static Mat4 Identity ( )
static
Real& operator() ( std::size_t  r,
std::size_t  c 
)

element access

const Real& operator() ( std::size_t  r,
std::size_t  c 
) const

const element access

Mat4& operator*= ( const Real  d)
Mat4& operator*= ( const Mat4 m)
Mat4& operator+= ( const Mat4 rhs)

addable op

Mat4& operator-= ( const Mat4 rhs)

subtractable op

Mat4& operator/= ( const Real  d)
Mat4& operator= ( const Mat4 m)

assignement op

bool operator== ( const Mat4 rhs) const

comparable

void PasteRotation ( const Mat3 m)
void PasteTranslation ( const Vec3 v)

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