RINGMesh  Version 5.0.0
A programming library for geological model meshes
RINGMesh::Surface< 2 > Class Template Referencefinal

#include <geomodel_mesh_entity.h>

Inheritance diagram for RINGMesh::Surface< 2 >:
RINGMesh::SurfaceBase< 2 > RINGMesh::GeoModelMeshEntity< DIMENSION > RINGMesh::GeoModelEntity< DIMENSION >

Public Member Functions

bool is_on_voi () const final
 
bool side (index_t i) const
 
bool is_meshed () const
 Tells whether the Surface2D is meshed or not. More...
 
- Public Member Functions inherited from RINGMesh::SurfaceBase< 2 >
virtual ~SurfaceBase ()
 
MeshEntityType type_name () const final
 
const Line< DIMENSION > & boundary (index_t x) const
 
const Region< DIMENSION > & incident_entity (index_t x) const
 
bool is_simplicial () const
 
const SurfaceAABBTree< DIMENSION > & polygon_aabb () const
 
const NNSearch< DIMENSION > & polygon_nn_search () const
 Return the NNSearch for the polygons of the surface. More...
 
GEO::AttributesManager & polygon_attribute_manager () const
 
index_t nb_mesh_elements () const final
 
index_t nb_mesh_element_vertices (index_t polygon_index) const final
 
index_t mesh_element_vertex_index (const ElementLocalVertex &element_local_vertex) const final
 Index of the vertex in the Surface from its index in a polygon of the mesh. More...
 
index_t polygon_adjacent_index (const PolygonLocalEdge &polygon_local_edge) const
 Gets the polygon adjacent along an edge of a polygon. More...
 
vecn< DIMENSION > mesh_element_barycenter (index_t polygon_index) const final
 
double mesh_element_size (index_t polygon_index) const final
 
const SurfaceMesh< DIMENSION > & mesh () const
 Get the low level mesh data structure. More...
 
- Public Member Functions inherited from RINGMesh::GeoModelMeshEntity< DIMENSION >
virtual ~GeoModelMeshEntity ()
 
gmme_id gmme () const
 
MeshEntityType mesh_entity_type () const
 
bool is_valid () const final
 Global validity of the entity. More...
 
virtual bool is_connectivity_valid () const
 
bool is_parent_connectivity_valid () const
 
void save (const std::string &filename) const
 
const NNSearch< DIMENSION > & vertex_nn_search () const
 Return the NNSearch for the Entity vertices. More...
 
GEO::AttributesManager & vertex_attribute_manager () const
 
index_t nb_boundaries () const
 
const gmme_idboundary_gmme (index_t x) const
 
const GeoModelMeshEntity< DIMENSION > & boundary (index_t x) const
 
index_t nb_incident_entities () const
 
const gmme_idincident_entity_gmme (index_t x) const
 
const GeoModelMeshEntity< DIMENSION > & incident_entity (index_t x) const
 
bool has_inside_border () const
 Check if one entity is twice in the boundary. More...
 
bool is_inside_border (const GeoModelMeshEntity &rhs) const
 Check if this entity is an inside border of rhs. More...
 
bool has_parent () const
 
bool has_parent (const GeologicalEntityType &parent_type) const
 Check if the entity has a parent of the given type. More...
 
index_t nb_parents () const
 
const gmge_idparent_gmge (index_t id) const
 
const gmge_id parent_gmge (const GeologicalEntityType &parent_type) const
 Returns the gmge_id of the parent of the given type. More...
 
const GeoModelGeologicalEntity< DIMENSION > & parent (index_t parent_index) const
 
const GeoModelGeologicalEntity< DIMENSION > & parent (const GeologicalEntityType &parent_type) const
 
index_t nb_vertices () const
 
const vecn< DIMENSION > & vertex (index_t vertex_index) const
 Coordinates of the vertex_index. More...
 
const vecn< DIMENSION > & mesh_element_vertex (const ElementLocalVertex &element_local_vertex) const
 Coordinates of a vertex of a mesh element. More...
 
vecn< DIMENSION > entity_barycenter () const
 
virtual double size () const
 
- Public Member Functions inherited from RINGMesh::GeoModelEntity< DIMENSION >
virtual ~GeoModelEntity ()=default
 
const GeoModel< DIMENSION > & geomodel () const
 
const std::string & name () const
 
index_t index () const
 

Private Member Functions

 Surface (const GeoModel2D &geomodel, index_t id, const MeshType type)
 

Private Attributes

std::vector< boolsides_ {}
 

Friends

class GeoModelMeshEntityAccess< 2 >
 

Additional Inherited Members

- Static Public Member Functions inherited from RINGMesh::SurfaceBase< 2 >
static MeshEntityType type_name_static ()
 
- Protected Member Functions inherited from RINGMesh::SurfaceBase< 2 >
 SurfaceBase (const GeoModel< DIMENSION > &geomodel, index_t id, const MeshType type)
 
bool is_mesh_valid () const final
 Check that the mesh of the Surface is valid. More...
 
- Protected Member Functions inherited from RINGMesh::GeoModelMeshEntity< DIMENSION >
 GeoModelMeshEntity (const GeoModel< DIMENSION > &geomodel, index_t id)
 
virtual void copy_mesh_entity (const GeoModelMeshEntity< DIMENSION > &from)
 
virtual bool is_index_valid () const final
 
void set_mesh (std::shared_ptr< MeshBase< DIMENSION > > mesh)
 
bool is_boundary_connectivity_valid () const
 
bool is_incident_entity_connectivity_valid () const
 
bool are_geomodel_vertex_indices_valid () const
 Check that geomodel vertex indices are consistent with what is stored at the GeoModel level. More...
 
void unbind_vertex_mapping_attribute () const
 
void bind_vertex_mapping_attribute () const
 
- Protected Member Functions inherited from RINGMesh::GeoModelEntity< DIMENSION >
 GeoModelEntity (const GeoModel< DIMENSION > &geomodel, index_t id)
 
void copy_name (const GeoModelEntity< DIMENSION > &from)
 
- Protected Attributes inherited from RINGMesh::GeoModelMeshEntity< DIMENSION >
std::vector< index_t > boundaries_ {}
 Boundary relations of this entity. More...
 
std::vector< index_t > incident_entities_ {}
 Incident-entity relations of this entity. More...
 
std::vector< index_t > parents_ {}
 Parents relations of this entity. More...
 
- Protected Attributes inherited from RINGMesh::GeoModelEntity< DIMENSION >
const GeoModel< DIMENSION > & geomodel_
 Reference to the GeoModel owning this entity. More...
 
std::string name_ = std::string{ "Unnamed" }
 Name of the entity - default is "Unnamed". More...
 
index_t id_ { NO_ID }
 Index of the entity. More...
 

Detailed Description

template<>
class RINGMesh::Surface< 2 >

Definition at line 871 of file geomodel_mesh_entity.h.

Constructor & Destructor Documentation

◆ Surface()

RINGMesh::Surface< 2 >::Surface ( const GeoModel2D &  geomodel,
index_t  id,
const MeshType  type 
)
inlineprivate

Definition at line 876 of file geomodel_mesh_entity.h.

Member Function Documentation

◆ is_meshed()

bool RINGMesh::Surface< 2 >::is_meshed ( ) const
inline

Tells whether the Surface2D is meshed or not.

Definition at line 891 of file geomodel_mesh_entity.h.

◆ is_on_voi()

bool RINGMesh::Surface< 2 >::is_on_voi ( ) const
finalvirtual

Implements RINGMesh::GeoModelEntity< DIMENSION >.

Definition at line 810 of file geomodel_mesh_entity.cpp.

◆ side()

bool RINGMesh::Surface< 2 >::side ( index_t  i) const
inline

Definition at line 883 of file geomodel_mesh_entity.h.

Friends And Related Function Documentation

◆ GeoModelMeshEntityAccess< 2 >

friend class GeoModelMeshEntityAccess< 2 >
friend

Definition at line 873 of file geomodel_mesh_entity.h.

Member Data Documentation

◆ sides_

std::vector< bool > RINGMesh::Surface< 2 >::sides_ {}
private

Additional information to store oriented boundary Lines Side: + (true) or - (false) The size of this vector must be the same than boundary_

Definition at line 901 of file geomodel_mesh_entity.h.


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