34 #if defined(ReducedMedialAxis_RECURSES)
35 #error Recursive header files inclusion detected in ReducedMedialAxis.h
38 #define ReducedMedialAxis_RECURSES
40 #if !defined ReducedMedialAxis_h
42 #define ReducedMedialAxis_h
48 #include "DGtal/base/Common.h"
49 #include "DGtal/kernel/NumberTraits.h"
50 #include "DGtal/geometry/volumes/distance/CPowerSeparableMetric.h"
51 #include "DGtal/geometry/volumes/distance/PowerMap.h"
52 #include "DGtal/images/DefaultConstImageRange.h"
53 #include "DGtal/kernel/domains/HyperRectDomain.h"
54 #include "DGtal/images/ImageContainerBySTLMap.h"
55 #include "DGtal/images/CImage.h"
56 #include "DGtal/images/Image.h"
94 template <
typename TPowerMap,
114 TImageContainer *computedMA =
new TImageContainer( aPowerMap.domain() );
117 itend = aPowerMap.domain().end(); it != itend; ++it)
119 const auto v = aPowerMap( *it );
120 const auto pv = aPowerMap.projectPoint( v );
122 if ( aPowerMap.metricPtr()->powerDistance( *it, v, aPowerMap.weightImagePtr()->operator()( pv ) )
124 computedMA->setValue( v, aPowerMap.weightImagePtr()->operator()( pv ) );
127 return Type( computedMA );
140 #undef ReducedMedialAxis_RECURSES
Aim: implements association bewteen points lying in a digital domain and values.
MyDigitalSurface::ConstIterator ConstIterator
DGtal is the top-level namespace which contains all DGtal functions and types.
Aim: The traits class for all models of Cinteger.
HyperRectDomain< Space > Domain