RINGMesh  Version 5.0.0
A programming library for geological model meshes
RINGMesh::TetraGen Class Referenceabstract

#include <tetra_gen.h>

Public Member Functions

virtual ~TetraGen ()=default
 
void set_boundaries (const Region3D &region, const WellGroup3D *wells=nullptr)
 
void set_internal_points (const std::vector< vec3 > &points)
 
bool tetrahedralize (bool refine=true)
 Send the set of points/edges/triangles to MGTetra or TetGen. More...
 

Static Public Member Functions

static std::unique_ptr< TetraGencreate (GeoModel3D &M, index_t region_id, const std::string &algo_name)
 
static void initialize ()
 

Protected Member Functions

 TetraGen (GeoModel3D &geomodel, index_t region_id)
 
virtual bool do_tetrahedralize (bool refine)=0
 

Protected Attributes

GeoModelBuilder3D builder_
 
index_t output_region_ { NO_ID }
 
GEO::Mesh tetmesh_constraint_
 
const Region3D * region_ { nullptr }
 
const WellGroup3D * wells_ { nullptr }
 

Private Member Functions

 ringmesh_disable_copy_and_move (TetraGen)
 

Detailed Description

Definition at line 75 of file tetra_gen.h.

Constructor & Destructor Documentation

◆ ~TetraGen()

virtual RINGMesh::TetraGen::~TetraGen ( )
virtualdefault

◆ TetraGen()

RINGMesh::TetraGen::TetraGen ( GeoModel3D &  geomodel,
index_t  region_id 
)
inlineprotected

Definition at line 112 of file tetra_gen.h.

Member Function Documentation

◆ create()

std::unique_ptr< TetraGen > RINGMesh::TetraGen::create ( GeoModel3D &  M,
index_t  region_id,
const std::string &  algo_name 
)
static

Definition at line 431 of file tetra_gen.cpp.

◆ do_tetrahedralize()

virtual bool RINGMesh::TetraGen::do_tetrahedralize ( bool  refine)
protectedpure virtual

◆ initialize()

void RINGMesh::TetraGen::initialize ( )
static

Definition at line 613 of file tetra_gen.cpp.

◆ ringmesh_disable_copy_and_move()

RINGMesh::TetraGen::ringmesh_disable_copy_and_move ( TetraGen  )
private

◆ set_boundaries()

void RINGMesh::TetraGen::set_boundaries ( const Region3D &  region,
const WellGroup3D *  wells = nullptr 
)

Sets the boundaries of the domain

Parameters
[in]regionThe Region of the GeoModel to mesh
[in]wellsthe wells to be conformal to

Definition at line 455 of file tetra_gen.cpp.

◆ set_internal_points()

void RINGMesh::TetraGen::set_internal_points ( const std::vector< vec3 > &  points)

Set additional points to be in the output tetrahedral mesh

Parameters
[in]pointsthe points to add

Definition at line 592 of file tetra_gen.cpp.

◆ tetrahedralize()

bool RINGMesh::TetraGen::tetrahedralize ( bool  refine = true)

Send the set of points/edges/triangles to MGTetra or TetGen.

A set of points/edges/triangles are given to MGtetra or Tetgen The two mesh generators are configurated. Then check and repair functions are launched in order to control the outputs

Parameters
[in]refinetells whether or not there are refined options to set (true by defaults)

Definition at line 604 of file tetra_gen.cpp.

Member Data Documentation

◆ builder_

GeoModelBuilder3D RINGMesh::TetraGen::builder_
protected

Definition at line 120 of file tetra_gen.h.

◆ output_region_

index_t RINGMesh::TetraGen::output_region_ { NO_ID }
protected

Definition at line 121 of file tetra_gen.h.

◆ region_

const Region3D* RINGMesh::TetraGen::region_ { nullptr }
protected

Definition at line 123 of file tetra_gen.h.

◆ tetmesh_constraint_

GEO::Mesh RINGMesh::TetraGen::tetmesh_constraint_
protected

Definition at line 122 of file tetra_gen.h.

◆ wells_

const WellGroup3D* RINGMesh::TetraGen::wells_ { nullptr }
protected

Definition at line 124 of file tetra_gen.h.


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