Version: 6.5.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
MEDMEM::GMESH Class Reference
Inheritance diagram for MEDMEM::GMESH:
Inheritance graph
[legend]

Public Member Functions

 GMESH ()
 GMESH (GMESH &m)
virtual ~GMESH ()
virtual void init ()
GMESHoperator= (const GMESH &m)
virtual bool operator== (const GMESH &other) const
virtual bool deepCompare (const GMESH &other) const =0
virtual void printMySelf (std::ostream &os) const =0
int addDriver (driverTypes driverType, const std::string &fileName="Default File Name.med", const std::string &driverName="Default Mesh Name", MED_EN::med_mode_acces access=MED_EN::RDWR)
int addDriver (GENDRIVER &driver)
void rmDriver (int index=0)
virtual void read (int index=0)
virtual void read (const GENDRIVER &genDriver)
virtual void read (driverTypes driverType, const std::string &filename, const std::string &meshname)
virtual void write (int index=0) const
virtual void write (const GENDRIVER &genDriver, MED_EN::med_mode_acces medMode=MED_EN::WRONLY) const
virtual void write (driverTypes driverType, const std::string &filename, const std::string &meshname="", MED_EN::med_mode_acces medMode=MED_EN::WRONLY) const
void setName (std::string name)
std::string getName () const
void setDescription (std::string description)
std::string getDescription () const
int getSpaceDimension () const
virtual int getMeshDimension () const =0
virtual bool getIsAGrid () const =0
virtual std::string getCoordinatesSystem () const =0
virtual const std::string * getCoordinatesNames () const =0
virtual const std::string * getCoordinatesUnits () const =0
virtual int getNumberOfNodes () const =0
virtual int getNumberOfTypes (MED_EN::medEntityMesh Entity) const =0
virtual int getNumberOfElements (MED_EN::medEntityMesh Entity, MED_EN::medGeometryElement Type) const =0
virtual const
MED_EN::medGeometryElement * 
getTypes (MED_EN::medEntityMesh Entity) const =0
virtual MED_EN::medGeometryElement getElementType (MED_EN::medEntityMesh Entity, int Number) const =0
virtual int getNumberOfFamilies (MED_EN::medEntityMesh Entity) const
virtual const std::vector
< FAMILY * > 
getFamilies (MED_EN::medEntityMesh Entity) const
virtual const FAMILY * getFamily (MED_EN::medEntityMesh Entity, int i) const
virtual int getNumberOfGroups (MED_EN::medEntityMesh Entity) const
virtual const std::vector
< GROUP * > 
getGroups (MED_EN::medEntityMesh Entity) const
virtual const GROUP * getGroup (MED_EN::medEntityMesh Entity, int i) const
virtual const GROUP * getGroup (const std::string &name) const throw (MEDEXCEPTION)
virtual const MESHconvertInMESH () const =0
virtual SUPPORTgetBoundaryElements (MED_EN::medEntityMesh Entity) const =0 throw (MEDEXCEPTION)
virtual SUPPORTgetSkin (const SUPPORT *Support3D)=0 throw (MEDEXCEPTION)
virtual const SUPPORTgetSupportOnAll (MED_EN::medEntityMesh Entity) const throw (MEDEXCEPTION)
virtual SUPPORTbuildSupportOnNodeFromElementList (const std::list< int > &listOfElt, MED_EN::medEntityMesh entity) const =0 throw (MEDEXCEPTION)
virtual void fillSupportOnNodeFromElementList (const std::list< int > &listOfElt, SUPPORT *supportToFill) const =0 throw (MEDEXCEPTION)
virtual SUPPORTbuildSupportOnElementsFromElementList (const std::list< int > &listOfElt, MED_EN::medEntityMesh entity) const throw (MEDEXCEPTION)
virtual FIELD< double > * getVolume (const SUPPORT *Support, bool isAbs=true) const =0 throw (MEDEXCEPTION)
virtual FIELD< double > * getArea (const SUPPORT *Support) const =0 throw (MEDEXCEPTION)
virtual FIELD< double > * getLength (const SUPPORT *Support) const =0 throw (MEDEXCEPTION)
virtual FIELD< double > * getNormal (const SUPPORT *Support) const =0 throw (MEDEXCEPTION)
virtual FIELD< double > * getBarycenter (const SUPPORT *Support) const =0 throw (MEDEXCEPTION)
virtual vector< vector< double > > getBoundingBox () const =0
void createFamilies ()
void createGroups ()

Static Public Member Functions

static SUPPORTmergeSupports (const std::vector< SUPPORT * > Supports) throw (MEDEXCEPTION)
static SUPPORTintersectSupports (const std::vector< SUPPORT * > Supports) throw (MEDEXCEPTION)
template<class T >
static FIELD< T > * mergeFields (const std::vector< FIELD< T > * > &others, bool meshCompare=false)

Protected Member Functions

virtual bool isEmpty () const =0

Protected Attributes

std::string _name
std::string _description
int _spaceDimension
std::vector< FAMILY * > _familyNode
std::vector< FAMILY * > _familyCell
std::vector< FAMILY * > _familyFace
std::vector< FAMILY * > _familyEdge
std::vector< GROUP * > _groupNode
std::vector< GROUP * > _groupCell
std::vector< GROUP * > _groupFace
std::vector< GROUP * > _groupEdge
std::vector< GENDRIVER * > _drivers
std::map
< MED_EN::medEntityMesh,
SUPPORT * > 
_entitySupport

Friends

class MED_MESH_RDONLY_DRIVER
class MED_MESH_WRONLY_DRIVER
class GIBI_MESH_RDONLY_DRIVER
class GIBI_MESH_WRONLY_DRIVER
class GIBI_MESH_RDWR_DRIVER
class PORFLOW_MESH_RDONLY_DRIVER
class PORFLOW_MESH_WRONLY_DRIVER
class PORFLOW_MESH_RDWR_DRIVER
class VTK_MESH_DRIVER
class ENSIGHT_MESH_RDONLY_DRIVER
std::ostream & operator<< (std::ostream &os, const GMESH &me)

Detailed Description

Base class of structured and unstructured meshes.

Constructor & Destructor Documentation

GMESH::GMESH ( )

Create an empty GMESH.

GMESH::GMESH ( GMESH m)
GMESH::~GMESH ( )
virtual

Destructor.

Member Function Documentation

virtual bool MEDMEM::GMESH::isEmpty ( ) const
protectedpure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

void GMESH::init ( )
virtual

Initialization of fields.

Reimplemented in MEDMEM::MESH, and MEDMEM::GRID.

GMESH & GMESH::operator= ( const GMESH m)

Copy operator.

bool GMESH::operator== ( const GMESH other) const
virtual

Comparison.

virtual bool MEDMEM::GMESH::deepCompare ( const GMESH other) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual void MEDMEM::GMESH::printMySelf ( std::ostream &  os) const
pure virtual

Implemented in MEDMEM::GRID.

virtual int MEDMEM::GMESH::getMeshDimension ( ) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::FIELD_::_getFieldSize().

virtual bool MEDMEM::GMESH::getIsAGrid ( ) const
pure virtual
virtual std::string MEDMEM::GMESH::getCoordinatesSystem ( ) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual const std::string* MEDMEM::GMESH::getCoordinatesNames ( ) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::MESH::getBarycenter().

virtual const std::string* MEDMEM::GMESH::getCoordinatesUnits ( ) const
pure virtual
virtual int MEDMEM::GMESH::getNumberOfNodes ( ) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::update().

virtual int MEDMEM::GMESH::getNumberOfTypes ( MED_EN::medEntityMesh  Entity) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::update().

virtual int MEDMEM::GMESH::getNumberOfElements ( MED_EN::medEntityMesh  Entity,
MED_EN::medGeometryElement  Type 
) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::update().

virtual const MED_EN::medGeometryElement* MEDMEM::GMESH::getTypes ( MED_EN::medEntityMesh  Entity) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::update().

virtual MED_EN::medGeometryElement MEDMEM::GMESH::getElementType ( MED_EN::medEntityMesh  Entity,
int  Number 
) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual const GROUP* MEDMEM::GMESH::getGroup ( const std::string &  name) const throw (MEDEXCEPTION)
virtual
virtual const MESH* MEDMEM::GMESH::convertInMESH ( ) const
pure virtual

Return unstructured mesh. Call removeReference() after having finished using it!!!

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::getBoundaryElements(), and MEDMEM::SUPPORT::makeMesh().

virtual SUPPORT* MEDMEM::GMESH::getBoundaryElements ( MED_EN::medEntityMesh  Entity) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual SUPPORT* MEDMEM::GMESH::getSkin ( const SUPPORT Support3D) throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual SUPPORT* MEDMEM::GMESH::buildSupportOnNodeFromElementList ( const std::list< int > &  listOfElt,
MED_EN::medEntityMesh  entity 
) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::GRID.

virtual void MEDMEM::GMESH::fillSupportOnNodeFromElementList ( const std::list< int > &  listOfElt,
SUPPORT supportToFill 
) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::GRID.

Referenced by MEDMEM::SUPPORT::buildSupportOnNode().

SUPPORT * GMESH::buildSupportOnElementsFromElementList ( const std::list< int > &  listOfElt,
MED_EN::medEntityMesh  entity 
) const throw (MEDEXCEPTION)
virtual

Method created to factorize code. This method creates a new support on entity 'entity' (to deallocate) containing all the entities contained in elements 'listOfElt' of entity 'entity'.

References MEDMEM::SUPPORT::fillFromElementList(), MEDMEM::SUPPORT::setEntity(), MEDMEM::SUPPORT::setMesh(), and MEDMEM::SUPPORT::setName().

Referenced by MEDMEM::MESH::getBoundaryElements().

virtual FIELD<double>* MEDMEM::GMESH::getVolume ( const SUPPORT Support,
bool  isAbs = true 
) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::FIELD_::_getFieldSize().

virtual FIELD<double>* MEDMEM::GMESH::getArea ( const SUPPORT Support) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::FIELD_::_getFieldSize().

virtual FIELD<double>* MEDMEM::GMESH::getLength ( const SUPPORT Support) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

Referenced by MEDMEM::FIELD_::_getFieldSize().

virtual FIELD<double>* MEDMEM::GMESH::getNormal ( const SUPPORT Support) const throw (MEDEXCEPTION)
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

virtual FIELD<double>* MEDMEM::GMESH::getBarycenter ( const SUPPORT Support) const throw (MEDEXCEPTION)
pure virtual
virtual vector< vector<double> > MEDMEM::GMESH::getBoundingBox ( ) const
pure virtual

Implemented in MEDMEM::MESH, and MEDMEM::GRID.

template<class T >
FIELD< T > * MEDMEM::GMESH::mergeFields ( const std::vector< FIELD< T > * > &  others,
bool  meshCompare = false 
)
static
void GMESH::createFamilies ( )

Create families from groups. This function is automaticaly called whenever we ask for families that are not up-to-date. (The creation of families is delayed to the need of user.) If a new created family hapen to already exist, we keep the old one. (There is no way to know which family has change.)

void GMESH::createGroups ( )

Create groups from families.

It is used to create groups that have only one family for meshes that come from codes that use families instead of groups to define a subregion.

Friends And Related Function Documentation

friend class MED_MESH_RDONLY_DRIVER
friend
friend class MED_MESH_WRONLY_DRIVER
friend
friend class GIBI_MESH_RDONLY_DRIVER
friend
friend class GIBI_MESH_WRONLY_DRIVER
friend
friend class GIBI_MESH_RDWR_DRIVER
friend
friend class PORFLOW_MESH_RDONLY_DRIVER
friend
friend class PORFLOW_MESH_WRONLY_DRIVER
friend
friend class PORFLOW_MESH_RDWR_DRIVER
friend
friend class VTK_MESH_DRIVER
friend
friend class ENSIGHT_MESH_RDONLY_DRIVER
friend
std::ostream& operator<< ( std::ostream &  os,
const GMESH me 
)
friend

Member Data Documentation

std::string MEDMEM::GMESH::_name
protected
std::string MEDMEM::GMESH::_description
protected

Referenced by GMESH(), and MEDMEM::MESH::operator=().

int MEDMEM::GMESH::_spaceDimension
protected
std::vector<FAMILY*> MEDMEM::GMESH::_familyNode
protected
std::vector<FAMILY*> MEDMEM::GMESH::_familyCell
protected
std::vector<FAMILY*> MEDMEM::GMESH::_familyFace
protected
std::vector<FAMILY*> MEDMEM::GMESH::_familyEdge
protected
std::vector<GROUP*> MEDMEM::GMESH::_groupNode
protected
std::vector<GROUP*> MEDMEM::GMESH::_groupCell
protected
std::vector<GROUP*> MEDMEM::GMESH::_groupFace
protected
std::vector<GROUP*> MEDMEM::GMESH::_groupEdge
protected
std::vector<GENDRIVER *> MEDMEM::GMESH::_drivers
protected

Referenced by MEDMEM::MESH::operator=().

std::map<MED_EN::medEntityMesh,SUPPORT*> MEDMEM::GMESH::_entitySupport
protected
Copyright © 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS