31#if defined(MaximalSegmentSliceEstimation_RECURSES)
32#error Recursive header files inclusion detected in MaximalSegmentSliceEstimation.h
35#define MaximalSegmentSliceEstimation_RECURSES
37#if !defined MaximalSegmentSliceEstimation_h
39#define MaximalSegmentSliceEstimation_h
45#include "DGtal/base/Common.h"
46#include "DGtal/geometry/surfaces/ArithmeticalDSSComputerOnSurfels.h"
47#include "DGtal/topology/DigitalSurface2DSlice.h"
48#include "DGtal/topology/CDigitalSurfaceContainer.h"
64 template <
typename TSurface>
82 using Integer =
typename Point::Coordinate;
96 using Iterator =
typename Container::const_iterator;
140 template <
typename SurfelConstIterator >
141 void init (
Scalar const& h, SurfelConstIterator itb, SurfelConstIterator ite);
149 template <
typename SurfelConstIterator >
160 template <
typename SurfelConstIterator,
typename OutputIterator >
161 OutputIterator
eval (SurfelConstIterator itb, SurfelConstIterator ite, OutputIterator out)
const;
232 template <
typename TSurface>
241#include "DGtal/geometry/surfaces/estimation/MaximalSegmentSliceEstimation.ih"
248#undef MaximalSegmentSliceEstimation_RECURSES
Aim: This class is a wrapper around ArithmeticalDSS that is devoted to the dynamic recognition of dig...
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Aim: Smart or simple const pointer on T. It can be a smart pointer based on reference counts or a sim...
Aim: Represents a 2-dimensional slice in a DigitalSurface. In a sense, it is a 4-connected contour,...
DigitalSurfaceContainer::Surfel Surfel
DigitalSurfaceContainer::DigitalSurfaceTracker DigitalSurfaceTracker
DigitalSurfaceContainer::KSpace KSpace
SignedKhalimskyCell< dim, Integer > SCell
SpaceND< dim, Integer > Space
KhalimskyCell< dim, Integer > Cell
Quantity eval(SurfelConstIterator it) const
typename KSpace::SCell SCell
void init(Scalar const &h, SurfelConstIterator itb, SurfelConstIterator ite)
Vector trivialNormal(Surfel const &aSurfel) const
std::pair< Point2, Point2 > getExtremalPoints(SurfaceSlice const &aSlice, Dimension const &aProjectDir1, Dimension const &aProjectDir2) const
OutputIterator eval(SurfelConstIterator itb, SurfelConstIterator ite, OutputIterator out) const
typename Container::const_iterator Iterator
BOOST_CONCEPT_ASSERT((concepts::CDigitalSurfaceContainer< typename TSurface::DigitalSurfaceContainer >))
~MaximalSegmentSliceEstimation()
MaximalSegmentSliceEstimation()
void attach(ConstAlias< Surface > aSurface)
typename Surface::DigitalSurfaceTracker Tracker
typename KSpace::Space Space
typename Surface::KSpace KSpace
typename KSpace::Cell Cell
KSpace const & space() const
typename Surface::Point Point
MaximalSegmentSliceEstimation & operator=(const MaximalSegmentSliceEstimation &other)
typename Space::RealPoint RealPoint
typename Point::Coordinate Integer
CountedConstPtrOrConstPtr< Surface > mySurface
std::deque< SCell > Container
MaximalSegmentSliceEstimation(ConstAlias< Surface > aSurface)
void selfDisplay(std::ostream &out) const
MaximalSegmentSliceEstimation(const MaximalSegmentSliceEstimation &other)
typename Surface::Surfel Surfel
PointVector< dim, double > RealPoint
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
DGtal::uint32_t Dimension
Aim: The digital surface container concept describes a minimal set of inner types and methods so as t...