DGtal  0.9.4beta
Public Types | Public Member Functions | Private Attributes
DGtal::concepts::CPreCellularGridSpaceND< T > Struct Template Reference

#include <DGtal/topology/CPreCellularGridSpaceND.h>

Inheritance diagram for DGtal::concepts::CPreCellularGridSpaceND< T >:
[legend]
Collaboration diagram for DGtal::concepts::CPreCellularGridSpaceND< T >:
[legend]

Public Types

typedef T::Integer Integer
 
typedef T::Space Space
 
typedef T::PreCellularGridSpace PreCellularGridSpace
 
typedef T::Cell Cell
 
typedef T::SCell SCell
 
typedef T::Surfel Surfel
 
typedef T::Sign Sign
 
typedef T::DirIterator DirIterator
 
typedef T::Point Point
 
typedef T::Vector Vector
 
typedef T::Cells Cells
 
typedef T::SCells SCells
 
typedef T::CellSet CellSet
 
typedef T::SCellSet SCellSet
 
typedef T::SurfelSet SurfelSet
 
typedef int Dummy
 
typedef T::template CellMap< Dummy >::Type CellMap
 
typedef T::template SCellMap< Dummy >::Type SCellMap
 
typedef T::template SurfelMap< Dummy >::Type SurfelMap
 

Public Member Functions

 BOOST_CONCEPT_ASSERT ((CInteger< Integer >))
 
 BOOST_STATIC_ASSERT ((ConceptUtils::SameType< Integer, typename Space::Integer >::value))
 
 BOOST_STATIC_ASSERT ((ConceptUtils::SameType< Point, typename Space::Point >::value))
 
 BOOST_STATIC_ASSERT ((ConceptUtils::SameType< Vector, typename Space::Vector >::value))
 
 BOOST_CONCEPT_ASSERT ((CConstSinglePassRange< Cells >))
 
 BOOST_CONCEPT_ASSERT ((CConstSinglePassRange< SCells >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< CellSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< SCellSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< SurfelSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::SimpleAssociativeContainer< CellSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::SimpleAssociativeContainer< SCellSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::SimpleAssociativeContainer< SurfelSet >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< CellMap >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< SCellMap >))
 
 BOOST_CONCEPT_ASSERT ((boost::UniqueAssociativeContainer< SurfelMap >))
 
 BOOST_CONCEPT_ASSERT ((boost::PairAssociativeContainer< CellMap >))
 
 BOOST_CONCEPT_ASSERT ((boost::PairAssociativeContainer< SCellMap >))
 
 BOOST_CONCEPT_ASSERT ((boost::PairAssociativeContainer< SurfelMap >))
 
 BOOST_CONCEPT_USAGE (CPreCellularGridSpaceND)
 
void checkConstConstraints () const
 

Private Attributes

myX
 
Integer myInteger
 
Dimension myDim
 
Point myP1
 
Point myP2
 
Vector myV
 
Cell myCell
 
SCell mySCell
 
Cell myMutableCell
 
SCell myMutableSCell
 
bool myBool
 
Sign mySign
 
DirIterator myDirIt
 
Cells myCells
 
SCells mySCells
 

Detailed Description

template<typename T>
struct DGtal::concepts::CPreCellularGridSpaceND< T >

Aim: This concept describes an unbounded cellular grid space in nD. In these spaces obtained by cartesian product, cells have a cubic shape that depends on the dimension: 0-cells are points, 1-cells are unit segments, 2-cells are squares, 3-cells are cubes, and so on.

Description of concept 'CPreCellularGridSpaceND'

This concept is rather complex since it gathers all possible operations on cells. The idea is that only the space knows what are the cells, how to compute their adjacent or incident cells, how to extract their coordinates, where are the bounds, what is the topology and dimension of a cell, etc. Worse (!), you have two kinds of cells, normal cells (unsigned), and oriented cells (signed). The latter are used to define orientation and boundary operators.

Note
Another way of defining orientation and boundary operators is to define chains on cells and chain complexes. However, this is unnecessary here.

Models of CPreCellularGridSpaceND are used whenever you need to define a topology on a full digital space.

The space size only depends on the given integer precision.

We refer the reader to Cellular grid space and topology, unoriented and oriented cells, incidence for further details.

Refinement of

Associated types :

Note
DirIterator should be use as follows:
Cell c;
for ( KSpace::DirIterator q = x.uDirs( c ); q != 0; ++q )
{
Dimension dir = *q;
...
}

Notation

Definitions

Valid expressions and semantics

Name Expression Type requirements Return type Precondition Semantics Post condition Complexity
dimension X::dimension Dimension the dimension of the space
DIM X::dimension Dimension the dimension of the space
POS X::POS Sign the positive sign for cells
NEG X::NEG Sign the negative sign for cells
Make unsigned cell x.uCell(p)Cell returns the unsigned cell with Khalimsky coordinates equal to p
Make unsigned cell x.uCell(p, c)Cell returns the unsigned cell with digital coordinates equal to p and topology equal to c
Make signed cell x.sCell(p, sign = POS)SCell returns the signed cell with Khalimsky coordinates equal to p and sign sign
Make signed cell x.sCell(p, sc)SCell returns the signed cell with digital coordinates equal to p and sign and topology equal to sc
Make unsigned spel x.uSpel(p)Cell returns the unsigned spel with digital coordinates equal to p
Make signed spel x.sSpel(p, sign = POS)SCell returns the signed spel with digital coordinates equal to p and sign sign
Make unsigned pointel x.uPointel(p)Cell returns the unsigned pointel with digital coordinates equal to p
Make signed pointel x.sPointel(p, sign = POS)SCell returns the signed pointel with digital coordinates equal to p and sign sign
Get Khalimsky coordinatex.uKCoord(c, k)Integer returns the Khalimsky coordinate of cell c along axis k
Get digital coordinatex.uCoord(c, k)Integer returns the digital coordinate of cell c along axis k
Get Khalimsky coordinatesx.uKCoords(c)Point returns the Khalimsky coordinates of cell c
Get digital coordinatesx.uCoords(c)Point returns the digital coordinates of cell c
Get Khalimsky coordinatex.sKCoord(sc, k)Integer returns the Khalimsky coordinate of signed cell sc along axis k
Get digital coordinatex.sCoord(sc, k)Integer returns the digital coordinate of signed cell sc along axis k
Get Khalimsky coordinatesx.sKCoords(sc, k)Point returns the Khalimsky coordinates of signed cell sc
Get digital coordinatesx.sCoords(sc, k)Point returns the digital coordinates of signed cell sc
Set Khalimsky coordinate x.uSetKCoord(c,k,i)Sets the k-th Khalimsky coordinate of c to i
Set digital coordinate x.uSetCoord(c,k,i)Sets the k-th digital coordinate of c to i
Set Khalimsky coordinates x.uSetKCoords(c,p)Sets the Khalimsky coordinates of c to p
Set digital coordinates x.uSetCoords(c,p)Sets the digital coordinates of c to p
Set Khalimsky coordinate x.sSetKCoord(sc,k,i)Sets the k-th Khalimsky coordinate of sc to i
Set digital coordinate x.sSetCoord(sc,k,i)Sets the k-th digital coordinate of sc to i
Set Khalimsky coordinates x.sSetKCoords(sc,p)Sets the Khalimsky coordinates of sc to p
Set digital coordinates x.sSetCoords(sc,p)Sets the digital coordinates of sc to p
Sign/orient cell x.signs(c,sign)returns the signed cell with same topology as c and sign sign
Change sign x.sSetSign(sc, sign)Sets the sign of the signed cell sc to sign
Get sign x.sSign(sc)Sign returns the sign of cell sc
Unsign/unorient signed cell x.unsigns(sc)returns the unsigned cell with same topology as sc
Flip sign x.sOpp(sc) returns the signed cell with opposite sign to sc
Get topology word x.uTopology(c) Integer returns the topology word of unsigned cell c
Get topology word x.sTopology(sc) Integer returns the topology word of signed cell sc
Get cell dimension x.uDim(c) Dimension returns the dimension of the unsigned cell c
Get cell dimension x.sDim(sc) Dimension returns the dimension of the signed cell sc
Surfel test x.uIsSurfel(s) bool returns 'true' iff the unsigned cell c has dimension n-1
Surfel test x.sIsSurfel(sc) bool returns 'true' iff the signed cell sc has dimension n-1
Open test x.uIsOpen(c,k) bool returns 'true' iff the unsigned cell c is open along the k-th axis
Open test x.sIsOpen(sc,k) bool returns 'true' iff the signed cell sc is open along the k-th axis
Get open directions x.uDirs(c)DirIterator returns a kind of iterator that enumerates the open directions of c
Get open directions x.sDirs(sc)DirIterator returns a kind of iterator that enumerates the open directions of sc
Get closed directions x.uOrthDirs(c)DirIterator returns a kind of iterator that enumerates the closed directions of c
Get closed directions x.sOrthDirs(sc)DirIterator returns a kind of iterator that enumerates the closed directions of sc
Get closed direction of surfel x.uOrthDir(c)x.uIsSurfel(c)Dimension returns the closed direction of the n-1-cell c
Get closed direction of surfel x.sOrthDir(sc)x.sIsSurfel(sc)Dimension returns the closed direction of the signed n-1-cell sc
Get next cell along some axisx.uGetIncr(c,k)Cell returns the same cell as c except the k-th coordinate that is incremented
Get previous cell along some axisx.uGetDecr(c,k)Cell returns the same cell as c except the k-th coordinate that is decremented
Maximal coordinate testx.uIsMax(c,k)bool returns 'true' iff the cell has the maximal possible k-th coordinate
Minimal coordinate testx.uIsMin(c,k)bool returns 'true' iff the cell has the minimal possible k-th coordinate
Inside test along some axisx.uIsInside(c,k)bool returns 'true' iff the cell c has a valid k-th coordinate
Get cell further along some axisx.uGetAdd(c,k,i)Cell returns the same cell as c except the k-th coordinate that is increased by i
Get cell before along some axisx.uGetSub(c,k,i)Cell returns the same cell as c except the k-th coordinate that is decreased by i
Get the translation of a cell x.uTranslation(c,v)Cell returns the cell that is the translation of c by the vector v
Get the projection of a cell x.uProjection(c,bc,k)bc is a Cell Cell returns the same cell as c except for the k-th coordinate that is equal to the one of bc
Projection of a cell x.uProject(c,bc,k)bc is a Cell modifies cell c such that its k-th coordinate that is equal to the one of bc
Next cell within bounds x.uNext(c,lc,uc)lc, uc are Cell bool cell c becomes the next cell with same topology within lower and upper bounds lc and uc, returns 'true' iff c is still within bounds
Get next cell along some axisx.sGetIncr(sc,k)SCell returns the same cell as sc except the k-th coordinate that is incremented
Get previous cell along some axisx.sGetDecr(sc,k)SCell returns the same cell as sc except the k-th coordinate that is decremented
Maximal coordinate testx.sIsMax(sc,k)bool returns 'true' iff the cell has the maximal possible k-th coordinate
Minimal coordinate testx.sIsMin(sc,k)bool returns 'true' iff the cell has the minimal possible k-th coordinate
Inside test along some axisx.sIsInside(sc,k)bool returns 'true' iff the cell sc has a valid k-th coordinate
Get cell further along some axisx.sGetAdd(sc,k,i)SCell returns the same cell as sc except the k-th coordinate that is increased by i
Get cell before along some axisx.sGetSub(sc,k,i)SCell returns the same cell as sc except the k-th coordinate that is decreased by i
Get the translation of a cell x.sTranslation(sc,v)SCell returns the cell that is the translation of sc by the vector v
Get the projection of a cell x.sProjection(sc,bc,k)bc is a SCell SCell returns the same cell as sc except for the k-th coordinate that is equal to the one of bc
Projection of a cell x.sProject(sc,bc,k)bc is a SCell modifies cell sc such that its k-th coordinate that is equal to the one of bc
Next cell within bounds x.sNext(sc,lc,uc)lc, uc are SCell bool cell sc becomes the next cell with same topology within lower and upper bounds lc and uc, returns 'true' iff sc is still within bounds
Neighborhood x.uNeighborhood(c) Cells returns the range of cells that forms the 1-neighborhood of c
Neighborhood x.sNeighborhood(sc)SCells returns the range of signed cells that forms the 1-neighborhood of sc
Proper neighborhood x.uProperNeighborhood(c) Cells returns the range of cells that forms the proper 1-neighborhood of c, hence without c itself
Proper neighborhood x.sProperNeighborhood(sc)SCells returns the range of signed cells that forms the proper 1-neighborhood of sc, hence without sc itself
Adjacent cellx.uAdjacent(c,k,b)b is a bool Cell return the cell adjacent to c along axis k either with greater coordinate (b is true) or lesser
Adjacent cellx.sAdjacent(sc,k,b)b is a bool SCell return the signed cell adjacent to sc along axis k either with greater coordinate (b is true) or lesser
Incident cellx.uIncident(c,k,b)b is a bool Cell return the cell incident to c along axis k either with greater coordinate (b is true) or lesser
Incident cellx.sIncident(sc,k,b)b is a bool SCell return the signed cell incident to sc along axis k either with greater coordinate (b is true) or lesser
Lower incident cellsx.uLowerIncident(c)Cells return all the cells just lower incident to c (1-dim less)
Lower incident cellsx.sLowerIncident(sc)SCells return all the signed cells just lower incident to sc (1-dim less)
Upper incident cellsx.uUpperIncident(c)Cells return all the cells just upper incident to c (1-dim more)
Upper incident cellsx.sUpperIncident(sc)SCells return all the signed cells just upper incident to c (1-dim more)
Faces of a cellx.uFaces(c)Cells return all the faces of the cell c
Co-Faces of a cellx.uCoFaces(c)Cells return all the co-faces of the cell c
Direct orientationx.sDirect(sc,k)bool return the direct orientation of cell sc along axis k
Direct incident cellx.sDirectIncident(sc,k)SCell return the signed cell that is the direct incident cell to sc along axis k
Indirect incident cellx.sIndirectIncident(sc,k)SCell return the signed cell that is the indirect incident cell to sc along axis k

Invariants

Models

Notes

Template Parameters
Tthe type that should be a model of CPreCellularGridSpaceND.

Definition at line 283 of file CPreCellularGridSpaceND.h.

Member Typedef Documentation

template<typename T>
typedef T::Cell DGtal::concepts::CPreCellularGridSpaceND< T >::Cell

Definition at line 291 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::template CellMap<Dummy>::Type DGtal::concepts::CPreCellularGridSpaceND< T >::CellMap

Definition at line 304 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Cells DGtal::concepts::CPreCellularGridSpaceND< T >::Cells

Definition at line 298 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::CellSet DGtal::concepts::CPreCellularGridSpaceND< T >::CellSet

Definition at line 300 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::DirIterator DGtal::concepts::CPreCellularGridSpaceND< T >::DirIterator

Definition at line 295 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef int DGtal::concepts::CPreCellularGridSpaceND< T >::Dummy

Definition at line 303 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Integer DGtal::concepts::CPreCellularGridSpaceND< T >::Integer

Definition at line 288 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Point DGtal::concepts::CPreCellularGridSpaceND< T >::Point

Definition at line 296 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::PreCellularGridSpace DGtal::concepts::CPreCellularGridSpaceND< T >::PreCellularGridSpace

Definition at line 290 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::SCell DGtal::concepts::CPreCellularGridSpaceND< T >::SCell

Definition at line 292 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::template SCellMap<Dummy>::Type DGtal::concepts::CPreCellularGridSpaceND< T >::SCellMap

Definition at line 305 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::SCells DGtal::concepts::CPreCellularGridSpaceND< T >::SCells

Definition at line 299 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::SCellSet DGtal::concepts::CPreCellularGridSpaceND< T >::SCellSet

Definition at line 301 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Sign DGtal::concepts::CPreCellularGridSpaceND< T >::Sign

Definition at line 294 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Space DGtal::concepts::CPreCellularGridSpaceND< T >::Space

Definition at line 289 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Surfel DGtal::concepts::CPreCellularGridSpaceND< T >::Surfel

Definition at line 293 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::template SurfelMap<Dummy>::Type DGtal::concepts::CPreCellularGridSpaceND< T >::SurfelMap

Definition at line 306 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::SurfelSet DGtal::concepts::CPreCellularGridSpaceND< T >::SurfelSet

Definition at line 302 of file CPreCellularGridSpaceND.h.

template<typename T>
typedef T::Vector DGtal::concepts::CPreCellularGridSpaceND< T >::Vector

Definition at line 297 of file CPreCellularGridSpaceND.h.

Member Function Documentation

template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (CInteger< Integer >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (CConstSinglePassRange< Cells >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (CConstSinglePassRange< SCells >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< CellSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< SCellSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< SurfelSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::SimpleAssociativeContainer< CellSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::SimpleAssociativeContainer< SCellSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::SimpleAssociativeContainer< SurfelSet >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< CellMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< SCellMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::UniqueAssociativeContainer< SurfelMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::PairAssociativeContainer< CellMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::PairAssociativeContainer< SCellMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_ASSERT ( (boost::PairAssociativeContainer< SurfelMap >)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_USAGE ( CPreCellularGridSpaceND< T >  )
inline
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_STATIC_ASSERT ( (ConceptUtils::SameType< Integer, typename Space::Integer >::value)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_STATIC_ASSERT ( (ConceptUtils::SameType< Point, typename Space::Point >::value)  )
template<typename T>
DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_STATIC_ASSERT ( (ConceptUtils::SameType< Vector, typename Space::Vector >::value)  )
template<typename T>
void DGtal::concepts::CPreCellularGridSpaceND< T >::checkConstConstraints ( ) const
inline

Definition at line 335 of file CPreCellularGridSpaceND.h.

References DGtal::concepts::CPreCellularGridSpaceND< T >::myBool, DGtal::concepts::CPreCellularGridSpaceND< T >::myCell, DGtal::concepts::CPreCellularGridSpaceND< T >::myCells, DGtal::concepts::CPreCellularGridSpaceND< T >::myDim, DGtal::concepts::CPreCellularGridSpaceND< T >::myDirIt, DGtal::concepts::CPreCellularGridSpaceND< T >::myInteger, DGtal::concepts::CPreCellularGridSpaceND< T >::myMutableCell, DGtal::concepts::CPreCellularGridSpaceND< T >::myMutableSCell, DGtal::concepts::CPreCellularGridSpaceND< T >::myP1, DGtal::concepts::CPreCellularGridSpaceND< T >::mySCell, DGtal::concepts::CPreCellularGridSpaceND< T >::mySCells, DGtal::concepts::CPreCellularGridSpaceND< T >::mySign, DGtal::concepts::CPreCellularGridSpaceND< T >::myV, DGtal::concepts::CPreCellularGridSpaceND< T >::myX, and DGtal::concepts::ConceptUtils::sameType().

Referenced by DGtal::concepts::CPreCellularGridSpaceND< T >::BOOST_CONCEPT_USAGE().

336  {
337  ConceptUtils::sameType( myCell, myX.uCell( myP1 ) );
339  ConceptUtils::sameType( mySCell, myX.sCell( myP1 ) );
342  ConceptUtils::sameType( myCell, myX.uSpel( myP1 ) );
343  ConceptUtils::sameType( mySCell, myX.sSpel( myP1 ) );
345  ConceptUtils::sameType( myCell, myX.uPointel( myP1 ) );
346  ConceptUtils::sameType( mySCell, myX.sPointel( myP1 ) );
347  ConceptUtils::sameType( mySCell, myX.sPointel( myP1, myBool ) );
350  ConceptUtils::sameType( myP1, myX.uKCoords( myCell ) );
351  ConceptUtils::sameType( myP1, myX.uCoords( myCell ) );
354  ConceptUtils::sameType( myP1, myX.sKCoords( mySCell ) );
355  ConceptUtils::sameType( myP1, myX.sCoords( mySCell ) );
356  myX.uSetKCoord( myMutableCell, myDim, myInteger );
357  myX.uSetCoord( myMutableCell, myDim, myInteger );
358  myX.uSetKCoords( myMutableCell, myP1 );
359  myX.uSetCoords( myMutableCell, myP1 );
360  myX.sSetKCoord( myMutableSCell, myDim, myInteger );
361  myX.sSetCoord( myMutableSCell, myDim, myInteger );
362  myX.sSetKCoords( myMutableSCell, myP1 );
363  myX.sSetCoords( myMutableSCell, myP1 );
365  myX.sSetSign( myMutableSCell, mySign );
368  ConceptUtils::sameType( myCell, myX.unsigns( mySCell ) );
369  ConceptUtils::sameType( myInteger, myX.uTopology( myCell ) );
370  ConceptUtils::sameType( myInteger, myX.sTopology( mySCell ) );
373  ConceptUtils::sameType( myBool, myX.uIsSurfel( myCell ) );
374  ConceptUtils::sameType( myBool, myX.sIsSurfel( mySCell ) );
375  ConceptUtils::sameType( myBool, myX.uIsOpen( myCell, myDim ) );
379  ConceptUtils::sameType( myDirIt, myX.uOrthDirs( myCell ) );
380  ConceptUtils::sameType( myDirIt, myX.sOrthDirs( mySCell ) );
381  ConceptUtils::sameType( myDim, myX.uOrthDir( myCell ) );
382  ConceptUtils::sameType( myDim, myX.sOrthDir( mySCell ) );
383  // -------------------- Unsigned cell geometry services --------------------
384  ConceptUtils::sameType( myCell, myX.uGetIncr( myCell, myDim ) );
385  ConceptUtils::sameType( myCell, myX.uGetDecr( myCell, myDim ) );
388  ConceptUtils::sameType( myBool, myX.uIsInside( myCell, myDim ) );
391  ConceptUtils::sameType( myCell, myX.uTranslation( myCell, myV ) );
392  ConceptUtils::sameType( myCell, myX.uProjection( myCell, myCell, myDim ) );
393  myX.uProject( myMutableCell, myCell, myDim );
395  // -------------------- Signed cell geometry services --------------------
400  ConceptUtils::sameType( myBool, myX.sIsInside( mySCell, myDim ) );
403  ConceptUtils::sameType( mySCell, myX.sTranslation( mySCell, myV ) );
404  ConceptUtils::sameType( mySCell, myX.sProjection( mySCell, mySCell, myDim ) );
405  myX.sProject( myMutableSCell, mySCell, myDim );
407  // ----------------------- Neighborhood services --------------------------
408  ConceptUtils::sameType( myCells, myX.uNeighborhood( myCell ) );
409  ConceptUtils::sameType( myCells, myX.uProperNeighborhood( myCell ) );
410  ConceptUtils::sameType( mySCells, myX.sNeighborhood( mySCell ) );
411  ConceptUtils::sameType( mySCells, myX.sProperNeighborhood( mySCell ) );
412  ConceptUtils::sameType( myCell, myX.uAdjacent( myCell, myDim, myBool ) );
414  // ----------------------- Incidence services --------------------------
415  ConceptUtils::sameType( myCell, myX.uIncident( myCell, myDim, myBool ) );
417  ConceptUtils::sameType( myCells, myX.uLowerIncident( myCell ) );
418  ConceptUtils::sameType( myCells, myX.uUpperIncident( myCell ) );
419  ConceptUtils::sameType( mySCells, myX.sLowerIncident( mySCell ) );
420  ConceptUtils::sameType( mySCells, myX.sUpperIncident( mySCell ) );
422  ConceptUtils::sameType( myCells, myX.uCoFaces( myCell ) );
424  ConceptUtils::sameType( mySCell, myX.sDirectIncident( mySCell, myDim ) );
425  ConceptUtils::sameType( mySCell, myX.sIndirectIncident( mySCell, myDim ) );
426 
427 }
void sameType(const T &t1, const T &t2)

Field Documentation

template<typename T>
bool DGtal::concepts::CPreCellularGridSpaceND< T >::myBool
private
template<typename T>
Cell DGtal::concepts::CPreCellularGridSpaceND< T >::myCell
private
template<typename T>
Cells DGtal::concepts::CPreCellularGridSpaceND< T >::myCells
private
template<typename T>
Dimension DGtal::concepts::CPreCellularGridSpaceND< T >::myDim
private
template<typename T>
DirIterator DGtal::concepts::CPreCellularGridSpaceND< T >::myDirIt
private
template<typename T>
Integer DGtal::concepts::CPreCellularGridSpaceND< T >::myInteger
private
template<typename T>
Cell DGtal::concepts::CPreCellularGridSpaceND< T >::myMutableCell
mutableprivate
template<typename T>
SCell DGtal::concepts::CPreCellularGridSpaceND< T >::myMutableSCell
mutableprivate
template<typename T>
Point DGtal::concepts::CPreCellularGridSpaceND< T >::myP1
private
template<typename T>
Point DGtal::concepts::CPreCellularGridSpaceND< T >::myP2
private

Definition at line 433 of file CPreCellularGridSpaceND.h.

template<typename T>
SCell DGtal::concepts::CPreCellularGridSpaceND< T >::mySCell
private
template<typename T>
SCells DGtal::concepts::CPreCellularGridSpaceND< T >::mySCells
private
template<typename T>
Sign DGtal::concepts::CPreCellularGridSpaceND< T >::mySign
private
template<typename T>
Vector DGtal::concepts::CPreCellularGridSpaceND< T >::myV
private
template<typename T>
T DGtal::concepts::CPreCellularGridSpaceND< T >::myX
private

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