31 #if defined(MetricAdjacency_RECURSES)
32 #error Recursive header files inclusion detected in MetricAdjacency.h
35 #define MetricAdjacency_RECURSES
37 #if !defined MetricAdjacency_h
39 #define MetricAdjacency_h
46 #include "DGtal/base/Common.h"
47 #include "DGtal/kernel/CSpace.h"
48 #include "DGtal/kernel/SpaceND.h"
49 #include "DGtal/kernel/BasicPointPredicates.h"
77 template <
typename TSpace,
Dimension maxNorm1,
97 typedef typename std::map<Vertex, Value>
Type;
165 template <
typename OutputIterator>
187 template <
typename OutputIterator,
typename VertexPredicate>
192 const VertexPredicate & pred);
248 template <
typename TSpace, Dimension maxNorm1>
252 TSpace::dimension > &
object );
259 #include "DGtal/topology/MetricAdjacency.ih"
266 #undef MetricAdjacency_RECURSES
Aim: Describes digital adjacencies in digital spaces that are defined with the 1-norm and the infinit...
static void writeNeighbors(OutputIterator &it, const Vertex &v)
static Size degree(const Vertex &v)
static bool isAdjacentTo(const Point &p1, const Point &p2)
BOOST_CONCEPT_ASSERT((concepts::CSpace< TSpace >))
static bool isProperlyAdjacentTo(const Point &p1, const Point &p2)
static void selfDisplay(std::ostream &out)
static Size computeCapacity()
static Size bestCapacity()
static void writeNeighbors(OutputIterator &it, const Vertex &v, const VertexPredicate &pred)
MetricAdjacency(const MetricAdjacency &other)
MetricAdjacency & operator=(const MetricAdjacency &other)
MetricAdjacency< Space, maxNorm1, dimension > Adjacency
std::set< Vertex > VertexSet
size_t Size
Type used to represent sizes in the digital space.
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
DGtal::uint32_t Dimension
std::map< Vertex, Value > Type
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.