DGtal  1.2.0
Public Types | Public Member Functions | Protected Member Functions | Private Attributes
DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder > Class Template Reference

Aim: model of cellular embedder for normal vector estimators on digital surface, (default constructible, copy constructible, assignable). More...

#include <DGtal/geometry/surfaces/estimation/NormalVectorEstimatorLinearCellEmbedder.h>

Public Types

typedef TDigitalSurface DigitalSurface
 
typedef TNormalVectorEstimator NormalVectorEstimator
 
typedef TEmbedder Embedder
 
typedef DigitalSurface::ConstIterator ConstIterator
 
typedef DigitalSurface::KSpace::Point Point
 
typedef DigitalSurface::KSpace::Space::RealPoint RealPoint
 
typedef DigitalSurface::KSpace::Space::RealVector RealVector
 
typedef NormalVectorEstimator::Quantity Quantity
 

Public Member Functions

 NormalVectorEstimatorLinearCellEmbedder (ConstAlias< DigitalSurface > digSurf, ConstAlias< NormalVectorEstimator > estimator, ConstAlias< Embedder > e)
 
 ~NormalVectorEstimatorLinearCellEmbedder ()
 
RealPoint embed (const Point &p) const
 
RealPoint embedSurfel (const ConstIterator &it) const
 
void embedSurfel (const ConstIterator &surfelIt, RealPoint &x, RealVector &grad) const
 
void selfDisplay (std::ostream &out) const
 
bool isValid () const
 

Protected Member Functions

 NormalVectorEstimatorLinearCellEmbedder ()
 

Private Attributes

const DigitalSurfacemySurface
 A pointer on the digital surface. More...
 
const NormalVectorEstimatormyPtrFct
 A pointer on the normal vector estimator. More...
 
const EmbeddermyPtrEmbedder
 A pointer on the digital embedder. More...
 

Detailed Description

template<typename TDigitalSurface, typename TNormalVectorEstimator, typename TEmbedder>
class DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >

Aim: model of cellular embedder for normal vector estimators on digital surface, (default constructible, copy constructible, assignable).

Description of template class 'NormalVectorEstimatorLinearCellEmbedder'

Template Parameters
TDigitalSurfacethe digital surface definition
TNormalVectorEstimatorthe type of normal vector estimator.
TEmbedderthe type of digital embedder.
Todo:
assert dimensions of space, embedder and implicit function.

Definition at line 70 of file NormalVectorEstimatorLinearCellEmbedder.h.

Member Typedef Documentation

◆ ConstIterator

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef DigitalSurface::ConstIterator DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::ConstIterator

Definition at line 77 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ DigitalSurface

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef TDigitalSurface DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::DigitalSurface

Definition at line 74 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ Embedder

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef TEmbedder DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::Embedder

Definition at line 76 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ NormalVectorEstimator

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef TNormalVectorEstimator DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::NormalVectorEstimator

Definition at line 75 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ Point

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef DigitalSurface::KSpace::Point DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::Point

Definition at line 78 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ Quantity

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef NormalVectorEstimator::Quantity DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::Quantity

Definition at line 81 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ RealPoint

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef DigitalSurface::KSpace::Space::RealPoint DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::RealPoint

Definition at line 79 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ RealVector

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
typedef DigitalSurface::KSpace::Space::RealVector DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::RealVector

Definition at line 80 of file NormalVectorEstimatorLinearCellEmbedder.h.

Constructor & Destructor Documentation

◆ NormalVectorEstimatorLinearCellEmbedder() [1/2]

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::NormalVectorEstimatorLinearCellEmbedder ( ConstAlias< DigitalSurface digSurf,
ConstAlias< NormalVectorEstimator estimator,
ConstAlias< Embedder e 
)

Constructor.

Parameters
digSurfany digital surface.
estimatoran normal vector estimator
ea digital embedder (like a GaussDigitizer).

◆ ~NormalVectorEstimatorLinearCellEmbedder()

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::~NormalVectorEstimatorLinearCellEmbedder ( )

Destructor.

◆ NormalVectorEstimatorLinearCellEmbedder() [2/2]

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::NormalVectorEstimatorLinearCellEmbedder ( )
protected

Member Function Documentation

◆ embed()

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
RealPoint DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::embed ( const Point p) const

Maps a digital point to its corresponding point in the Euclidean space.

Parameters
pany digital point in the digital space.
Returns
its embedding by the current embedder in the Euclidean space.

◆ embedSurfel() [1/2]

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
RealPoint DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::embedSurfel ( const ConstIterator it) const

Maps a digital surface surfel defined by an iterator into its corresponding point in the Euclidean space.

Parameters
itany iterator on surface surfel.
Returns
its embedding in the Euclidean space.

◆ embedSurfel() [2/2]

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
void DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::embedSurfel ( const ConstIterator surfelIt,
RealPoint x,
RealVector grad 
) const

Maps a digital point to its corresponding embedding position and gradient vector in the Euclidean space.

Parameters
surfelItany digital surface surfel given by a ConstIterator.
xits embedding in the Euclidean space.
grad(returns) its gradient vector at the point given by the current embedder in the Euclidean space.

◆ isValid()

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
bool DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::isValid ( ) const

Checks the validity/consistency of the object.

Returns
'true' if the object is valid, 'false' otherwise.

◆ selfDisplay()

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
void DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::selfDisplay ( std::ostream &  out) const

Writes/Displays the object on an output stream.

Parameters
outthe output stream where the object is written.

Field Documentation

◆ myPtrEmbedder

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
const Embedder& DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::myPtrEmbedder
private

A pointer on the digital embedder.

Definition at line 158 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ myPtrFct

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
const NormalVectorEstimator& DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::myPtrFct
private

A pointer on the normal vector estimator.

Definition at line 156 of file NormalVectorEstimatorLinearCellEmbedder.h.

◆ mySurface

template<typename TDigitalSurface , typename TNormalVectorEstimator , typename TEmbedder >
const DigitalSurface& DGtal::NormalVectorEstimatorLinearCellEmbedder< TDigitalSurface, TNormalVectorEstimator, TEmbedder >::mySurface
private

A pointer on the digital surface.

Definition at line 154 of file NormalVectorEstimatorLinearCellEmbedder.h.


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