Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes

mln::algebra::h_mat< d, T > Struct Template Reference

N-Dimensional matrix with homogeneous coordinates. More...

#include <h_mat.hh>

Inheritance diagram for mln::algebra::h_mat< d, T >:
Inheritance graph

List of all members.

Public Types

enum  
enum  { N = d, M = d, dim = d * d }
 

Dimension is the 'natural' one (3 for 3D), not the one of the vector (dim + 1).

More...
typedef Object< void > category
typedef T coord
typedef mat< n, m, T > exact_t

Public Member Functions

mat< n, m, T > _1 () const
 Return the inverse of the matrix.
 h_mat ()
 Constructor without argument.
 h_mat (const mat< d+1, d+1, T > &x)
 Constructor with the underlying matrix.
T & operator() (unsigned i, unsigned j)
const T & operator() (unsigned i, unsigned j) const
void set_all (const T &val)
unsigned size () const
mat< m, n, T > t () const
 Return the transpose of the matrix.

Static Public Member Functions

static mat identity ()

Static Public Attributes

static const mat< n, m, T > Id

Detailed Description

template<unsigned d, typename T>
struct mln::algebra::h_mat< d, T >

N-Dimensional matrix with homogeneous coordinates.

Definition at line 49 of file algebra/h_mat.hh.


Member Typedef Documentation

typedef Object<void> mln::Object< mat< n, m, T > >::category [inherited]

Definition at line 174 of file object.hh.

typedef T mln::algebra::mat< n, m, T >::coord [inherited]

Definition at line 89 of file algebra/mat.hh.

typedef mat< n, m, T > mln::Object< mat< n, m, T > >::exact_t [inherited]

Definition at line 173 of file object.hh.


Member Enumeration Documentation

anonymous enum [inherited]

Definition at line 90 of file algebra/mat.hh.

template<unsigned d, typename T>
anonymous enum

Dimension is the 'natural' one (3 for 3D), not the one of the vector (dim + 1).

Enumerator:
N 
M 
dim 

Definition at line 52 of file algebra/h_mat.hh.


Constructor & Destructor Documentation

template<unsigned d, typename T >
mln::algebra::h_mat< d, T >::h_mat (  )  [inline]

Constructor without argument.

Definition at line 67 of file algebra/h_mat.hh.

template<unsigned d, typename T>
mln::algebra::h_mat< d, T >::h_mat ( const mat< d+1, d+1, T > &  x  )  [inline]

Constructor with the underlying matrix.

Definition at line 74 of file algebra/h_mat.hh.


Member Function Documentation

mat<n,m,T> mln::algebra::mat< n, m, T >::_1 (  )  const [inherited]

Return the inverse of the matrix.

Only compile on square matrix.

static mat mln::algebra::mat< n, m, T >::identity (  )  [static, inherited]
const T& mln::algebra::mat< n, m, T >::operator() ( unsigned  i,
unsigned  j 
) const [inherited]
T& mln::algebra::mat< n, m, T >::operator() ( unsigned  i,
unsigned  j 
) [inherited]
void mln::algebra::mat< n, m, T >::set_all ( const T &  val  )  [inherited]
unsigned mln::algebra::mat< n, m, T >::size (  )  const [inherited]
mat<m,n,T> mln::algebra::mat< n, m, T >::t (  )  const [inherited]

Return the transpose of the matrix.


Member Data Documentation

const mat<n,m,T> mln::algebra::mat< n, m, T >::Id [static, inherited]

Definition at line 94 of file algebra/mat.hh.