DGtal 1.4.0
Loading...
Searching...
No Matches
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension > Class Template Reference

Aim: Describes digital adjacencies in a digital domain that are defined with the 1-norm and the infinity-norm. More...

#include <DGtal/topology/DomainMetricAdjacency.h>

Public Types

typedef Domain::Space Space
 
typedef Space::Point Point
 
typedef Space::Vector Vector
 

Public Member Functions

 DomainMetricAdjacency (ConstAlias< Domain > aDomain)
 
 DomainMetricAdjacency (const DomainMetricAdjacency &other)
 
 ~DomainMetricAdjacency ()
 
bool isAdjacentTo (const Point &p1, const Point &p2) const
 
bool isProperlyAdjacentTo (const Point &p1, const Point &p2) const
 
template<typename OutputIterator >
void writeNeighborhood (const Point &p, OutputIterator &out_it) const
 
template<typename OutputIterator >
void writeProperNeighborhood (const Point &p, OutputIterator &out_it) const
 
void selfDisplay (std::ostream &out) const
 
bool isValid () const
 

Protected Member Functions

 DomainMetricAdjacency ()
 

Private Member Functions

 BOOST_CONCEPT_ASSERT ((concepts::CDomain< Domain >))
 
DomainMetricAdjacencyoperator= (const DomainMetricAdjacency &other)
 

Private Attributes

const DomainmyDomain
 

Detailed Description

template<typename Domain, Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
class DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >

Aim: Describes digital adjacencies in a digital domain that are defined with the 1-norm and the infinity-norm.

Description of template class 'DomainMetricAdjacency'

It induces the classical 4 and 8 adjacencies in 2D, the 6, 18 and 26 adjacencies in 3D, and the \( \omega \) and \( \alpha \) adjacencies in nD.

Model of a CAdjacency.

Template Parameters
Domainany domain of a digital space (see concept CDomain).
maxNorm1defines which points are adjacent. More precisely, two points are adjacent iff their norm-infinity is less or equal than 1 and if their norm-1 is less or equal than maxNorm1.

Definition at line 76 of file DomainMetricAdjacency.h.

Member Typedef Documentation

◆ Point

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
typedef Space::Point DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::Point

Definition at line 82 of file DomainMetricAdjacency.h.

◆ Space

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
typedef Domain::Space DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::Space

Definition at line 81 of file DomainMetricAdjacency.h.

◆ Vector

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
typedef Space::Vector DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::Vector

Definition at line 83 of file DomainMetricAdjacency.h.

Constructor & Destructor Documentation

◆ DomainMetricAdjacency() [1/3]

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::DomainMetricAdjacency ( ConstAlias< Domain > aDomain)

Constructor from domain.

Parameters
aDomainany domain.

◆ DomainMetricAdjacency() [2/3]

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::DomainMetricAdjacency ( const DomainMetricAdjacency< Domain, maxNorm1, dimension > & other)

Copy constructor.

Parameters
otherthe object to clone.

◆ ~DomainMetricAdjacency()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::~DomainMetricAdjacency ( )

Destructor.

◆ DomainMetricAdjacency() [3/3]

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::DomainMetricAdjacency ( )
protected

Constructor. Forbidden by default (protected to avoid g++ warnings).

Member Function Documentation

◆ BOOST_CONCEPT_ASSERT()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::BOOST_CONCEPT_ASSERT ( (concepts::CDomain< Domain >) )
private

◆ isAdjacentTo()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
bool DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::isAdjacentTo ( const Point & p1,
const Point & p2 ) const
Parameters
p1any point in this space.
p2any point in this space.
Returns
'true' iff p1 is adjacent to p2 according to this adjacency relation.

◆ isProperlyAdjacentTo()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
bool DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::isProperlyAdjacentTo ( const Point & p1,
const Point & p2 ) const
Parameters
p1any point in this space.
p2any point in this space.
Returns
'true' iff p1 is adjacent to p2 according to this adjacency relation and p1 != p2.

◆ isValid()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
bool DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::isValid ( ) const

Checks the validity/consistency of the object.

Returns
'true' if the object is valid, 'false' otherwise.

◆ operator=()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DomainMetricAdjacency & DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::operator= ( const DomainMetricAdjacency< Domain, maxNorm1, dimension > & other)
private

Assignment.

Parameters
otherthe object to copy.
Returns
a reference on 'this'. Forbidden by default.

◆ selfDisplay()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
void DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::selfDisplay ( std::ostream & out) const

Writes/Displays the object on an output stream.

Parameters
outthe output stream where the object is written.

◆ writeNeighborhood()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
template<typename OutputIterator >
void DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::writeNeighborhood ( const Point & p,
OutputIterator & out_it ) const

Outputs the whole neighborhood of point [p] as a sequence of *out_it++ = ...

Template Parameters
OutputIteratorany output iterator (like std::back_insert_iterator< std::vector<int> >).
Parameters
pany point of this space.
out_itany output iterator.

◆ writeProperNeighborhood()

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
template<typename OutputIterator >
void DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::writeProperNeighborhood ( const Point & p,
OutputIterator & out_it ) const

Outputs the whole proper neighborhood of point [p] (thus without [p] itself) as a sequence of *out_it++ = ...

Template Parameters
OutputIteratorany output iterator (like std::back_insert_iterator< std::vector<int> >).
Parameters
pany point of this space.
out_itany output iterator.

Field Documentation

◆ myDomain

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
const Domain& DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::myDomain
private

The associated domain.

Definition at line 176 of file DomainMetricAdjacency.h.


The documentation for this class was generated from the following file: