$extrastylesheet
Olena  User documentation 2.1
An Image Processing Platform
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
mln::algebra::h_vec< d, C > Class Template Reference

#include <mln/algebra/h_vec.hh>

Public Member Functions

 h_vec ()
 h_vec (const vec< d+1, C > &other)
const vec< n, C > & normalize ()
 operator mat< n, 1, U > () const
h_vecoperator= (const vec< d+1, C > &rhs)
const C & operator[] (unsigned i) const
C & operator[] (unsigned i)
void set_all (const C &val)
unsigned size () const
mat< 1, n, C > t () const
algebra::h_vec< n, C > to_h_vec () const
vec< d, C > to_vec () const

Static Public Attributes

static const vec< n, C > origin
static const vec< n, C > zero

Protected Attributes

data_ [n]

Public Types

enum  
enum  { dim = d }
typedef Object< void > category
typedef C coord
typedef C enc [n]
typedef C equiv [n]
typedef vec< n, C > exact_t

Detailed Description

template<unsigned d, typename C>
class mln::algebra::h_vec< d, C >

N-Dimensional vector with homogeneous coordinates.

Definition at line 94 of file h_vec.hh.

Constructor & Destructor Documentation

template<unsigned d, typename C>
mln::algebra::h_vec< d, C >::h_vec ( )

Constructor without argument.

template<unsigned d, typename C>
mln::algebra::h_vec< d, C >::h_vec ( const vec< d+1, C > &  other)

Constructor with the underlying vector.

Member Function Documentation

const vec<n, C >& mln::algebra::vec< n, C >::normalize ( )
inherited
mln::algebra::vec< n, C >::operator mat< n, 1, U > ( ) const
inherited

Conversion to a matrix.

template<unsigned d, typename C>
h_vec& mln::algebra::h_vec< d, C >::operator= ( const vec< d+1, C > &  rhs)
const C & mln::algebra::vec< n, C >::operator[] ( unsigned  i) const
inherited
C & mln::algebra::vec< n, C >::operator[] ( unsigned  i)
inherited
void mln::algebra::vec< n, C >::set_all ( const C &  val)
inherited
unsigned mln::algebra::vec< n, C >::size ( ) const
inherited
mat<1, n, C > mln::algebra::vec< n, C >::t ( ) const
inherited

Transposition.

algebra::h_vec<n, C > mln::algebra::vec< n, C >::to_h_vec ( ) const
inherited
template<unsigned d, typename C>
vec<d,C> mln::algebra::h_vec< d, C >::to_vec ( ) const

Back to the natural (non-homogeneous) space.

Member Data Documentation

C mln::algebra::internal::vec_base_< n, C >::data_[n]
protectedinherited

Definition at line 120 of file algebra/vec.hh.

const vec<n, C > mln::algebra::vec< n, C >::origin
staticinherited

Origin value.

Definition at line 258 of file algebra/vec.hh.

const vec<n, C > mln::algebra::vec< n, C >::zero
staticinherited

Zero value.

Definition at line 255 of file algebra/vec.hh.

Member Typedef Documentation

typedef Object<void> mln::Object< vec< n, C > >::category
inherited

Definition at line 106 of file object.hh.

typedef C mln::algebra::vec< n, C >::coord
inherited

Definition at line 197 of file algebra/vec.hh.

typedef C mln::algebra::vec< n, C >::enc[n]
inherited

Definition at line 195 of file algebra/vec.hh.

typedef C mln::algebra::vec< n, C >::equiv[n]
inherited

Definition at line 194 of file algebra/vec.hh.

typedef vec< n, C > mln::Object< vec< n, C > >::exact_t
inherited

Definition at line 105 of file object.hh.

Member Enumeration Documentation

anonymous enum
inherited

Definition at line 198 of file algebra/vec.hh.

template<unsigned d, typename C>
anonymous enum

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

Enumerator:
dim 

Definition at line 98 of file h_vec.hh.