31 #if defined(Modifier_RECURSES)
32 #error Recursive header files inclusion detected in Modifier.h
33 #else // defined(Modifier_RECURSES)
35 #define Modifier_RECURSES
37 #if !defined Modifier_h
47 #include "DGtal/base/Common.h"
48 #include "DGtal/kernel/PointVector.h"
74 template <
typename Coordinate>
114 template <
typename Coordinate>
154 template <
typename Coordinate>
194 template <
typename KSpace>
204 typedef typename KSpace::SCell
Input;
232 if (
this != &other )
268 template <
typename KSpace>
275 typedef typename KSpace::SCell
Input;
306 if (
this != &other )
336 template <
typename KSpace>
342 typedef typename KSpace::Point
Point;
346 typedef typename KSpace::SCell
Input;
378 if (
this != &other )
394 Input pointel(
myK.sIndirectIncident( s, *
myK.sDirs( s ) ) );
397 Vector v(
myK.sKCoords( s ) -
myK.sKCoords( pointel ) );
412 template <
typename KSpace>
420 typedef typename KSpace::SCell
Input;
451 if (
this != &other )
465 Input pixel(
myK.sIndirectIncident( s, *
myK.sOrthDirs( s ) ) );
480 template <
typename KSpace>
488 typedef typename KSpace::SCell
Input;
519 if (
this != &other )
533 Input pixel(
myK.sDirectIncident( s, *
myK.sOrthDirs( s ) ) );
548 template <
typename KSpace>
556 typedef typename KSpace::Point
Point;
559 typedef typename KSpace::SCell
Input;
590 if (
this != &other )
605 Input innerPixel(
myK.sIndirectIncident( s, *
myK.sOrthDirs( s ) ) );
607 Input outerPixel(
myK.sDirectIncident( s, *
myK.sOrthDirs( s ) ) );
609 return Output(
myK.sCoords( innerPixel ),
myK.sCoords( outerPixel ));
623 template <
typename KSpace>
631 typedef typename KSpace::Point
Point;
635 typedef typename KSpace::SCell
Input;
666 if (
this != &other )
681 Input pointel(
myK.sIndirectIncident( s, *
myK.sDirs( s ) ) );
684 Vector v(
myK.sKCoords( s ) -
myK.sKCoords( pointel ) );
685 if (v ==
Vector(1,0))
return '0';
686 else if (v ==
Vector(0,1))
return '1';
687 else if (v ==
Vector(-1,0))
return '2';
688 else if (v ==
Vector(0,-1))
return '3';
706 #endif // !defined Modifier_h
708 #undef Modifier_RECURSES
709 #endif // else defined(Modifier_RECURSES)