library of assembled shared sources

http://lass.cocamware.com

lass::spat::LinearMeshInterpolator< T, TPI > Class Template Reference

Interpolator working on triangulated mesh. More...

#include <mesh_interpolator.h>

Inheritance diagram for lass::spat::LinearMeshInterpolator< T, TPI >:

Inheritance graph
[legend]
Collaboration diagram for lass::spat::LinearMeshInterpolator< T, TPI >:

Collaboration graph
[legend]

Public Types

typedef MeshInterpolator< T,
TPI >::TPoint2D 
TPoint2D
typedef MeshInterpolator< T,
TPI >::TAabb2D 
TAabb2D
typedef MeshInterpolator< T,
TPI >::TPolyLine2D 
TPolyLine2D
typedef MeshInterpolator< T,
TPI >::TPlanarMesh 
TPlanarMesh

Public Member Functions

 LinearMeshInterpolator (const TAabb2D &iAabb, const TPI &iValueOutside)
virtual ~LinearMeshInterpolator ()
virtual TPI interpolate (const TPoint2D &iQuery) const
template<typename OutputIterator >
OutputIterator interpolate (const TPolyLine2D &iQuery, OutputIterator oOutput) const
const TPlanarMeshmesh () const
const TAabb2Daabb () const
virtual void insertSite (const TPoint2D &iPoint, const TPI &iPointInfo)
virtual void insertPolyLine (const TPolyLine2D &iPoly, const TPI &iPointInfo)
template<typename OutputIterator >
OutputIterator interpolate (const TPolyLine2D &iQuery, OutputIterator oOutput) const

Protected Types

typedef std::deque< TPI > TInfoList
 type must support stable iterators

Protected Member Functions

TInfoListinfo ()

Private Member Functions

 LinearMeshInterpolator ()
virtual TPI interpolate (const TPoint2D &iQuery, typename TPlanarMesh::TEdge *iEdge) const

Private Attributes

TPI valueOutside_

Detailed Description

template<typename T, typename TPI>
class lass::spat::LinearMeshInterpolator< T, TPI >

Interpolator working on triangulated mesh.

Interpolation is done linearly by finding a triangle containing the point of interest. Via barycentric coordinates the linear weighted interpolation is performed and returned. Buildup of mesh is incremental so after querying for interpolation new points can be inserted. a linear interpolator using planar meshes

Author:
Tom De Muer [TDM]

Definition at line 193 of file mesh_interpolator.h.


Member Typedef Documentation

template<typename T , typename TPI >
typedef MeshInterpolator<T,TPI>::TPoint2D lass::spat::LinearMeshInterpolator< T, TPI >::TPoint2D

Reimplemented from lass::spat::MeshInterpolator< T, TPI >.

Definition at line 196 of file mesh_interpolator.h.

template<typename T , typename TPI >
typedef MeshInterpolator<T,TPI>::TAabb2D lass::spat::LinearMeshInterpolator< T, TPI >::TAabb2D

Reimplemented from lass::spat::MeshInterpolator< T, TPI >.

Definition at line 197 of file mesh_interpolator.h.

template<typename T , typename TPI >
typedef MeshInterpolator<T,TPI>::TPolyLine2D lass::spat::LinearMeshInterpolator< T, TPI >::TPolyLine2D

Reimplemented from lass::spat::MeshInterpolator< T, TPI >.

Definition at line 198 of file mesh_interpolator.h.

template<typename T , typename TPI >
typedef MeshInterpolator<T,TPI>::TPlanarMesh lass::spat::LinearMeshInterpolator< T, TPI >::TPlanarMesh

Reimplemented from lass::spat::MeshInterpolator< T, TPI >.

Definition at line 199 of file mesh_interpolator.h.

template<typename T , typename TPI >
typedef std::deque<TPI> lass::spat::MeshInterpolator< T, TPI >::TInfoList [protected, inherited]

type must support stable iterators

Definition at line 115 of file mesh_interpolator.h.


Constructor & Destructor Documentation

template<typename T , typename TPI >
lass::spat::LinearMeshInterpolator< T, TPI >::LinearMeshInterpolator ( const TAabb2D iAabb,
const TPI &  iValueOutside 
) [inline]

template<typename T , typename TPI >
virtual lass::spat::LinearMeshInterpolator< T, TPI >::~LinearMeshInterpolator (  )  [inline, virtual]

Definition at line 202 of file mesh_interpolator.h.

template<typename T , typename TPI >
lass::spat::LinearMeshInterpolator< T, TPI >::LinearMeshInterpolator (  )  [inline, private]

Definition at line 207 of file mesh_interpolator.h.


Member Function Documentation

template<typename T , typename TPI >
TPI lass::spat::LinearMeshInterpolator< T, TPI >::interpolate ( const TPoint2D iQuery  )  const [inline, virtual]

template<typename T , typename TPI >
template<typename OutputIterator >
OutputIterator lass::spat::LinearMeshInterpolator< T, TPI >::interpolate ( const TPolyLine2D iQuery,
OutputIterator  oOutput 
) const [inline]

template<typename T , typename TPI >
TPI lass::spat::LinearMeshInterpolator< T, TPI >::interpolate ( const TPoint2D iQuery,
typename TPlanarMesh::TEdge iEdge 
) const [inline, private, virtual]

template<typename T , typename TPI >
const TPlanarMesh& lass::spat::MeshInterpolator< T, TPI >::mesh (  )  const [inline, inherited]

template<typename T , typename TPI >
const TAabb2D& lass::spat::MeshInterpolator< T, TPI >::aabb (  )  const [inline, inherited]

template<typename T , typename TPI >
void lass::spat::MeshInterpolator< T, TPI >::insertSite ( const TPoint2D iPoint,
const TPI &  iPointInfo 
) [inline, virtual, inherited]

template<typename T , typename TPI >
void lass::spat::MeshInterpolator< T, TPI >::insertPolyLine ( const TPolyLine2D iPoly,
const TPI &  iPointInfo 
) [inline, virtual, inherited]

template<typename T , typename TPI >
template<typename OutputIterator >
OutputIterator lass::spat::MeshInterpolator< T, TPI >::interpolate ( const TPolyLine2D iQuery,
OutputIterator  oOutput 
) const [inline, inherited]

template<typename T , typename TPI >
TInfoList& lass::spat::MeshInterpolator< T, TPI >::info (  )  [inline, protected, inherited]


Field Documentation

template<typename T , typename TPI >
TPI lass::spat::LinearMeshInterpolator< T, TPI >::valueOutside_ [private]


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

Generated on Mon Nov 10 14:22:15 2008 for Library of Assembled Shared Sources by doxygen 1.5.7.1
SourceForge.net Logo