Public Member Functions | Static Public Member Functions
rtc::SMat3< T > Class Template Reference

#include <rtcSMat3.h>

Inheritance diagram for rtc::SMat3< T >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

det () const
int invert ()
SMat3< T > inverted () const
void set (const T x11, const T x12, const T x13, const T x21, const T x22, const T x23, const T x31, const T x32, const T x33)
void setCols (const Vec3< T > &v0, const Vec3< T > &v1, const Vec3< T > &v2)
void setRows (const Vec3< T > &v0, const Vec3< T > &v1, const Vec3< T > &v2)
 SMat3 ()
 SMat3 (const T *d)
 SMat3 (const T diagVal)
 SMat3 (const Vec3< T > &diagVec)
 SMat3 (const Mat< T, 3, 3 > &m)
 SMat3 (const T x11, const T x12, const T x13, const T x21, const T x22, const T x23, const T x31, const T x32, const T x33)
 SMat3 (const Vec3< T > &q0, const Vec3< T > &q1, const Vec3< T > &q2)
template<class U >
 SMat3 (const Mat< U, 3, 3 > &m)

Static Public Member Functions

static SMat3< T > fromCols (const Vec3< T > &v0, const Vec3< T > &v1, const Vec3< T > &v2)
static SMat3< T > fromRows (const Vec3< T > &v0, const Vec3< T > &v1, const Vec3< T > &v2)

Detailed Description

template<class T>
class rtc::SMat3< T >

A 3x3 matrix. A specialization of a square matrix.

Definition at line 40 of file rtcSMat3.h.


Constructor & Destructor Documentation

template<class T >
rtc::SMat3< T >::SMat3 ( ) [inline]

Ctor that doesn't initialize anything.

Definition at line 94 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const T *  d) [inline]

Ctor that initializes from an array.

Parameters:
dthe (row major) data array of length 4

Definition at line 100 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const T  diagVal) [inline]

Ctor that makes a multiple of the identity matrix.

Parameters:
diagValthe value to which all diagonal entries will be set

Definition at line 106 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const Vec3< T > &  diagVec) [inline]

Ctor that makes a (mostly) zero matrix with diagonal entries from vec.

Parameters:
diagVecthe vector of values that should appear on the diagonal

Definition at line 112 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const Mat< T, 3, 3 > &  m) [inline]

Ctor that initializes from a Mat<T,3,3>.

Definition at line 117 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const T  x11,
const T  x12,
const T  x13,
const T  x21,
const T  x22,
const T  x23,
const T  x31,
const T  x32,
const T  x33 
) [inline]

Ctor that initializes matrix entries directly.

Definition at line 122 of file rtcSMat3.h.

template<class T >
rtc::SMat3< T >::SMat3 ( const Vec3< T > &  v0,
const Vec3< T > &  v1,
const Vec3< T > &  v2 
) [inline]

Ctor that initializes matrix from columns.

Definition at line 131 of file rtcSMat3.h.

template<class T >
template<class U >
rtc::SMat3< T >::SMat3 ( const Mat< U, 3, 3 > &  m) [inline]

Casting Ctor that initializes from a Mat<U,3,3> with type cast

Definition at line 141 of file rtcSMat3.h.


Member Function Documentation

template<class T >
T rtc::SMat3< T >::det ( ) const [inline]

Calculate determinant.

Reimplemented from rtc::SMat< T, 3 >.

Definition at line 199 of file rtcSMat3.h.

template<class T >
SMat3< T > rtc::SMat3< T >::fromCols ( const Vec3< T > &  v0,
const Vec3< T > &  v1,
const Vec3< T > &  v2 
) [inline, static]

Create matrix from columns.

Definition at line 158 of file rtcSMat3.h.

template<class T >
SMat3< T > rtc::SMat3< T >::fromRows ( const Vec3< T > &  v0,
const Vec3< T > &  v1,
const Vec3< T > &  v2 
) [inline, static]

Create matrix from rows.

Definition at line 148 of file rtcSMat3.h.

template<class T >
int rtc::SMat3< T >::invert ( ) [inline]

Perform inverse in place

Reimplemented from rtc::SMat< T, 3 >.

Definition at line 225 of file rtcSMat3.h.

template<class T >
SMat3< T > rtc::SMat3< T >::inverted ( ) const [inline]

Invert the matrix. (matrix set to its inverse)

Todo:
consider throwing exception instead

Reimplemented from rtc::SMat< T, 3 >.

Reimplemented in rtc::Transform2D< T >.

Definition at line 209 of file rtcSMat3.h.

template<class T >
void rtc::SMat3< T >::set ( const T  x11,
const T  x12,
const T  x13,
const T  x21,
const T  x22,
const T  x23,
const T  x31,
const T  x32,
const T  x33 
) [inline]

Set matrix given entries directly.

Definition at line 170 of file rtcSMat3.h.

template<class T >
void rtc::SMat3< T >::setCols ( const Vec3< T > &  v0,
const Vec3< T > &  v1,
const Vec3< T > &  v2 
) [inline]

Set the columns of the matrix.

Definition at line 189 of file rtcSMat3.h.

template<class T >
void rtc::SMat3< T >::setRows ( const Vec3< T > &  v0,
const Vec3< T > &  v1,
const Vec3< T > &  v2 
) [inline]

Set the rows of the matrix.

Definition at line 181 of file rtcSMat3.h.


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


rtc
Author(s): Benjamin Pitzer
autogenerated on Mon Oct 6 2014 10:07:35