RINGMesh  Version 5.0.0
A programming library for geological model meshes
RINGMesh::GeoModelBuilderRemoval< 3 > Class Template Reference

#include <geomodel_builder_remove.h>

Inheritance diagram for RINGMesh::GeoModelBuilderRemoval< 3 >:
RINGMesh::GeoModelBuilderRemovalBase< 3 >

Private Types

using GeoModelBuilder3D = GeoModelBuilder< 3 >
 

Private Member Functions

 GeoModelBuilderRemoval (GeoModelBuilder3D &builder, GeoModel3D &geomodel)
 
void update_mesh_entity (GeoModelMeshEntity3D &ME) override
 
void set_boundary_side (Region3D &R, index_t boundary_index, bool new_side)
 
void update_region_boundary_signs (Region3D &R)
 
void delete_invalid_signs (Region3D &R)
 

Friends

class GeoModelBuilderBase< 3 >
 
class GeoModelBuilder< 3 >
 

Additional Inherited Members

- Public Member Functions inherited from RINGMesh::GeoModelBuilderRemovalBase< 3 >
virtual ~GeoModelBuilderRemovalBase ()=default
 
void remove_mesh_entities (const std::set< gmme_id > &entities)
 Remove a list of mesh entities of the geomodel. More...
 
void remove_geological_entities (const std::set< gmge_id > &entities)
 Remove a list of geological entities of the geomodel. More...
 
void remove_entities_and_dependencies (const std::set< gmme_id > &entities_to_remove)
 
- Protected Member Functions inherited from RINGMesh::GeoModelBuilderRemovalBase< 3 >
 GeoModelBuilderRemovalBase (GeoModelBuilder< DIMENSION > &builder, GeoModel< DIMENSION > &geomodel)
 
virtual void update_mesh_entity (GeoModelMeshEntity< DIMENSION > &ME)
 
void initialize_for_removal (const std::set< gmme_id > &mesh_entities_to_remove)
 
void do_delete_flagged_mesh_entities ()
 
void do_delete_flagged_geological_entities ()
 
void check_if_entities_are_meshed (const std::set< gmme_id > &mesh_entities_to_remove)
 
void initialize_costly_storage ()
 
void delete_mesh_entity (index_t type, index_t index)
 
void clear_null_mesh_entities (index_t type)
 
void clear_null_geological_entities (index_t type)
 
void update_mesh_entity_connectivity ()
 
void update_geological_entity_connectivity ()
 
void fill_removed_entities_and_mapping ()
 
void fill_to_erase_vectors (const std::set< gmme_id > &mesh_entities_to_remove)
 
void fill_nb_children_vector ()
 
void fill_nb_initial_entities ()
 
void fill_entity_type_to_index_map ()
 
index_t mesh_entity_type_index (const GeoModelMeshEntity< DIMENSION > &E) const
 
index_t geological_entity_type_index (const GeoModelGeologicalEntity< DIMENSION > &E) const
 
index_t children_type_index (const GeologicalEntityType &type) const
 
const MeshEntityType children_type (const GeologicalEntityType &type) const
 
index_t boundary_type_index (const MeshEntityType &type) const
 
const MeshEntityTypeboundary_entity_type (const MeshEntityType &type) const
 
index_t incident_entity_type_to_index (const MeshEntityType &type) const
 TODO unused function. To handle during removal refactoring BC. More...
 
const MeshEntityTypeincident_entity_type (const MeshEntityType &type) const
 
bool is_mesh_entity (index_t i) const
 
bool is_geological_entity (index_t i) const
 
void flag_geological_entities_without_children ()
 
void set_mesh_entity_index (GeoModelMeshEntity< DIMENSION > &mesh_entity, index_t new_index_in_geomodel)
 
void set_geological_entity_index (GeoModelGeologicalEntity< DIMENSION > &geological_entity, index_t new_index_in_geomodel)
 
void update_mesh_entity_index (GeoModelMeshEntity< DIMENSION > &mesh_entity)
 
void update_geological_entity_index (GeoModelGeologicalEntity< DIMENSION > &geological_entity)
 
void update_mesh_entity_boundaries (GeoModelMeshEntity< DIMENSION > &mesh_entity)
 
void set_boundary_side (Region3D &region, index_t boundary_index, bool new_side)
 
void update_mesh_entity_incident_entity (GeoModelMeshEntity< DIMENSION > &mesh_entity)
 
void update_mesh_entity_parents (GeoModelMeshEntity< DIMENSION > &mesh_entity)
 
void update_geological_entity_children (GeoModelGeologicalEntity< DIMENSION > &geological_entity)
 
void remove_invalid_values (std::vector< THINGS_TO_DELETE > &vector, const TEST &test)
 
void delete_invalid_children (GeoModelGeologicalEntity< DIMENSION > &E)
 
void delete_invalid_boundaries (GeoModelMeshEntity< DIMENSION > &E)
 
void delete_invalid_incident_entity (GeoModelMeshEntity< DIMENSION > &E)
 
void delete_invalid_parents (GeoModelMeshEntity< DIMENSION > &E)
 
index_t mesh_entity_type_to_index (const MeshEntityType &type) const
 
index_t geological_entity_type_to_index (const GeologicalEntityType &type) const
 
const MeshEntityTypeindex_to_mesh_entity_type (index_t index) const
 
const GeologicalEntityTypeindex_to_geological_entity_type (index_t index) const
 
- Protected Attributes inherited from RINGMesh::GeoModelBuilderRemovalBase< 3 >
GeoModelBuilder< DIMENSION > & builder_
 
GeoModel< DIMENSION > & geomodel_
 
GeoModelAccess< DIMENSION > geomodel_access_
 
index_t nb_entity_types_
 
index_t nb_geological_entity_types_
 
index_t nb_mesh_entity_types_
 
std::vector< index_t > nb_initial_mesh_entities_
 
std::vector< index_t > nb_initial_geological_entities_
 
std::vector< index_t > nb_removed_mesh_entities_
 
std::vector< index_t > nb_removed_geological_entities_
 
std::vector< std::vector< bool > > mesh_entity_to_erase_
 
std::vector< std::vector< index_t > > old_2_new_mesh_entity_
 
std::vector< std::vector< index_t > > nb_childs_
 
std::vector< std::vector< index_t > > old_2_new_geological_entity_
 
std::vector< MeshEntityTypemesh_entity_types_
 
std::vector< GeologicalEntityTypegeological_entity_types_
 

Detailed Description

template<>
class RINGMesh::GeoModelBuilderRemoval< 3 >

Definition at line 666 of file geomodel_builder_remove.h.

Member Typedef Documentation

◆ GeoModelBuilder3D

Constructor & Destructor Documentation

◆ GeoModelBuilderRemoval()

RINGMesh::GeoModelBuilderRemoval< 3 >::GeoModelBuilderRemoval ( GeoModelBuilder3D builder,
GeoModel3D &  geomodel 
)
private

Definition at line 279 of file geomodel_builder_remove.cpp.

Member Function Documentation

◆ delete_invalid_signs()

void RINGMesh::GeoModelBuilderRemoval< 3 >::delete_invalid_signs ( Region3D &  R)
inlineprivate

Definition at line 709 of file geomodel_builder_remove.h.

◆ set_boundary_side()

void RINGMesh::GeoModelBuilderRemoval< 3 >::set_boundary_side ( Region3D &  R,
index_t  boundary_index,
bool  new_side 
)
inlineprivate

Definition at line 679 of file geomodel_builder_remove.h.

◆ update_mesh_entity()

void RINGMesh::GeoModelBuilderRemoval< 3 >::update_mesh_entity ( GeoModelMeshEntity3D &  ME)
overrideprivate

Definition at line 285 of file geomodel_builder_remove.cpp.

◆ update_region_boundary_signs()

void RINGMesh::GeoModelBuilderRemoval< 3 >::update_region_boundary_signs ( Region3D &  R)
inlineprivate

Definition at line 688 of file geomodel_builder_remove.h.

Friends And Related Function Documentation

◆ GeoModelBuilder< 3 >

friend class GeoModelBuilder< 3 >
friend

Definition at line 670 of file geomodel_builder_remove.h.

◆ GeoModelBuilderBase< 3 >

friend class GeoModelBuilderBase< 3 >
friend

Definition at line 669 of file geomodel_builder_remove.h.


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