DGtal 1.3.0
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes
DGtal::SurfelAdjacency< dim > Class Template Reference

Aim: Represent adjacencies between surfel elements, telling if it follows an interior to exterior ordering or exterior to interior ordering. It allows tracking of boundaries and of surfaces. More...

#include <DGtal/topology/SurfelAdjacency.h>

Public Member Functions

 ~SurfelAdjacency ()
 
 SurfelAdjacency (bool int2ext)
 
 SurfelAdjacency (const SurfelAdjacency &other)
 
SurfelAdjacencyoperator= (const SurfelAdjacency &other)
 
void setAdjacency (Dimension i, Dimension j, bool int2ext)
 
bool getAdjacency (Dimension i, Dimension j) const
 
void selfDisplay (std::ostream &out) const
 
bool isValid () const
 

Private Attributes

boost::array< bool, dim *dimmyInt2Ext
 

Detailed Description

template<Dimension dim>
class DGtal::SurfelAdjacency< dim >

Aim: Represent adjacencies between surfel elements, telling if it follows an interior to exterior ordering or exterior to interior ordering. It allows tracking of boundaries and of surfaces.

Description of class 'SurfelAdjacency'

Template Parameters
dimthe number of dimension of the space.

NB: backported from ImaGene.

Examples
dec/exampleDECSurface.cpp, dec/exampleHeatLaplace.cpp, examples/tutorial-examples/polyhedralizer.cpp, geometry/curves/estimation/exampleCurvature.cpp, geometry/curves/exampleGridCurve2d.cpp, geometry/curves/exampleGridCurve3d-2.cpp, geometry/surfaces/dvcm-2d-curvature.cpp, geometry/surfaces/dvcm-3d.cpp, geometry/surfaces/greedy-plane-segmentation-ex2.cpp, geometry/surfaces/greedy-plane-segmentation.cpp, geometry/volumes/distance/exampleFMM3D.cpp, graph/volDistanceTraversal.cpp, shapes/viewMarchingCubes.cpp, shapes/viewPolygonalMarchingCubes.cpp, topology/3dKSSurfaceExtraction.cpp, topology/ctopo-2-3d.cpp, topology/ctopo-2.cpp, topology/digitalSurfaceSlice.cpp, topology/frontierAndBoundary.cpp, topology/trackImplicitPolynomialSurfaceToOFF.cpp, topology/volBreadthFirstTraversal.cpp, topology/volMarchingCubes.cpp, topology/volToOFF.cpp, topology/volTrackBoundary.cpp, tutorial-examples/AreaSurfaceEstimation-final.cpp, tutorial-examples/FMMErosion.cpp, tutorial-examples/freemanChainFromImage.cpp, and tutorial-examples/polyhedralizer.cpp.

Definition at line 65 of file SurfelAdjacency.h.

Constructor & Destructor Documentation

◆ ~SurfelAdjacency()

Destructor.

◆ SurfelAdjacency() [1/2]

template<Dimension dim>
DGtal::SurfelAdjacency< dim >::SurfelAdjacency ( bool  int2ext)

Constructor.

Parameters
int2extwhen 'true', the surfel adjacency is interior to exterior for any coordinate pair, when 'false', it is exterior to interior for any one.

NB:

See also
setAdjacency to modify a specific pair or coordinates

◆ SurfelAdjacency() [2/2]

template<Dimension dim>
DGtal::SurfelAdjacency< dim >::SurfelAdjacency ( const SurfelAdjacency< dim > &  other)

Copy constructor.

Parameters
otherthe object to clone.

Member Function Documentation

◆ getAdjacency()

template<Dimension dim>
bool DGtal::SurfelAdjacency< dim >::getAdjacency ( Dimension  i,
Dimension  j 
) const

Returns whether a coordinate pair is interior (true) or exterior (false) in the bel adjacency.

Parameters
ifirst coordinate.
jsecond coordinate ('j != i').
Returns
'true' if the surfel adjacency is interior to exterior for the coordinate pair '(i,j)', 'false' when it is exterior to interior.

◆ isValid()

template<Dimension dim>
bool DGtal::SurfelAdjacency< dim >::isValid ( ) const

Checks the validity/consistency of the object.

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

◆ operator=()

template<Dimension dim>
SurfelAdjacency & DGtal::SurfelAdjacency< dim >::operator= ( const SurfelAdjacency< dim > &  other)

Assignment.

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

◆ selfDisplay()

template<Dimension dim>
void DGtal::SurfelAdjacency< dim >::selfDisplay ( std::ostream &  out) const

Writes/Displays the object on an output stream.

Parameters
outthe output stream where the object is written.

◆ setAdjacency()

template<Dimension dim>
void DGtal::SurfelAdjacency< dim >::setAdjacency ( Dimension  i,
Dimension  j,
bool  int2ext 
)

Set a coordinate pair as interior to exterior or exterior to interior in the surfel adjacency.

Parameters
ifirst coordinate.
jsecond coordinate (j != i).
int2extwhen 'true', the surfel adjacency is interior to exterior for the coordinate pair '(i,j)', when 'false', it is exterior to interior.

Field Documentation

◆ myInt2Ext

template<Dimension dim>
boost::array<bool, dim*dim> DGtal::SurfelAdjacency< dim >::myInt2Ext
private

Memorizes if the surfel adjacency is interior to exterior (true) or exterior to interior (false) for any pair (i,j). The index of the pair (i,j) is 'i * m_ks.dim() + j'.

Definition at line 147 of file SurfelAdjacency.h.


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