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

mln::fun::x2x::translation< n, C > Struct Template Reference

Translation function-object. More...

#include <translation.hh>

Inheritance diagram for mln::fun::x2x::translation< n, C >:
Inheritance graph

List of all members.

Public Types

typedef algebra::vec< n, C > argument
typedef Function_v2v< void > category
typedef algebra::vec< n, C >::coord coord
typedef translation< n, C > exact_t
typedef translation< n, C > invert
 Type of the inverse function.
typedef algebra::h_mat< dim,
coord
matrix
typedef void mutable_result
typedef algebra::vec< n, C > result

Public Member Functions

invert inv () const
 Return the inverse function.
const matrixmat () const
algebra::vec< n, C > operator() (const algebra::vec< n, C > &v) const
 Perform the translation of the given vector.
algebra::vec< n, C > operator() (const algebra::vec< n, C > &x) const
void set_t (const algebra::vec< n, C > &t)
 Set a net translation vector.
const algebra::vec< n, C > & t () const
 Return the translation vector.
 translation (const algebra::vec< n, C > &t)
 Constructor with the translation vector.
 translation ()
 Constructor without argument.

Static Public Attributes

static const unsigned dim

Protected Member Functions

void update ()

Protected Attributes

matrix m_
algebra::vec< n, C > t_

Detailed Description

template<unsigned n, typename C>
struct mln::fun::x2x::translation< n, C >

Translation function-object.


Member Typedef Documentation

typedef algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::argument [inherited]
typedef Function_v2v<void> mln::Function_v2v< translation< n, C > >::category [inherited]
typedef algebra::vec< n, C > ::coord mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::coord [inherited]
typedef translation< n, C > mln::Object< translation< n, C > >::exact_t [inherited]
template<unsigned n, typename C>
typedef translation<n,C> mln::fun::x2x::translation< n, C >::invert

Type of the inverse function.

typedef void mln::Function_v2v< translation< n, C > >::mutable_result [inherited]
typedef algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::result [inherited]

Constructor & Destructor Documentation

template<unsigned n, typename C >
mln::fun::x2x::translation< n, C >::translation (  )  [inline]

Constructor without argument.

template<unsigned n, typename C >
mln::fun::x2x::translation< n, C >::translation ( const algebra::vec< n, C > &  t  )  [inline]

Constructor with the translation vector.

References mln::fun::x2x::translation< n, C >::update().


Member Function Documentation

template<unsigned n, typename C >
translation< n, C > mln::fun::x2x::translation< n, C >::inv (  )  const [inline]

Return the inverse function.

References mln::fun::x2x::translation< n, C >::t_.

const matrix& mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::mat (  )  const [inherited]
template<unsigned n, typename C >
algebra::vec< n, C > mln::fun::x2x::translation< n, C >::operator() ( const algebra::vec< n, C > &  v  )  const [inline]

Perform the translation of the given vector.

References mln::fun::x2x::translation< n, C >::t_.

algebra::vec< n, C > mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::operator() ( const algebra::vec< n, C > &  x  )  const [inline, inherited]
template<unsigned n, typename C >
void mln::fun::x2x::translation< n, C >::set_t ( const algebra::vec< n, C > &  t  )  [inline]
template<unsigned n, typename C >
const algebra::vec< n, C > & mln::fun::x2x::translation< n, C >::t (  )  const [inline]

Return the translation vector.

References mln::fun::x2x::translation< n, C >::t_.

template<unsigned n, typename C >
void mln::fun::x2x::translation< n, C >::update (  )  [inline, protected]

Member Data Documentation

const unsigned mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::dim [static, inherited]
matrix mln::fun::internal::x2x_linear_impl_< algebra::vec< n, C > , translation< n, C > >::m_ [protected, inherited]
template<unsigned n, typename C>
algebra::vec<n,C> mln::fun::x2x::translation< n, C >::t_ [protected]