RINGMesh
Version 5.0.0
A programming library for geological model meshes
|
#include <geomodel.h>
Public Member Functions | |
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... | |
virtual index_t | nb_mesh_entities (const MeshEntityType &type) const |
Returns the number of mesh entities of the given type. 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 GeologicalEntityType & | geological_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 |
virtual const GeoModelMeshEntity< DIMENSION > & | mesh_entity (const gmme_id &id) const |
Generic access to a meshed entity. More... | |
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 |
Specialized accessors. | |
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 |
Public Attributes | |
GeoModelMesh< DIMENSION > | mesh |
Protected Member Functions | |
GeoModelBase (GeoModel< DIMENSION > &geomodel) | |
Constructs an empty GeoModel. More... | |
index_t | geological_entity_type_index (const GeologicalEntityType &type) const |
virtual const std::vector< std::unique_ptr< GeoModelMeshEntity< DIMENSION > > > & | mesh_entities (const MeshEntityType &type) const |
Generic accessor to the storage of mesh entities of the given type. More... | |
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 | |
std::string | geomodel_name_ |
double | epsilon_ { -1 } |
EntityTypeManager< DIMENSION > | entity_type_manager_ |
const WellGroup< DIMENSION > * | wells_ { nullptr } |
Mandatory entities of the geomodel | |
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... | |
Private Member Functions | |
ringmesh_disable_copy_and_move (GeoModelBase) | |
ringmesh_template_assert_2d_or_3d (DIMENSION) | |
Friends | |
class | GeoModelAccess< DIMENSION > |
Definition at line 99 of file geomodel.h.
|
virtual |
Definition at line 103 of file geomodel.cpp.
|
explicitprotected |
Constructs an empty GeoModel.
Definition at line 97 of file geomodel.cpp.
const Corner< DIMENSION > & RINGMesh::GeoModelBase< DIMENSION >::corner | ( | index_t | index | ) | const |
Definition at line 177 of file geomodel.cpp.
|
inline |
Gets the EntityTypeManager associated to the GeoModel.
Definition at line 119 of file geomodel.h.
double RINGMesh::GeoModelBase< DIMENSION >::epsilon | ( | ) | const |
Definition at line 208 of file geomodel.cpp.
|
inline |
Definition at line 220 of file geomodel.h.
|
inlineprotected |
Generic accessor to the storage of geological entities of the given type.
Definition at line 271 of file geomodel.h.
|
inlineprotected |
Definition at line 279 of file geomodel.h.
|
inline |
Returns a const reference the identified GeoModelGeologicalEntity.
[in] | id | Type and index of the entity. |
Definition at line 165 of file geomodel.h.
|
inline |
Convenient overload of entity( gmge_id id )
Definition at line 174 of file geomodel.h.
|
inline |
Definition at line 152 of file geomodel.h.
|
inlineprotected |
Access to the position of the entity of that type in storage.
Definition at line 251 of file geomodel.h.
const Line< DIMENSION > & RINGMesh::GeoModelBase< DIMENSION >::line | ( | index_t | index | ) | const |
Definition at line 185 of file geomodel.cpp.
|
protectedvirtual |
Generic accessor to the storage of mesh entities of the given type.
Reimplemented in RINGMesh::GeoModel< 3 >.
Definition at line 155 of file geomodel.cpp.
|
virtual |
Generic access to a meshed entity.
Reimplemented in RINGMesh::GeoModel< 3 >.
Definition at line 131 of file geomodel.cpp.
|
inline |
Convenient overload of mesh_entity( gmme_id id )
Definition at line 191 of file geomodel.h.
|
inline |
Gets the name of the GeoModel.
Definition at line 111 of file geomodel.h.
|
inline |
Definition at line 201 of file geomodel.h.
|
inline |
Returns the number of geological entities of the given type.
Default value is 0
[in] | type | the geological entity type |
Definition at line 136 of file geomodel.h.
|
inline |
Returns the index of the geological entity type storage.
Default value is NO_ID
[in] | type | the geological entity type |
Definition at line 146 of file geomodel.h.
|
inline |
Definition at line 205 of file geomodel.h.
|
virtual |
Returns the number of mesh entities of the given type.
Default value is 0
[in] | type | the mesh entity type |
Reimplemented in RINGMesh::GeoModel< 3 >.
Definition at line 108 of file geomodel.cpp.
|
inline |
Definition at line 209 of file geomodel.h.
|
private |
|
private |
void RINGMesh::GeoModelBase< DIMENSION >::set_wells | ( | const WellGroup< DIMENSION > * | wells | ) |
Associates a WellGroup to the GeoModel
[in] | wells | the WellGroup |
Definition at line 201 of file geomodel.cpp.
const Surface< DIMENSION > & RINGMesh::GeoModelBase< DIMENSION >::surface | ( | index_t | index | ) | const |
Definition at line 192 of file geomodel.cpp.
|
inline |
Definition at line 235 of file geomodel.h.
|
friend |
Definition at line 103 of file geomodel.h.
|
protected |
Definition at line 296 of file geomodel.h.
|
protected |
Definition at line 289 of file geomodel.h.
|
mutableprotected |
Definition at line 287 of file geomodel.h.
|
protected |
Geological entities. They are optional. The EntityTypes are managed by the EntityTypeManager of the class.
Definition at line 308 of file geomodel.h.
|
protected |
Definition at line 286 of file geomodel.h.
|
protected |
Definition at line 298 of file geomodel.h.
GeoModelMesh< DIMENSION > RINGMesh::GeoModelBase< DIMENSION >::mesh |
Definition at line 241 of file geomodel.h.
|
protected |
Definition at line 300 of file geomodel.h.
|
protected |
Optional WellGroup associated with the geomodel
Definition at line 317 of file geomodel.h.