Go to the documentation of this file.
19 #ifndef LIBMESH_MESH_TETGEN_INTERFACE_H
20 #define LIBMESH_MESH_TETGEN_INTERFACE_H
22 #include "libmesh/libmesh_config.h"
23 #ifdef LIBMESH_HAVE_TETGEN
27 #include "libmesh/mesh_serializer.h"
28 #include "libmesh/point.h"
39 class UnstructuredMesh;
92 double volume_constraint=0.);
100 double quality_constraint=0.,
101 double volume_constraint=0.);
176 #endif // LIBMESH_HAVE_TETGEN
178 #endif // LIBMESH_MESH_TETGEN_INTERFACE_H
The TetGenWrapper provides an interface for basic access to TetGen data structures and methods.
TetGenMeshInterface(UnstructuredMesh &mesh)
Constructor.
The libMesh namespace provides an interface to certain functionality in the library.
void fill_pointlist(TetGenWrapper &wrapper)
This function copies nodes from the _mesh into TetGen's pointlist.
unsigned check_hull_integrity()
This function checks the integrity of the current set of elements in the Mesh to see if they comprise...
void triangulate_conformingDelaunayMesh_carvehole(const std::vector< Point > &holes, double quality_constraint=0., double volume_constraint=0.)
Method invokes TetGen library to compute a Delaunay tetrahedralization from the nodes point set.
UnstructuredMesh & _mesh
Local reference to the mesh we are working with.
std::vector< unsigned > _sequential_to_libmesh_node_map
We should not assume libmesh nodes are numbered sequentially...
Temporarily serialize a DistributedMesh for output; a distributed mesh is allgathered by the MeshSeri...
void process_hull_integrity_result(unsigned result)
This function prints an informative message and crashes based on the output of the check_hull_integri...
std::string _switches
Parameter controlling the behaviour of tetgen.
MeshSerializer _serializer
Tetgen only operates on serial meshes.
void delete_2D_hull_elements()
Delete original convex hull elements from the Mesh after performing a Delaunay tetrahedralization.
~TetGenMeshInterface()
Empty destructor.
void assign_nodes_to_elem(unsigned *node_labels, Elem *elem)
Assigns the node IDs contained in the 'node_labels' array to 'elem'.
The UnstructuredMesh class is derived from the MeshBase class.
Class TetGenMeshInterface provides an interface for tetrahedralization of meshes using the TetGen lib...
void triangulate_conformingDelaunayMesh(double quality_constraint=0., double volume_constraint=0.)
Method invokes TetGen library to compute a Delaunay tetrahedralization from the nodes point set.
void triangulate_pointset()
Method invokes TetGen library to compute a Delaunay tetrahedralization from the nodes point set.
void set_switches(const std::string &)
Method to set switches to tetgen, allowing for different behaviours.
This is the base class from which all geometric element types are derived.
void pointset_convexhull()
Method invokes TetGen library to compute a Delaunay tetrahedralization from the nodes point set.