SpinParser  1.0
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
geometry::Mat3< T > Struct Template Reference

3x3 dimensional matrix. More...

#include <Geometry.hpp>

Public Member Functions

 Mat3 ()
 Construct a new Mat3 with uninitialized values.
 
 Mat3 (const T &m)
 Construct a new Mat3 and initialize all entries with the same value. More...
 
 Mat3 (const Vec3< T > &a0, const Vec3< T > &a1, const Vec3< T > &a2)
 Construct a new Mat3 object and initialize the column vectors. More...
 
 Mat3 (const T &m00, const T &m01, const T &m02, const T &m10, const T &m11, const T &m12, const T &m20, const T &m21, const T &m22)
 Construct a new Mat3 object and initialize entries. More...
 
determinant () const
 Calculate the determinant of a Mat3 object. More...
 
Mat3< T > inverse () const
 Calculate the inverse of a matrix. More...
 

Static Public Member Functions

static Mat3< T > identity ()
 Generate a 3x3 identity matrix. More...
 

Public Attributes

data [3][3]
 Matrix entries in row-major order.
 

Detailed Description

template<typename T>
struct geometry::Mat3< T >

3x3 dimensional matrix.

Template Parameters
TUnderlying fundamental data type.

Constructor & Destructor Documentation

◆ Mat3() [1/3]

template<typename T >
geometry::Mat3< T >::Mat3 ( const T &  m)
inline

Construct a new Mat3 and initialize all entries with the same value.

Parameters
mValue to initialize entries.

◆ Mat3() [2/3]

template<typename T >
geometry::Mat3< T >::Mat3 ( const Vec3< T > &  a0,
const Vec3< T > &  a1,
const Vec3< T > &  a2 
)
inline

Construct a new Mat3 object and initialize the column vectors.

Parameters
a0First column vector.
a1Second column vector.
a2Third column vector.

◆ Mat3() [3/3]

template<typename T >
geometry::Mat3< T >::Mat3 ( const T &  m00,
const T &  m01,
const T &  m02,
const T &  m10,
const T &  m11,
const T &  m12,
const T &  m20,
const T &  m21,
const T &  m22 
)
inline

Construct a new Mat3 object and initialize entries.

Parameters
m00Top left entry.
m01Top middle entry.
m02Top right entry.
m10Middle left entry.
m11Middle middle entry.
m12Middle right entry.
m20Bottom left entry.
m21Bottom middle entry.
m22Bottom right entry.

Member Function Documentation

◆ determinant()

template<typename T >
T geometry::Mat3< T >::determinant ( ) const
inline

Calculate the determinant of a Mat3 object.

Returns
T Value of the determinant.

◆ identity()

template<typename T >
static Mat3<T> geometry::Mat3< T >::identity ( )
inlinestatic

Generate a 3x3 identity matrix.

Returns
Mat3<T> Identity matrix.

◆ inverse()

template<typename T >
Mat3<T> geometry::Mat3< T >::inverse ( ) const
inline

Calculate the inverse of a matrix.

Returns
Mat3<T> Inverse matrix.

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