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

#include <geomodel.h>

Inheritance diagram for RINGMesh::GeoModel< 3 >:
RINGMesh::GeoModelBase< 3 >

Public Member Functions

 GeoModel ()
 
 ~GeoModel () override
 
corner_range< 3 > corners () const
 
line_range< 3 > lines () const
 
surface_range< 3 > surfaces () const
 
region_range< 3 > regions () const
 
geol_entity_range< 3 > geol_entities (const GeologicalEntityType &geol_type) const
 
index_t nb_regions () const
 
const Region3D & region (index_t index) const
 
const GeoModelMeshEntity3D & mesh_entity (const MeshEntityType &entity_type, index_t entity_index) const
 
const GeoModelMeshEntity3D & mesh_entity (const gmme_id &id) const override
 Generic access to a meshed entity. More...
 
index_t nb_mesh_entities (const MeshEntityType &type) const override
 Returns the number of mesh entities of the given type. More...
 
double epsilon3 () const
 
SurfaceSide voi_surfaces () const
 
- Public Member Functions inherited from RINGMesh::GeoModelBase< 3 >
virtual ~GeoModelBase ()
 
const std::string & name () const
 Gets the name of the GeoModel. More...
 
const EntityTypeManager< DIMENSION > & entity_type_manager () const
 Gets the EntityTypeManager associated to the GeoModel. More...
 
index_t nb_geological_entities (const GeologicalEntityType &type) const
 Returns the number of geological entities of the given type. More...
 
index_t nb_geological_entity_types () const
 Returns the index of the geological entity type storage. More...
 
const GeologicalEntityTypegeological_entity_type (index_t index) const
 
const GeoModelGeologicalEntity< DIMENSION > & geological_entity (gmge_id id) const
 Returns a const reference the identified GeoModelGeologicalEntity. More...
 
const GeoModelGeologicalEntity< DIMENSION > & geological_entity (const GeologicalEntityType &entity_type, index_t entity_index) const
 
const GeoModelMeshEntity< DIMENSION > & mesh_entity (const MeshEntityType &entity_type, index_t entity_index) const
 
void set_wells (const WellGroup< DIMENSION > *wells)
 
const WellGroup< DIMENSION > * wells () const
 
index_t nb_corners () const
 
index_t nb_lines () const
 
index_t nb_surfaces () const
 
const Corner< DIMENSION > & corner (index_t index) const
 
const Line< DIMENSION > & line (index_t index) const
 
const Surface< DIMENSION > & surface (index_t index) const
 
double epsilon () const
 
double epsilon2 () const
 

Private Member Functions

const std::vector< std::unique_ptr< GeoModelMeshEntity3D > > & mesh_entities (const MeshEntityType &type) const override
 Generic accessor to the storage of mesh entities of the given type. More...
 

Private Attributes

std::vector< std::unique_ptr< GeoModelMeshEntity3D > > regions_
 

Friends

class GeoModelAccess< 3 >
 

Additional Inherited Members

- Public Attributes inherited from RINGMesh::GeoModelBase< 3 >
GeoModelMesh< DIMENSION > mesh
 
- Protected Member Functions inherited from RINGMesh::GeoModelBase< 3 >
 GeoModelBase (GeoModel< DIMENSION > &geomodel)
 Constructs an empty GeoModel. More...
 
index_t geological_entity_type_index (const GeologicalEntityType &type) const
 
const std::vector< std::unique_ptr< GeoModelGeologicalEntity< DIMENSION > > > & geological_entities (const GeologicalEntityType &type) const
 Generic accessor to the storage of geological entities of the given type. More...
 
const std::vector< std::unique_ptr< GeoModelGeologicalEntity< DIMENSION > > > & geological_entities (index_t geological_entity_type_index) const
 
- Protected Attributes inherited from RINGMesh::GeoModelBase< 3 >
std::string geomodel_name_
 
double epsilon_
 
EntityTypeManager< DIMENSION > entity_type_manager_
 
const WellGroup< DIMENSION > * wells_
 
std::vector< std::unique_ptr< GeoModelMeshEntity< DIMENSION > > > corners_
 
std::vector< std::unique_ptr< GeoModelMeshEntity< DIMENSION > > > lines_
 
std::vector< std::unique_ptr< GeoModelMeshEntity< DIMENSION > > > surfaces_
 
std::vector< std::vector< std::unique_ptr< GeoModelGeologicalEntity< DIMENSION > > > > geological_entities_
 Geological entities. They are optional. The EntityTypes are managed by the EntityTypeManager of the class. More...
 

Detailed Description

template<>
class RINGMesh::GeoModel< 3 >

Definition at line 349 of file geomodel.h.

Constructor & Destructor Documentation

◆ GeoModel()

Definition at line 222 of file geomodel.cpp.

◆ ~GeoModel()

RINGMesh::GeoModel< 3 >::~GeoModel ( )
override

Definition at line 226 of file geomodel.cpp.

Member Function Documentation

◆ corners()

corner_range< 3 > RINGMesh::GeoModel< 3 >::corners ( ) const
inline

Definition at line 357 of file geomodel.h.

◆ epsilon3()

double RINGMesh::GeoModel< 3 >::epsilon3 ( ) const
inline

Definition at line 397 of file geomodel.h.

◆ geol_entities()

geol_entity_range< 3 > RINGMesh::GeoModel< 3 >::geol_entities ( const GeologicalEntityType geol_type) const
inline

Definition at line 373 of file geomodel.h.

◆ lines()

line_range< 3 > RINGMesh::GeoModel< 3 >::lines ( ) const
inline

Definition at line 361 of file geomodel.h.

◆ mesh_entities()

const std::vector< std::unique_ptr< GeoModelMeshEntity3D > > & RINGMesh::GeoModel< 3 >::mesh_entities ( const MeshEntityType type) const
overrideprivatevirtual

Generic accessor to the storage of mesh entities of the given type.

Reimplemented from RINGMesh::GeoModelBase< 3 >.

Definition at line 245 of file geomodel.cpp.

◆ mesh_entity() [1/2]

const GeoModelMeshEntity3D& RINGMesh::GeoModel< 3 >::mesh_entity ( const MeshEntityType entity_type,
index_t  entity_index 
) const
inline

Definition at line 386 of file geomodel.h.

◆ mesh_entity() [2/2]

const GeoModelMeshEntity3D & RINGMesh::GeoModel< 3 >::mesh_entity ( const gmme_id id) const
overridevirtual

Generic access to a meshed entity.

Precondition
Type of the entity is CORNER, LINE, SURFACE, or REGION

Reimplemented from RINGMesh::GeoModelBase< 3 >.

Definition at line 254 of file geomodel.cpp.

◆ nb_mesh_entities()

index_t RINGMesh::GeoModel< 3 >::nb_mesh_entities ( const MeshEntityType type) const
overridevirtual

Returns the number of mesh entities of the given type.

Default value is 0

Parameters
[in]typethe mesh entity type

Reimplemented from RINGMesh::GeoModelBase< 3 >.

Definition at line 268 of file geomodel.cpp.

◆ nb_regions()

index_t RINGMesh::GeoModel< 3 >::nb_regions ( ) const
inline

Definition at line 379 of file geomodel.h.

◆ region()

const Region3D & RINGMesh::GeoModel< 3 >::region ( index_t  index) const

Definition at line 238 of file geomodel.cpp.

◆ regions()

region_range< 3 > RINGMesh::GeoModel< 3 >::regions ( ) const
inline

Definition at line 369 of file geomodel.h.

◆ surfaces()

surface_range< 3 > RINGMesh::GeoModel< 3 >::surfaces ( ) const
inline

Definition at line 365 of file geomodel.h.

◆ voi_surfaces()

SurfaceSide RINGMesh::GeoModel< 3 >::voi_surfaces ( ) const

Definition at line 277 of file geomodel.cpp.

Friends And Related Function Documentation

◆ GeoModelAccess< 3 >

friend class GeoModelAccess< 3 >
friend

Definition at line 351 of file geomodel.h.

Member Data Documentation

◆ regions_

std::vector< std::unique_ptr< GeoModelMeshEntity3D > > RINGMesh::GeoModel< 3 >::regions_
private

Definition at line 408 of file geomodel.h.


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