DGtal 1.3.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor > Class Template Reference

Aim: Computes the normal vector at a surface element by convolution of elementary normal vector to adjacent surfel. More...

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

Public Types

typedef TDigitalSurface DigitalSurface
 
typedef TKernelFunctor KernelFunctor
 
typedef DigitalSurface Surface
 
typedef Surface::ConstIterator ConstIterator
 
typedef Surface::KSpace::Space::RealVector Quantity
 
typedef Surface::SCell SCell
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CConvolutionWeights< TKernelFunctor >))
 
 LocalConvolutionNormalVectorEstimator (ConstAlias< DigitalSurface > aSurface, ConstAlias< KernelFunctor > aFunctor)
 
 ~LocalConvolutionNormalVectorEstimator ()
 
const Surfacesurface () const
 
void init (const double h, const unsigned int radius)
 
Quantity eval (const SCell &scell) const
 
Quantity eval (const ConstIterator &it) const
 
template<typename OutputIterator >
OutputIterator eval (const ConstIterator &itb, const ConstIterator &ite, OutputIterator result) const
 
template<typename OutputIterator >
OutputIterator evalAll (OutputIterator result) const
 
bool isValid () const
 

Protected Member Functions

 LocalConvolutionNormalVectorEstimator ()
 

Private Member Functions

 LocalConvolutionNormalVectorEstimator (const LocalConvolutionNormalVectorEstimator &other)
 
LocalConvolutionNormalVectorEstimatoroperator= (const LocalConvolutionNormalVectorEstimator &other)
 

Private Attributes

double myH
 Grid size. More...
 
bool myFlagIsInit
 True if the init() has been called. More...
 
unsigned int myRadius
 Radius of the convolution. More...
 
const DigitalSurfacemySurface
 Reference to the digital surface. More...
 
const KernelFunctormyKernelFunctor
 Reference of the kernel convolution functor. More...
 

Detailed Description

template<typename TDigitalSurface, typename TKernelFunctor>
class DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >

Aim: Computes the normal vector at a surface element by convolution of elementary normal vector to adjacent surfel.

Description of template class 'LocalConvolutionNormalVectorEstimator'

A model of CNormalVectorEstimator.

To each $n-1$ signed surfel, an elementary inward normal vector can be defined. At a given surfel, this estimator will compute the convolution of elementary normal vector of neighboring surfels using a breadth-first propagation around the given surfel.

The neighboring is parametrized by a given topological radius R. The weight kernel function maps displacment vectors to a continuous weights.

Warning
moved to deprecated since 0.7. Please consider using LocalEstimatorFromFunctorAdapter.
Template Parameters
TDigitalSurfacetype of digital surface on which we would like to compute vector field..
TKernelFunctortype of Functor used to represent convolution kernel functor (see BasicConvolutionKernels.h).

Definition at line 85 of file LocalConvolutionNormalVectorEstimator.h.

Member Typedef Documentation

◆ ConstIterator

template<typename TDigitalSurface , typename TKernelFunctor >
typedef Surface::ConstIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::ConstIterator

Definition at line 94 of file LocalConvolutionNormalVectorEstimator.h.

◆ DigitalSurface

template<typename TDigitalSurface , typename TKernelFunctor >
typedef TDigitalSurface DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::DigitalSurface

Definition at line 91 of file LocalConvolutionNormalVectorEstimator.h.

◆ KernelFunctor

template<typename TDigitalSurface , typename TKernelFunctor >
typedef TKernelFunctor DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::KernelFunctor

Definition at line 92 of file LocalConvolutionNormalVectorEstimator.h.

◆ Quantity

template<typename TDigitalSurface , typename TKernelFunctor >
typedef Surface::KSpace::Space::RealVector DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::Quantity

Definition at line 95 of file LocalConvolutionNormalVectorEstimator.h.

◆ SCell

template<typename TDigitalSurface , typename TKernelFunctor >
typedef Surface::SCell DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::SCell

Definition at line 96 of file LocalConvolutionNormalVectorEstimator.h.

◆ Surface

template<typename TDigitalSurface , typename TKernelFunctor >
typedef DigitalSurface DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::Surface

Definition at line 93 of file LocalConvolutionNormalVectorEstimator.h.

Constructor & Destructor Documentation

◆ LocalConvolutionNormalVectorEstimator() [1/3]

template<typename TDigitalSurface , typename TKernelFunctor >
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::LocalConvolutionNormalVectorEstimator ( ConstAlias< DigitalSurface aSurface,
ConstAlias< KernelFunctor aFunctor 
)

Constructor.

Parameters
aSurfacesurface for which the normal vector are estimated.
aFunctorconvolution kernel functor.

◆ ~LocalConvolutionNormalVectorEstimator()

template<typename TDigitalSurface , typename TKernelFunctor >
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::~LocalConvolutionNormalVectorEstimator ( )
inline

Destructor.

Definition at line 114 of file LocalConvolutionNormalVectorEstimator.h.

114{};

◆ LocalConvolutionNormalVectorEstimator() [2/3]

template<typename TDigitalSurface , typename TKernelFunctor >
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::LocalConvolutionNormalVectorEstimator ( )
inlineprotected

◆ LocalConvolutionNormalVectorEstimator() [3/3]

template<typename TDigitalSurface , typename TKernelFunctor >
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::LocalConvolutionNormalVectorEstimator ( const LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor > &  other)
private

Copy constructor.

Parameters
otherthe object to clone. Forbidden by default.

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT()

template<typename TDigitalSurface , typename TKernelFunctor >
DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::BOOST_CONCEPT_ASSERT ( (concepts::CConvolutionWeights< TKernelFunctor >)  )

◆ eval() [1/3]

template<typename TDigitalSurface , typename TKernelFunctor >
Quantity DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval ( const ConstIterator it) const
Returns
the estimated quantity at *it

◆ eval() [2/3]

template<typename TDigitalSurface , typename TKernelFunctor >
template<typename OutputIterator >
OutputIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval ( const ConstIterator itb,
const ConstIterator ite,
OutputIterator  result 
) const
Returns
the estimated quantity from itb till ite (exculded)

◆ eval() [3/3]

template<typename TDigitalSurface , typename TKernelFunctor >
Quantity DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::eval ( const SCell scell) const
Parameters
scellany signed cell.
Returns
the estimated quantity at cell scell.

◆ evalAll()

template<typename TDigitalSurface , typename TKernelFunctor >
template<typename OutputIterator >
OutputIterator DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::evalAll ( OutputIterator  result) const

Writes on result the estimated quantity at all surfels of the digital surface.

Parameters
resultany model of boost::OutputIterator on Quantity.
Returns
the output iterator after the last write.

◆ init()

template<typename TDigitalSurface , typename TKernelFunctor >
void DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::init ( const double  h,
const unsigned int  radius 
)

Initialisation.

Parameters
hgrid size (must be >0).
radiustopological radius used to specify the size of the convolution.

◆ isValid()

template<typename TDigitalSurface , typename TKernelFunctor >
bool DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::isValid ( ) const

Checks the validity/consistency of the object.

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

◆ operator=()

template<typename TDigitalSurface , typename TKernelFunctor >
LocalConvolutionNormalVectorEstimator & DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::operator= ( const LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor > &  other)
private

Assignment.

Parameters
otherthe object to copy.
Returns
a reference on 'this'. Forbidden by default.

◆ surface()

template<typename TDigitalSurface , typename TKernelFunctor >
const Surface & DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::surface ( ) const
Returns
a reference to the associated digital surface.

Field Documentation

◆ myFlagIsInit

template<typename TDigitalSurface , typename TKernelFunctor >
bool DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::myFlagIsInit
private

◆ myH

template<typename TDigitalSurface , typename TKernelFunctor >
double DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::myH
private

Grid size.

Definition at line 181 of file LocalConvolutionNormalVectorEstimator.h.

◆ myKernelFunctor

template<typename TDigitalSurface , typename TKernelFunctor >
const KernelFunctor& DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::myKernelFunctor
private

Reference of the kernel convolution functor.

Definition at line 193 of file LocalConvolutionNormalVectorEstimator.h.

◆ myRadius

template<typename TDigitalSurface , typename TKernelFunctor >
unsigned int DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::myRadius
private

Radius of the convolution.

Definition at line 187 of file LocalConvolutionNormalVectorEstimator.h.

◆ mySurface

template<typename TDigitalSurface , typename TKernelFunctor >
const DigitalSurface& DGtal::deprecated::LocalConvolutionNormalVectorEstimator< TDigitalSurface, TKernelFunctor >::mySurface
private

Reference to the digital surface.

Definition at line 190 of file LocalConvolutionNormalVectorEstimator.h.


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