DGtal  0.9.3beta
Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension > Class Template Reference

#include <DGtal/topology/DomainMetricAdjacency.h>

Collaboration diagram for DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >:
[legend]

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

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.

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.

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

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.
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.
template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::~DomainMetricAdjacency ( )

Destructor.

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

template<typename Domain , Dimension maxNorm1, Dimension dimension = Domain::Space::dimension>
DGtal::deprecated::DomainMetricAdjacency< Domain, maxNorm1, dimension >::BOOST_CONCEPT_ASSERT ( (concepts::CDomain< Domain >)  )
private
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.
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.
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.
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.
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.
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.
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

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: