35 #ifndef NEKTAR_MESHUTILS_EXTLIBINTERFACE_TRIANGLEINTERFACE_H
36 #define NEKTAR_MESHUTILS_EXTLIBINTERFACE_TRIANGLEINTERFACE_H
44 #define ANSI_DECLARATORS
54 namespace NekMeshUtils
73 void Assign(std::vector<std::vector<NodeSharedPtr> > &boundingloops,
92 void Mesh(
bool Quality =
false);
97 void Extract(std::vector<std::vector<NodeSharedPtr> > &Connec);
110 triangulate(cmd, &in, &
out, NULL);
112 struct triangulateio in,
out;
General purpose memory allocation routines with the ability to allocate from thread specific memory p...
class for interfacing with external library triangle
void Extract(std::vector< std::vector< NodeSharedPtr > > &Connec)
Extract mesh.
std::vector< std::vector< NodeSharedPtr > > m_boundingloops
List of bounding nodes to the surface.
TriangleInterface()
default constructor
int sid
ID of the surface.
NekDouble m_str
Stretching factor of parameter plane.
void SetUp()
Clear memory.
std::vector< Array< OneD, NekDouble > > m_centers
Coordinates of the centers of the loops.
std::vector< NodeSharedPtr > m_stienerpoints
List of additional nodes.
DelaunayTriangle dt
Triangle data strucutres.
void Assign(std::vector< std::vector< NodeSharedPtr > > &boundingloops, std::vector< Array< OneD, NekDouble > > ¢ers, int i, NekDouble str=1.0)
assign meshing paramters
std::map< int, NodeSharedPtr > nodemap
Map from NekMesh id to triangle id.
void Mesh(bool Quality=false)
Execute meshing.
void AssignStiener(std::vector< NodeSharedPtr > stiner)
std::shared_ptr< TriangleInterface > TriangleInterfaceSharedPtr
struct triangulateio in out