Classes | Public Types | Public Member Functions | List of all members
DelaunayMesh< Triangulation > Class Template Reference

The vertex and cell classes must have an index defined. More...

Inheritance diagram for DelaunayMesh< Triangulation >:
Inheritance graph
[legend]
Collaboration diagram for DelaunayMesh< Triangulation >:
Collaboration graph
[legend]

Public Types

typedef Triangulation::Cell_handle Cell_handle
 
typedef Triangulation::Vertex_handle Vertex_handle
 
typedef Triangulation::Edge Edge
 
typedef Triangulation::Point Point
 
typedef Triangulation::Facet Facet
 
typedef Triangulation::Finite_vertices_iterator Finite_vertices_iterator
 
typedef Triangulation::Finite_cells_iterator Finite_cells_iterator
 
typedef Triangulation::Finite_facets_iterator Finite_facets_iterator
 
typedef HashSet< Pair< label >, FixedList< label, 2 >::Hash<> > labelPairHashSet
 
typedef HashTable< label, labelPair, FixedList< label, 2 >::Hash<> > labelTolabelPairHashTable
 

Public Member Functions

 DelaunayMesh (const Time &runTime)
 Construct from components. More...
 
 DelaunayMesh (const Time &runTime, const word &meshName)
 
 ~DelaunayMesh ()
 Destructor. More...
 
const Timetime () const
 Return a reference to the Time object. More...
 
void timeCheck (const string &description, const bool check=true) const
 Write the cpuTime to screen. More...
 
label getNewCellIndex () const
 Create a new unique cell index and return. More...
 
label getNewVertexIndex () const
 Create a new unique vertex index and return. More...
 
label cellCount () const
 Return the cell count (the next unique cell index) More...
 
label vertexCount () const
 Return the vertex count (the next unique vertex index) More...
 
void resetCellCount ()
 Set the cell count to zero. More...
 
void resetVertexCount ()
 Set the vertex count to zero. More...
 
void reset ()
 Clear the entire triangulation. More...
 
Map< labelinsertPoints (const List< Vb > &vertices, const bool reIndex)
 Insert the list of vertices (calls rangeInsertWithInfo) More...
 
template<class PointIterator >
Map< labelrangeInsertWithInfo (PointIterator begin, PointIterator end, bool printErrors=false, bool reIndex=true)
 Function inserting points into a triangulation and setting the. More...
 
void printInfo (Ostream &os) const
 Write mesh statistics to stream. More...
 
void printVertexInfo (Ostream &os) const
 Write vertex statistics in the form of a table to stream. More...
 
autoPtr< polyMeshcreateMesh (const fileName &name, labelTolabelPairHashTable &vertexMap, labelList &cellMap, const bool writeDelaunayData=true) const
 Create an fvMesh from the triangulation. More...
 

Detailed Description

template<class Triangulation>
class Foam::DelaunayMesh< Triangulation >

The vertex and cell classes must have an index defined.

Source files

Definition at line 60 of file DelaunayMesh.H.

Member Typedef Documentation

typedef Triangulation::Cell_handle Cell_handle

Definition at line 66 of file DelaunayMesh.H.

typedef Triangulation::Vertex_handle Vertex_handle

Definition at line 67 of file DelaunayMesh.H.

typedef Triangulation::Edge Edge

Definition at line 68 of file DelaunayMesh.H.

typedef Triangulation::Point Point

Definition at line 69 of file DelaunayMesh.H.

typedef Triangulation::Facet Facet

Definition at line 70 of file DelaunayMesh.H.

typedef Triangulation::Finite_vertices_iterator Finite_vertices_iterator

Definition at line 73 of file DelaunayMesh.H.

typedef Triangulation::Finite_cells_iterator Finite_cells_iterator

Definition at line 75 of file DelaunayMesh.H.

typedef Triangulation::Finite_facets_iterator Finite_facets_iterator

Definition at line 77 of file DelaunayMesh.H.

Definition at line 83 of file DelaunayMesh.H.

Definition at line 90 of file DelaunayMesh.H.

Constructor & Destructor Documentation

DelaunayMesh ( const Time runTime)
explicit

Construct from components.

DelaunayMesh ( const Time runTime,
const word meshName 
)

Destructor.

Member Function Documentation

const Foam::Time & time ( ) const
inline

Return a reference to the Time object.

Definition at line 29 of file DelaunayMeshI.H.

References DelaunayMesh< Triangulation >::timeCheck().

Here is the call graph for this function:

void timeCheck ( const string description,
const bool  check = true 
) const
inline

Write the cpuTime to screen.

Definition at line 37 of file DelaunayMeshI.H.

References Foam::endl(), Foam::Info, and Foam::nl.

Referenced by DelaunayMesh< Triangulation >::time().

Here is the call graph for this function:

Here is the caller graph for this function:

Foam::label getNewCellIndex ( ) const
inline

Create a new unique cell index and return.

Definition at line 63 of file DelaunayMeshI.H.

References Foam::endl(), Foam::labelMax, and WarningIn.

Here is the call graph for this function:

Foam::label getNewVertexIndex ( ) const
inline

Create a new unique vertex index and return.

Definition at line 80 of file DelaunayMeshI.H.

References Foam::endl(), Foam::labelMax, and WarningIn.

Here is the call graph for this function:

Foam::label cellCount ( ) const
inline

Return the cell count (the next unique cell index)

Definition at line 97 of file DelaunayMeshI.H.

Foam::label vertexCount ( ) const
inline

Return the vertex count (the next unique vertex index)

Definition at line 104 of file DelaunayMeshI.H.

void resetCellCount ( )
inline

Set the cell count to zero.

Definition at line 111 of file DelaunayMeshI.H.

void resetVertexCount ( )
inline

Set the vertex count to zero.

Definition at line 118 of file DelaunayMeshI.H.

void reset ( )

Clear the entire triangulation.

Map<label> insertPoints ( const List< Vb > &  vertices,
const bool  reIndex 
)

Insert the list of vertices (calls rangeInsertWithInfo)

Map<label> rangeInsertWithInfo ( PointIterator  begin,
PointIterator  end,
bool  printErrors = false,
bool  reIndex = true 
)

Function inserting points into a triangulation and setting the.

index and type data of the point in the correct order. This is faster than inserting points individually.

Adapted from a post on the CGAL lists: 2010-01/msg00004.html by Sebastien Loriot (Geometry Factory).

void printInfo ( Ostream os) const

Write mesh statistics to stream.

void printVertexInfo ( Ostream os) const

Write vertex statistics in the form of a table to stream.

autoPtr<polyMesh> createMesh ( const fileName name,
labelTolabelPairHashTable vertexMap,
labelList cellMap,
const bool  writeDelaunayData = true 
) const

Create an fvMesh from the triangulation.

The mesh is not parallel consistent - only used for viewing


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