LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::bicubicInterpolator< T > Class Template Reference

This functor use bicubic interpolation to approximate values between the pixels or elements of vectors and matrices. More...

#include <ltiBicubicInterpolator.h>

Inheritance diagram for lti::bicubicInterpolator< T >:
Inheritance graph
[legend]
Collaboration diagram for lti::bicubicInterpolator< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 bicubicInterpolator ()
 bicubicInterpolator (const bicubicInterpolator &other)
virtual ~bicubicInterpolator ()
virtual const char * getTypeName () const
virtual T apply (const vector< T > &src, const float &x) const
virtual T apply (const float &x) const
virtual T apply (const matrix< T > &srcdest, const float &row, const float &col) const
apply (const matrix< T > &src, const tpoint< float > &p) const
apply (const tpoint< float > &p) const
virtual T apply (const float &row, const float &col) const
bool getGradient (const matrix< T > &src, const float &row, const float &col, tpoint< T > &dest) const
bicubicInterpolatorcopy (const bicubicInterpolator &other)
bicubicInterpolator< T > & operator= (const bicubicInterpolator< T > &other)
virtual functorclone () const

Detailed Description

template<class T>
class lti::bicubicInterpolator< T >

This functor use bicubic interpolation to approximate values between the pixels or elements of vectors and matrices.

The type T of the template is the type of the elements of the vector or matrix used.


Constructor & Destructor Documentation

template<class T>
lti::bicubicInterpolator< T >::bicubicInterpolator (  ) 

default constructor

template<class T>
lti::bicubicInterpolator< T >::bicubicInterpolator ( const bicubicInterpolator< T > &  other  ) 

copy constructor

Parameters:
other the object to be copied
template<class T>
virtual lti::bicubicInterpolator< T >::~bicubicInterpolator (  )  [virtual]

destructor


Member Function Documentation

template<class T>
virtual T lti::bicubicInterpolator< T >::apply ( const float &  row,
const float &  col 
) const [virtual]

Returns the interpolated value of the matrix specified with use() at the real valued position (row,col).

Parameters:
row which row
col which column
Returns:
the interpolated value of the matrix.

Implements lti::scalarValuedInterpolation< T >.

template<class T>
T lti::bicubicInterpolator< T >::apply ( const tpoint< float > &  p  )  const [inline, virtual]

Returns the interpolated value of the matrix specified with use() at the real valued position p.

Parameters:
p the real valued position to be interpolated.
Returns:
the interpolated value of the matrix.

Implements lti::scalarValuedInterpolation< T >.

References lti::bicubicInterpolator< T >::apply(), lti::tpoint< T >::x, and lti::tpoint< T >::y.

template<class T>
T lti::bicubicInterpolator< T >::apply ( const matrix< T > &  src,
const tpoint< float > &  p 
) const [inline, virtual]

Returns the interpolated value of the matrix at the real valued position p.

Parameters:
src matrix<T> with the source data.
p the real valued position to be interpolated.
Returns:
the interpolated value of the matrix.

Implements lti::scalarValuedInterpolation< T >.

References lti::bicubicInterpolator< T >::apply(), lti::tpoint< T >::x, and lti::tpoint< T >::y.

template<class T>
virtual T lti::bicubicInterpolator< T >::apply ( const matrix< T > &  srcdest,
const float &  row,
const float &  col 
) const [virtual]

Returns the interpolated value of the matrix at the real valued position (row,col).

Parameters:
srcdest matrix<T> with the source and destination data.
row which row
col which column
Returns:
the interpolated value of the matrix.

Implements lti::scalarValuedInterpolation< T >.

template<class T>
virtual T lti::bicubicInterpolator< T >::apply ( const float &  x  )  const [virtual]

Returns the interpolated value of the vector specified with use() at the real valued position x.

Parameters:
x the real valued position to be interpolated.
Returns:
the interpolated value of the vector.

Implements lti::scalarValuedInterpolation< T >.

template<class T>
virtual T lti::bicubicInterpolator< T >::apply ( const vector< T > &  src,
const float &  x 
) const [virtual]

Returns the interpolated value of the vector at the real valued position x.

Parameters:
src vector<T> with the source data.
x the real valued position to be interpolated.
Returns:
the interpolated value of the vector.

Implements lti::scalarValuedInterpolation< T >.

Referenced by lti::bicubicInterpolator< T >::apply().

template<class T>
virtual functor* lti::bicubicInterpolator< T >::clone (  )  const [virtual]

returns a pointer to a clone of this functor.

Implements lti::scalarValuedInterpolation< T >.

template<class T>
bicubicInterpolator& lti::bicubicInterpolator< T >::copy ( const bicubicInterpolator< T > &  other  ) 

copy data of "other" functor.

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::scalarValuedInterpolation< T >.

template<class T>
bool lti::bicubicInterpolator< T >::getGradient ( const matrix< T > &  src,
const float &  row,
const float &  col,
tpoint< T > &  dest 
) const

Returns the interpolated value of the gradient of the matrix src at the real valued position (row,col).

dest.x row-direction dest.y column-direction

Parameters:
src matrix with the source data
row which row
col which column
dest gradient
template<class T>
virtual const char* lti::bicubicInterpolator< T >::getTypeName (  )  const [virtual]

returns the name of this type ("bicubicInterpolator")

Reimplemented from lti::scalarValuedInterpolation< T >.

template<class T>
bicubicInterpolator<T>& lti::bicubicInterpolator< T >::operator= ( const bicubicInterpolator< T > &  other  ) 

alias for copy member

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::equallySpacedSamplesInterpolator.


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

Generated on Sat Apr 10 15:27:02 2010 for LTI-Lib by Doxygen 1.6.1