DGtal  1.4.beta
DGtal::concepts::CNormalVectorEstimator< T > Struct Template Reference

Aim: Represents the concept of estimator of normal vector along digital surfaces. More...

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

Public Types

typedef T::Surface Surface
 
typedef T::SCell SCell
 
typedef T::ConstIterator ConstIterator
 
typedef T::Quantity Quantity
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CCellularGridSpaceND< typename Surface::KSpace >))
 
 BOOST_STATIC_ASSERT ((ConceptUtils::SameType< SCell, typename Surface::SCell >::value))
 
 BOOST_CONCEPT_ASSERT ((boost::InputIterator< ConstIterator >))
 
 BOOST_CONCEPT_USAGE (CNormalVectorEstimator)
 
void checkConstConstraints () const
 

Private Attributes

myX
 
Surface mySurface
 
SCell mySCell
 
Quantity myQuantity
 
boost::output_iterator_archetype< QuantitymyOutIt
 

Detailed Description

template<typename T>
struct DGtal::concepts::CNormalVectorEstimator< T >

Aim: Represents the concept of estimator of normal vector along digital surfaces.

Description of concept 'CNormalVectorEstimator'

Refinement of

Associated types

  • Surface : the type of digital surface (must be some DigitalSurface<X>)
  • ConstIterator : an iterator on the signed cells of the digital surface (same as Surface::ConstIterator).
  • SCell : the type of signed cell (for surfels along the digital surface) (same as Surface::SCell).
  • Quantity: the type representing normal vectors.

Notation

  • X : A type that is a model of CNormalVectorEstimator
  • x : object of type X
  • sc : object of type SCell
  • out_it : an OutputIterator on Quantity

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
Accessor to surface x.surface() const Surface & returns a reference to the digital surface
Local normal vector estimation x.eval(sc) Quantity returns the estimation of the normal vector at the signed cell sc
Global normal vector estimation template <OutputIterator>x.evalAll(out_it) OutputIterator outputs the estimation of the normal vector field of the whole surface

Invariants

Models

  • LocalConvolutionNormalVectorEstimator

Notes

Template Parameters
Tthe type that should be a model of CNormalVectorEstimator.

Definition at line 94 of file CNormalVectorEstimator.h.

Member Typedef Documentation

◆ ConstIterator

template<typename T >
typedef T::ConstIterator DGtal::concepts::CNormalVectorEstimator< T >::ConstIterator

Definition at line 100 of file CNormalVectorEstimator.h.

◆ Quantity

template<typename T >
typedef T::Quantity DGtal::concepts::CNormalVectorEstimator< T >::Quantity

Definition at line 101 of file CNormalVectorEstimator.h.

◆ SCell

template<typename T >
typedef T::SCell DGtal::concepts::CNormalVectorEstimator< T >::SCell

Definition at line 99 of file CNormalVectorEstimator.h.

◆ Surface

template<typename T >
typedef T::Surface DGtal::concepts::CNormalVectorEstimator< T >::Surface

Definition at line 98 of file CNormalVectorEstimator.h.

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT() [1/2]

template<typename T >
DGtal::concepts::CNormalVectorEstimator< T >::BOOST_CONCEPT_ASSERT ( (boost::InputIterator< ConstIterator >)  )

◆ BOOST_CONCEPT_ASSERT() [2/2]

template<typename T >
DGtal::concepts::CNormalVectorEstimator< T >::BOOST_CONCEPT_ASSERT ( (concepts::CCellularGridSpaceND< typename Surface::KSpace >)  )

◆ BOOST_CONCEPT_USAGE()

template<typename T >
DGtal::concepts::CNormalVectorEstimator< T >::BOOST_CONCEPT_USAGE ( CNormalVectorEstimator< T >  )
inline

◆ BOOST_STATIC_ASSERT()

template<typename T >
DGtal::concepts::CNormalVectorEstimator< T >::BOOST_STATIC_ASSERT ( (ConceptUtils::SameType< SCell, typename Surface::SCell >::value)  )

◆ checkConstConstraints()

template<typename T >
void DGtal::concepts::CNormalVectorEstimator< T >::checkConstConstraints ( ) const
inline

Definition at line 114 of file CNormalVectorEstimator.h.

115  {
116  }

Referenced by DGtal::concepts::CNormalVectorEstimator< T >::BOOST_CONCEPT_USAGE().

Field Documentation

◆ myOutIt

template<typename T >
boost::output_iterator_archetype<Quantity> DGtal::concepts::CNormalVectorEstimator< T >::myOutIt
private

◆ myQuantity

template<typename T >
Quantity DGtal::concepts::CNormalVectorEstimator< T >::myQuantity
private

◆ mySCell

template<typename T >
SCell DGtal::concepts::CNormalVectorEstimator< T >::mySCell
private

◆ mySurface

template<typename T >
Surface DGtal::concepts::CNormalVectorEstimator< T >::mySurface
private

◆ myX

template<typename T >
T DGtal::concepts::CNormalVectorEstimator< T >::myX
private

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