Blender V4.3
Freestyle::VecMat::Matrix< T, M, N > Class Template Reference

#include <VecMat.h>

Inherited by Freestyle::VecMat::SquareMatrix< uint, 2 >, Freestyle::VecMat::SquareMatrix< int, 2 >, Freestyle::VecMat::SquareMatrix< float, 2 >, Freestyle::VecMat::SquareMatrix< double, 2 >, Freestyle::VecMat::SquareMatrix< real, 2 >, Freestyle::VecMat::SquareMatrix< uint, 3 >, Freestyle::VecMat::SquareMatrix< int, 3 >, Freestyle::VecMat::SquareMatrix< float, 3 >, Freestyle::VecMat::SquareMatrix< double, 3 >, Freestyle::VecMat::SquareMatrix< real, 3 >, Freestyle::VecMat::SquareMatrix< uint, 4 >, Freestyle::VecMat::SquareMatrix< int, 4 >, Freestyle::VecMat::SquareMatrix< float, 4 >, Freestyle::VecMat::SquareMatrix< double, 4 >, and Freestyle::VecMat::SquareMatrix< real, 4 >.

Public Types

typedef T value_type

Public Member Functions

 Matrix ()
 ~Matrix ()
template<class U>
 Matrix (const U tab[_SIZE])
template<class U>
 Matrix (const std::vector< U > &tab)
template<class U>
 Matrix (const Matrix< U, M, N > &m)
value_type operator() (const uint i, const uint j) const
value_typeoperator() (const uint i, const uint j)
Matrix< T, M, N > & transpose () const
template<class U>
Matrix< T, M, N > & operator= (const Matrix< U, M, N > &m)
template<class U>
Matrix< T, M, N > & operator+= (const Matrix< U, M, N > &m)
template<class U>
Matrix< T, M, N > & operator-= (const Matrix< U, M, N > &m)
template<class U>
Matrix< T, M, N > & operator*= (const U lambda)
template<class U>
Matrix< T, M, N > & operator/= (const U lambda)

Static Public Member Functions

static uint rows ()
static uint cols ()

Protected Attributes

value_type _coord [_SIZE]

Detailed Description

template<class T, uint M, uint N>
class Freestyle::VecMat::Matrix< T, M, N >

Definition at line 611 of file VecMat.h.

Member Typedef Documentation

◆ value_type

template<class T, uint M, uint N>
typedef T Freestyle::VecMat::Matrix< T, M, N >::value_type

Definition at line 613 of file VecMat.h.

Constructor & Destructor Documentation

◆ Matrix() [1/4]

◆ ~Matrix()

template<class T, uint M, uint N>
Freestyle::VecMat::Matrix< T, M, N >::~Matrix ( )
inline

Definition at line 622 of file VecMat.h.

References M, and N.

◆ Matrix() [2/4]

template<class T, uint M, uint N>
template<class U>
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const U tab[_SIZE])
inlineexplicit

Definition at line 628 of file VecMat.h.

References _SIZE, and U.

◆ Matrix() [3/4]

template<class T, uint M, uint N>
template<class U>
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const std::vector< U > & tab)
inlineexplicit

Definition at line 635 of file VecMat.h.

References _SIZE.

◆ Matrix() [4/4]

template<class T, uint M, uint N>
template<class U>
Freestyle::VecMat::Matrix< T, M, N >::Matrix ( const Matrix< U, M, N > & m)
inline

Definition at line 642 of file VecMat.h.

References M, Matrix(), N, and T.

Member Function Documentation

◆ cols()

template<class T, uint M, uint N>
uint Freestyle::VecMat::Matrix< T, M, N >::cols ( )
inlinestatic

Definition at line 666 of file VecMat.h.

References N.

◆ operator()() [1/2]

template<class T, uint M, uint N>
value_type & Freestyle::VecMat::Matrix< T, M, N >::operator() ( const uint i,
const uint j )
inline

Definition at line 656 of file VecMat.h.

References N.

◆ operator()() [2/2]

template<class T, uint M, uint N>
value_type Freestyle::VecMat::Matrix< T, M, N >::operator() ( const uint i,
const uint j ) const
inline

Definition at line 651 of file VecMat.h.

References N.

◆ operator*=()

template<class T, uint M, uint N>
template<class U>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::operator*= ( const U lambda)
inline

Definition at line 715 of file VecMat.h.

References M, Matrix(), N, and U.

◆ operator+=()

template<class T, uint M, uint N>
template<class U>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::operator+= ( const Matrix< U, M, N > & m)
inline

Definition at line 695 of file VecMat.h.

References M, Matrix(), N, and T.

◆ operator-=()

template<class T, uint M, uint N>
template<class U>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::operator-= ( const Matrix< U, M, N > & m)
inline

Definition at line 705 of file VecMat.h.

References M, Matrix(), N, and T.

◆ operator/=()

template<class T, uint M, uint N>
template<class U>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::operator/= ( const U lambda)
inline

Definition at line 725 of file VecMat.h.

References M, Matrix(), N, and U.

◆ operator=()

template<class T, uint M, uint N>
template<class U>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::operator= ( const Matrix< U, M, N > & m)
inline

Definition at line 683 of file VecMat.h.

References M, Matrix(), N, and T.

◆ rows()

template<class T, uint M, uint N>
uint Freestyle::VecMat::Matrix< T, M, N >::rows ( )
inlinestatic

Definition at line 661 of file VecMat.h.

References M.

◆ transpose()

template<class T, uint M, uint N>
Matrix< T, M, N > & Freestyle::VecMat::Matrix< T, M, N >::transpose ( ) const
inline

Definition at line 671 of file VecMat.h.

References M, Matrix(), and N.

Member Data Documentation

◆ _coord

template<class T, uint M, uint N>
value_type Freestyle::VecMat::Matrix< T, M, N >::_coord[_SIZE]
protected

Definition at line 738 of file VecMat.h.


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