31 #if defined(SaturatedSegmentation_RECURSES)
32 #error Recursive header files inclusion detected in SaturatedSegmentation.h
33 #else // defined(SaturatedSegmentation_RECURSES)
35 #define SaturatedSegmentation_RECURSES
37 #if !defined SaturatedSegmentation_h
39 #define SaturatedSegmentation_h
44 #include "DGtal/base/Common.h"
46 #include "DGtal/geometry/curves/SegmentComputerUtils.h"
47 #include "DGtal/geometry/curves/CForwardSegmentComputer.h"
152 template <
typename TSegmentComputer>
252 const TSegmentComputer& aSegmentComputer,
434 void setMode(
const std::string& aMode);
532 template <
typename SegmentComputer>
541 #include "DGtal/geometry/curves/SaturatedSegmentation.ih"
546 #endif // !defined SaturatedSegmentation_h
548 #undef SaturatedSegmentation_RECURSES
549 #endif // else defined(SaturatedSegmentation_RECURSES)
void nextMaximalSegment()
MyDigitalSurface::ConstIterator ConstIterator
bool operator==(const SegmentComputerIterator &aOther) const
ArithmeticalDSSComputer< std::vector< Z2i::Point >::const_iterator, int, 4 > SegmentComputer
BOOST_CONCEPT_ASSERT((concepts::CForwardSegmentComputer< TSegmentComputer >))
SegmentComputerIterator(const SaturatedSegmentation< TSegmentComputer > *aSegmentation, const TSegmentComputer &aSegmentComputer, const bool &aFlag)
SaturatedSegmentation::SegmentComputerIterator end() const
void setMode(const std::string &aMode)
SaturatedSegmentation::SegmentComputerIterator begin() const
const SegmentComputer & operator*() const
ConstIterator myLastMaximalSegmentEnd
SaturatedSegmentation & operator=(const SaturatedSegmentation &other)
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
Aim: Specific iterator to visit all the maximal segments of a saturated segmentation.
bool myFlagIntersectPrevious
std::vector< Z2i::Point >::const_iterator ConstIterator
SegmentComputer get() const
bool operator!=(const SegmentComputerIterator &aOther) const
const ConstIterator begin() const
~SegmentComputerIterator()
const ConstIterator end() const
DGtal is the top-level namespace which contains all DGtal functions and types.
TSegmentComputer SegmentComputer
void setSubRange(const ConstIterator &itb, const ConstIterator &ite)
SegmentComputerIterator & operator++()
const SaturatedSegmentation< TSegmentComputer > * myS
SegmentComputerIterator & operator=(const SegmentComputerIterator &aOther)
ConstIterator myLastMaximalSegmentBegin
SaturatedSegmentation::SegmentComputer SegmentComputer
TSegmentComputer::Reverse ReverseSegmentComputer
void selfDisplay(std::ostream &out) const
void initFirstMaximalSegment()
Aim: Defines the concept describing a forward segment computer. Like any model of CIncrementalSegment...
ReverseSegmentComputer::ConstIterator ConstReverseIterator
SegmentComputer::ConstIterator ConstIterator
SegmentComputer::ConstIterator ConstIterator
bool intersectPrevious() const
Aim: Computes the saturated segmentation, that is the whole set of maximal segments within a range gi...
bool intersectNext() const
SegmentComputer mySegmentComputer
SegmentComputer mySegmentComputer
const SegmentComputer * operator->() const
bool doesIntersectNext(const ConstIterator &it, const ConstIterator &itb, const ConstIterator &ite)
void initLastMaximalSegment()