34 #if defined(DistanceTransformation_RECURSES)
35 #error Recursive header files inclusion detected in DistanceTransformation.h
38 #define DistanceTransformation_RECURSES
40 #if !defined DistanceTransformation_h
42 #define DistanceTransformation_h
48 #include "DGtal/base/Common.h"
49 #include "DGtal/kernel/NumberTraits.h"
50 #include "DGtal/kernel/CPointPredicate.h"
51 #include "DGtal/geometry/volumes/distance/CSeparableMetric.h"
52 #include "DGtal/geometry/volumes/distance/VoronoiMap.h"
53 #include "DGtal/images/DefaultConstImageRange.h"
54 #include "DGtal/kernel/domains/HyperRectDomain.h"
55 #include "DGtal/base/ConstAlias.h"
91 template <
typename TSpace,
92 typename TPointPredicate,
93 typename TSeparableMetric,
94 typename TImageContainer =
95 ImageContainerBySTLVector< HyperRectDomain<TSpace>,
99 :
public VoronoiMap<TSpace,TPointPredicate, TSeparableMetric, TImageContainer>
137 typedef typename VoronoiMap<TSpace,TPointPredicate,
148 VoronoiMap<TSpace,TPointPredicate,TSeparableMetric,TImageContainer>(aDomain,
162 :
VoronoiMap<TSpace,TPointPredicate,TSeparableMetric,TImageContainer>(aDomain,
232 out <<
"[DistanceTransformation] underlying VoronoiMap={";
256 template <
typename S,
typename P,
typename TSep>
262 object.selfDisplay( out );
275 #undef DistanceTransformation_RECURSES
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Aim: model of CConstBidirectionalRangeFromPoint that adapts the domain of an image in order to iterat...
Aim: Implementation of the linear in time Voronoi map construction.
std::array< bool, Space::dimension > PeriodicitySpec
Periodicity specification type.
CountedPtr< OutputImage > myImagePtr
Voronoi map image.
void selfDisplay(std::ostream &out) const
const SeparableMetric * myMetricPtr
Pointer to the separable metric instance.
const SeparableMetric * metric() const
const Domain & domain() const
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
Aim: Defines a predicate on a point.
Aim: defines the concept of separable metrics.
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.
FreemanChain< int >::Vector Vector