31 #if defined(MostCenteredMaximalSegmentEstimator_RECURSES)
32 #error Recursive header files inclusion detected in MostCenteredMaximalSegmentEstimator.h
33 #else // defined(MostCenteredMaximalSegmentEstimator_RECURSES)
35 #define MostCenteredMaximalSegmentEstimator_RECURSES
37 #if !defined MostCenteredMaximalSegmentEstimator_h
39 #define MostCenteredMaximalSegmentEstimator_h
46 #include "DGtal/base/Common.h"
47 #include "DGtal/base/Exceptions.h"
48 #include "DGtal/base/Circulator.h"
50 #include "DGtal/geometry/curves/estimation/CSegmentComputerEstimator.h"
51 #include "DGtal/geometry/curves/CForwardSegmentComputer.h"
52 #include "DGtal/geometry/curves/SaturatedSegmentation.h"
82 template <
typename SegmentComputer,
typename SCEstimator>
89 typename SCEstimator::SegmentComputer >::value ));
96 typedef typename SCEstimator::Quantity
Quantity;
115 const SCEstimator& aSCEstimator);
157 template <
typename OutputIterator>
159 OutputIterator result,
const double h = 1.);
201 template <
typename OutputIterator>
204 OutputIterator result);
206 template <
typename OutputIterator>
211 template <
typename OutputIterator>
243 #include "DGtal/geometry/curves/estimation/MostCenteredMaximalSegmentEstimator.ih"
244 #include "DGtal/geometry/curves/estimation/SegmentComputerEstimators.h"
249 #endif // !defined MostCenteredMaximalSegmentEstimator_h
251 #undef MostCenteredMaximalSegmentEstimator_RECURSES
252 #endif // else defined(MostCenteredMaximalSegmentEstimator_RECURSES)
Aim: This concept describes an object that can process a range so as to return one estimated quantity...
Aim: This concept is a refinement of CCurveLocalGeometricEstimator devoted to the estimation of a geo...
MyDigitalSurface::ConstIterator ConstIterator
OutputIterator endEval(const ConstIterator &, const ConstIterator &ite, ConstIterator &itCurrent, SegmentIterator &, SegmentIterator &last, OutputIterator result, IteratorType)
MostCenteredMaximalSegmentEstimator(const MostCenteredMaximalSegmentEstimator &other)
OutputIterator eval(const ConstIterator &itb, const ConstIterator &ite, OutputIterator result, const double h=1.)
BOOST_CONCEPT_ASSERT((concepts::CCurveLocalGeometricEstimator< SCEstimator >))
OutputIterator endEval(const ConstIterator &itb, const ConstIterator &ite, ConstIterator &itCurrent, SegmentIterator &first, SegmentIterator &last, OutputIterator result, CirculatorType)
MostCenteredMaximalSegmentEstimator(const SegmentComputer &aSegmentComputer, const SCEstimator &aSCEstimator)
BOOST_CONCEPT_ASSERT((concepts::CForwardSegmentComputer< SegmentComputer >))
MostCenteredMaximalSegmentEstimator & operator=(const MostCenteredMaximalSegmentEstimator &other)
void init(const ConstIterator &itb, const ConstIterator &ite)
Aim: Specific iterator to visit all the maximal segments of a saturated segmentation.
Aim: A model of CLocalCurveGeometricEstimator that assigns to each element of a (sub)range a quantity...
BOOST_STATIC_ASSERT((boost::is_same< SegmentComputer, typename SCEstimator::SegmentComputer >::value))
DGtal is the top-level namespace which contains all DGtal functions and types.
SCEstimator mySCEstimator
~MostCenteredMaximalSegmentEstimator()
SegmentComputer::ConstIterator ConstIterator
Segmentation::SegmentComputerIterator SegmentIterator
OutputIterator endEval(const ConstIterator &itb, const ConstIterator &ite, ConstIterator &itCurrent, SegmentIterator &first, SegmentIterator &last, OutputIterator result)
Aim: Defines the concept describing a forward segment computer. Like any model of CIncrementalSegment...
Quantity eval(const ConstIterator &it, const double h=1.)
Aim: Computes the saturated segmentation, that is the whole set of maximal segments within a range gi...
BOOST_CONCEPT_ASSERT((concepts::CSegmentComputerEstimator< SCEstimator >))
SCEstimator::Quantity Quantity
MostCenteredMaximalSegmentEstimator()=delete
SaturatedSegmentation< SegmentComputer > Segmentation