CVR-Lib last update 20 Sep 2009

cvr::matrixTransform< I >::matrixTransform::helper2x3 Class Reference

Helper for 2x3 matrix transformations. More...

#include <cvrMatrixTransform.h>

Inheritance diagram for cvr::matrixTransform< I >::matrixTransform::helper2x3:

Inheritance graph
[legend]
Collaboration diagram for cvr::matrixTransform< I >::matrixTransform::helper2x3:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 helper2x3 (interpolator_type &interp, const parameters &par)
virtual ~helper2x3 ()
virtual bool analyzeMatrix ()
virtual bool apply (const matrix< value_type > &src, matrix< value_type > &dest, fpoint &offset) const
virtual bool evalDims (const ipoint &orig, ipoint &res, fpoint &offset) const
virtual void forwards (const fpoint &orig, fpoint &dest, const fpoint &offset) const
virtual void backwards (const fpoint &dest, fpoint &orig, const fpoint &offset) const


Detailed Description

template<class I>
class cvr::matrixTransform< I >::helper2x3

Helper for 2x3 matrix transformations.

Constructor & Destructor Documentation

template<class I>
cvr::matrixTransform< I >::matrixTransform::helper2x3::helper2x3 ( interpolator_type &  interp,
const parameters par 
)

The only available constructor.

template<class I>
virtual cvr::matrixTransform< I >::matrixTransform::helper2x3::~helper2x3 (  )  [virtual]

Virtual destructor.


Member Function Documentation

template<class I>
virtual bool cvr::matrixTransform< I >::matrixTransform::helper2x3::analyzeMatrix (  )  [virtual]

Analyze the matrix in the parameters and compute its inverse.

If the matrix is not invertible, then return false.

Implements cvr::matrixTransform< I >::matrixTransform::helperBase.

template<class I>
virtual bool cvr::matrixTransform< I >::matrixTransform::helper2x3::apply ( const matrix< value_type > &  src,
matrix< value_type > &  dest,
fpoint offset 
) const [virtual]

Transform an image according to the matrix provided in the parameters.

Implements cvr::matrixTransform< I >::matrixTransform::helperBase.

template<class I>
virtual void cvr::matrixTransform< I >::matrixTransform::helper2x3::backwards ( const fpoint dest,
fpoint orig,
const fpoint offset 
) const [virtual]

Inverse transform the given point coordinates.

Warning:
Do not forget to provide first the size of the matrix from which the points are going to be taken, using use(const ipoint&).
This method is the inverse of forwards(const fpoint&,fpoint&). Given a position dest in the transformed system, it computes the coordinates of that point in the original coordinate system.

Parameters:
dest Position of a point in the transformed space.
orig Position of the point in the original space.
offset Position of the origin of the result with respect to the coordinate system of the original image.

Implements cvr::matrixTransform< I >::matrixTransform::helperBase.

template<class I>
virtual bool cvr::matrixTransform< I >::matrixTransform::helper2x3::evalDims ( const ipoint orig,
ipoint res,
fpoint offset 
) const [virtual]

After the matrix has been analyzed, this method can be used to compute the dimensions of the resulting image and the offset.

Implements cvr::matrixTransform< I >::matrixTransform::helperBase.

template<class I>
virtual void cvr::matrixTransform< I >::matrixTransform::helper2x3::forwards ( const fpoint orig,
fpoint dest,
const fpoint offset 
) const [virtual]

Transform the given point coordinates.

Warning:
Do not forget to provide first the size of the matrix from which the points are going to be taken, using use(const ipoint&).
This method takes the orig position, assumed to be in a reference system of a matrix/image of the size given by the use(const ipoint&) method, and transforms this position according to the set parameters.

Implements cvr::matrixTransform< I >::matrixTransform::helperBase.


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

Generated on Sun Sep 20 22:08:49 2009 for CVR-Lib by Doxygen 1.5.8