DGtal
0.6.devel
|
#include <CAdjacency.h>
Public Types | |
typedef Adj::Space | Space |
typedef Adj::Point | Point |
typedef Adj::Adjacency | Adjacency |
![]() | |
typedef Adj::Vertex | Vertex |
typedef Adj::Size | Size |
typedef Adj::VertexSet | VertexSet |
Public Member Functions | |
BOOST_CONCEPT_USAGE (CAdjacency) | |
![]() | |
BOOST_CONCEPT_ASSERT ((CInteger< Size >)) | |
BOOST_CONCEPT_USAGE (CUndirectedSimpleLocalGraph) | |
void | checkConstConstraints () const |
Private Attributes | |
Adj | myAdj |
Point | myP1 |
Point | myP2 |
bool | myBool |
std::back_insert_iterator < std::vector< Point > > | myInserter |
Aim: The concept CAdjacency defines an elementary adjacency relation between points of a digital space.
DescriptionDescription of concept 'CAdjacency'
It thus distinguishes which points are close and which points are further away in this space. Adjacency relations are used to define a digital topology, in the sense of Rosenfeld or in the sense of Herman. In other words, and adjacency relation define a neighborhood graph on the points of a digital domain.
Refinement of CUndirectedSimpleLocalGraph
Associated types (must be defined in the model):
Space:
the space of the adjacency.Point:
the digital point type.Adjacency:
the type of the adjacency itself.Notations
Adj
: A type that is a model of CAdjacencyadj
: Object of type Adj.p1
, p2
: an object of type Point. Definitions
Valid expressions and
Name | Expression | Type requirements | Return type | Precondition | Semantics | Postcondition | Complexity |
adjacency test | adj.isAdjacentTo( p1, p2 ) | p1 and p2 of same type Point. | bool | Return 'true' when the two points are adjacent according to the adjacency relation adj | |||
proper adjacency test | adj.isProperlyAdjacentTo( p1, p2 ) | p1 and p2 of same type Point. | bool | Return 'true' when the two points are adjacent according to the adjacency relation adj and if p1 different from p2 | |||
write neighborhood | adj.writeNeighborhood( p, out_it ) | p of type Point, out_it any output iterator. | writes the whole neighborhood of p with the given output iterator out_it | ||||
write proper neighborhood | adj.writeProperNeighborhood( p, out_it ) | p of type Point, out_it any output iterator. | writes the whole neighborhood of p (except p itself), with the given output iterator out_it | ||||
write neighborhood satisfying a predicate | adj.writeNeighborhood( p, out_it,pred ) | p of type Point, out_it any output iterator, pred any point predicate. | writes the points of the neighborhood of p that satisfy the predicate pred , with the given output iterator out_it | ||||
write proper neighborhood satisfying a predicate | adj.writeProperNeighborhood( p, out_it,pred ) | p of type Point, out_it any output iterator, pred any point predicate. | writes the points of the neighborhood of p (except p itself) that satisfy the predicate pred , with the given output iterator out_it |
Invariants###
Models###
Notes###
Definition at line 136 of file CAdjacency.h.
typedef Adj::Adjacency DGtal::CAdjacency< Adj >::Adjacency |
Definition at line 144 of file CAdjacency.h.
typedef Adj::Point DGtal::CAdjacency< Adj >::Point |
Definition at line 143 of file CAdjacency.h.
typedef Adj::Space DGtal::CAdjacency< Adj >::Space |
Definition at line 142 of file CAdjacency.h.
|
inline |
Definition at line 146 of file CAdjacency.h.
|
private |
Definition at line 157 of file CAdjacency.h.
Referenced by DGtal::CAdjacency< T >::BOOST_CONCEPT_USAGE().
|
private |
Definition at line 160 of file CAdjacency.h.
Referenced by DGtal::CAdjacency< T >::BOOST_CONCEPT_USAGE().
|
private |
Definition at line 161 of file CAdjacency.h.
|
private |
Definition at line 158 of file CAdjacency.h.
Referenced by DGtal::CAdjacency< T >::BOOST_CONCEPT_USAGE().
|
private |
Definition at line 159 of file CAdjacency.h.
Referenced by DGtal::CAdjacency< T >::BOOST_CONCEPT_USAGE().