

Public Member Functions | |
| MESH () | |
| MESH (MESH &m) | |
| virtual | ~MESH () |
| MESH (driverTypes driverType, const string &fileName="", const string &meshName="") throw (MEDEXCEPTION) | |
| void | init () |
| MESH & | operator= (const MESH &m) |
| virtual bool | operator== (const MESH &other) const |
| virtual bool | deepCompare (const GMESH &other) const |
| virtual bool | isEmpty () const |
| virtual void | printMySelf (ostream &os) const |
| virtual int | getMeshDimension () const |
| virtual bool | getIsAGrid () const |
| virtual const MESH * | convertInMESH () const |
| int | getNumberOfNodes () const |
| virtual const COORDINATE * | getCoordinateptr () const |
| string | getCoordinatesSystem () const |
| virtual const double * | getCoordinates (MED_EN::medModeSwitch Mode) const |
| virtual const double | getCoordinate (int Number, int Axis) const |
| const string * | getCoordinatesNames () const |
| const string * | getCoordinatesUnits () const |
| virtual int | getNumberOfTypes (MED_EN::medEntityMesh Entity) const |
| virtual const MED_EN::medGeometryElement * | getTypes (MED_EN::medEntityMesh Entity) const |
| virtual const CELLMODEL * | getCellsTypes (MED_EN::medEntityMesh Entity) const |
| virtual string * | getCellTypeNames (MED_EN::medEntityMesh Entity) const |
| virtual const int * | getGlobalNumberingIndex (MED_EN::medEntityMesh Entity) const |
| virtual int | getNumberOfElements (MED_EN::medEntityMesh Entity, MED_EN::medGeometryElement Type) const |
| virtual bool | existConnectivity (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity) const |
| virtual MED_EN::medGeometryElement | getElementType (MED_EN::medEntityMesh Entity, int Number) const |
| virtual void | calculateConnectivity (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity) const |
| virtual int | getConnectivityLength (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity, MED_EN::medGeometryElement Type) const |
| virtual const int * | getConnectivity (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity, MED_EN::medGeometryElement Type) const |
| virtual const int * | getConnectivityIndex (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity) const |
| virtual int | getElementNumber (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity, MED_EN::medGeometryElement Type, int *connectivity) const |
| virtual int | getReverseConnectivityLength (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity=MED_EN::MED_CELL) const |
| virtual const int * | getReverseConnectivity (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity=MED_EN::MED_CELL) const |
| virtual int | getReverseConnectivityIndexLength (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity=MED_EN::MED_CELL) const |
| virtual const int * | getReverseConnectivityIndex (MED_EN::medConnectivity ConnectivityType, MED_EN::medEntityMesh Entity=MED_EN::MED_CELL) const |
| virtual const CONNECTIVITY * | getConnectivityptr () const |
| void | setConnectivityptr (CONNECTIVITY *) |
| virtual SUPPORT * | getBoundaryElements (MED_EN::medEntityMesh Entity) const throw (MEDEXCEPTION) |
| virtual SUPPORT * | getSkin (const SUPPORT *Support3D) throw (MEDEXCEPTION) |
| virtual FIELD< double > * | getVolume (const SUPPORT *Support, bool isAbs=true) const throw (MEDEXCEPTION) |
| virtual FIELD< double > * | getArea (const SUPPORT *Support) const throw (MEDEXCEPTION) |
| virtual FIELD< double > * | getLength (const SUPPORT *Support) const throw (MEDEXCEPTION) |
| virtual FIELD< double > * | getNormal (const SUPPORT *Support) const throw (MEDEXCEPTION) |
| virtual FIELD< double > * | getBarycenter (const SUPPORT *Support) const throw (MEDEXCEPTION) |
| SUPPORT * | buildSupportOnNodeFromElementList (const list< int > &listOfElt, MED_EN::medEntityMesh entity) const throw (MEDEXCEPTION) |
| void | fillSupportOnNodeFromElementList (const list< int > &listOfElt, SUPPORT *supportToFill) const throw (MEDEXCEPTION) |
| int | getElementContainingPoint (const double *coord) |
| vector< vector< double > > | getBoundingBox () const |
| void | convertToPoly () |
Protected Attributes | |
| int | _numberOfNodes |
| COORDINATE * | _coordinate |
| CONNECTIVITY * | _connectivity |
| int | _arePresentOptionnalNodesNumbers |
| map< int, int > | _optionnalToCanonicNodesNumbers |
Friends | |
| class | MED_MESH_RDONLY_DRIVER |
| class | MED_MESH_WRONLY_DRIVER |
| class | MED_MED_RDONLY_DRIVER21 |
| class | MED_MED_WRONLY_DRIVER21 |
| class | MED_MED_RDWR_DRIVER21 |
| class | MED_MED_RDONLY_DRIVER22 |
| class | MED_MED_WRONLY_DRIVER22 |
| class | MED_MED_RDWR_DRIVER22 |
| 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 |
| ostream & | operator<< (ostream &os, const MESH &my) |
| MESH::~MESH | ( | ) | [virtual] |
References _connectivity, and _coordinate.
| void MESH::init | ( | ) | [virtual] |
References _arePresentOptionnalNodesNumbers, _connectivity, _coordinate, MEDMEM::GMESH::_description, MEDMEM::GMESH::_drivers, MEDMEM::GMESH::_familyCell, MEDMEM::GMESH::_familyEdge, MEDMEM::GMESH::_familyFace, MEDMEM::GMESH::_familyNode, MEDMEM::GMESH::_groupCell, MEDMEM::GMESH::_groupEdge, MEDMEM::GMESH::_groupFace, MEDMEM::GMESH::_groupNode, MEDMEM::GMESH::_name, _numberOfNodes, _optionnalToCanonicNodesNumbers, and MEDMEM::GMESH::_spaceDimension.
| bool MESH::operator== | ( | const MESH & | other | ) | const [virtual] |
| bool MESH::deepCompare | ( | const GMESH & | gother | ) | const [virtual] |
Returns true if mesh other has same coordinates (to 1E-15 precision ) and same connectivity as the calling object. Information like name or description is not taken into account for the comparison.
Implements MEDMEM::GMESH.
References _connectivity, _coordinate, getConnectivityptr(), getCoordinateptr(), getCoordinates(), getIsAGrid(), MEDMEM::GMESH::getIsAGrid(), getNumberOfNodes(), and MEDMEM::GMESH::getSpaceDimension().
| bool MESH::isEmpty | ( | ) | const [virtual] |
Implements MEDMEM::GMESH.
References _connectivity, _coordinate, MEDMEM::GMESH::_familyCell, MEDMEM::GMESH::_familyEdge, MEDMEM::GMESH::_familyFace, MEDMEM::GMESH::_familyNode, MEDMEM::GMESH::_groupCell, MEDMEM::GMESH::_groupEdge, MEDMEM::GMESH::_groupFace, MEDMEM::GMESH::_groupNode, MEDMEM::GMESH::_name, _numberOfNodes, and MEDMEM::GMESH::_spaceDimension.
| void MESH::printMySelf | ( | ostream & | os | ) | const [virtual] |
References _connectivity, getConnectivityptr(), getCoordinateptr(), getCoordinates(), getCoordinatesNames(), getCoordinatesUnits(), MEDMEM::GMESH::getFamily(), MEDMEM::GMESH::getGroup(), getMeshDimension(), MEDMEM::GMESH::getNumberOfFamilies(), MEDMEM::GMESH::getNumberOfGroups(), getNumberOfNodes(), and MEDMEM::GMESH::getSpaceDimension().
| bool MESH::getIsAGrid | ( | ) | const [virtual] |
| const MESH * MESH::convertInMESH | ( | ) | const [virtual] |
Implement pure virtual method used to get MESH from GMESH.
Implements MEDMEM::GMESH.
Referenced by MEDMEM::FIELD< T, INTERLACING_TAG >::fillFromAnalytic(), MEDMEM::FIELD< T, INTERLACING_TAG >::getGaussPointsCoordinates(), MEDMEM::FIELD< T, INTERLACING_TAG >::getValueOnPoints(), and MEDMEM::FIELD< T, INTERLACING_TAG >::normL2().
| const CELLMODEL * MEDMEM::MESH::getCellsTypes | ( | MED_EN::medEntityMesh | Entity | ) | const [virtual] |
Get the whole list of CELLMODEL used by cells of given type (medEntityMesh). Passing MED_NODE as an entity type will throw an exception.
| string * MEDMEM::MESH::getCellTypeNames | ( | MED_EN::medEntityMesh | Entity | ) | const [virtual] |
Get an array (it should deleted after use) of the whole list of CELLMODEL Name of a given type (medEntityMesh).
REMARK : Don't use MED_NODE as medEntityMesh
| bool MEDMEM::MESH::existConnectivity | ( | MED_EN::medConnectivity | connectivityType, |
| MED_EN::medEntityMesh | entity | ||
| ) | const [virtual] |
Returns true if the wanted connectivity exist, else returns false (to use before a getSomething method).
| void MEDMEM::MESH::calculateConnectivity | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | entity | ||
| ) | const [virtual] |
Calculates the required connectivity. Returns an exception if this could not be done. Do nothing if connectivity already exist.
| int MEDMEM::MESH::getConnectivityLength | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | entity, | ||
| MED_EN::medGeometryElement | Type | ||
| ) | const [virtual] |
Returns the corresponding length of the array returned by MESH::getConnectivity with exactly the same arguments. Used particulary for wrapping CORBA and python.
| int MESH::getElementNumber | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity, | ||
| MED_EN::medGeometryElement | Type, | ||
| int * | connectivity | ||
| ) | const [virtual] |
Get global number of element which have same connectivity than connectivity argument.
It do not take care of connectivity order (3,4,7,10 is same as 7,3,10,4).
Return -1 if not found.
References getReverseConnectivity(), and getReverseConnectivityIndex().
| int MEDMEM::MESH::getReverseConnectivityLength | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const [virtual] |
Returns the corresponding length of the array returned by MESH::getReverseConnectivity with exactly the same arguments. Used particulary for wrapping CORBA and python.
| const int * MEDMEM::MESH::getReverseConnectivity | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const [virtual] |
Returns the reverse connectivity required by ConnectivityType :
You must get ReverseConnectivityIndex array to use it.
Referenced by MEDMEM::SUPPORT::getBoundaryElements(), getBoundaryElements(), getElementNumber(), and getSkin().
| int MEDMEM::MESH::getReverseConnectivityIndexLength | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const [virtual] |
Returns the corresponding length of the array returned by MESH::getReverseConnectivityIndex with exactly the same arguments. Used particulary for wrapping CORBA and python.
| const int * MEDMEM::MESH::getReverseConnectivityIndex | ( | MED_EN::medConnectivity | ConnectivityType, |
| MED_EN::medEntityMesh | Entity = MED_EN::MED_CELL |
||
| ) | const [virtual] |
Returns the index array required by ConnectivityType.
This array allow to find reverse connectivity of each elements.
Example : Reverse connectivity of i^{th} elements (1<=i<=NumberOfElement) begin at index ReverseConnectivityIndex[i-1] and end at index ReverseConnectivityIndex[i]-1 in ReverseConnectivity array ( ReverseConnectivity[ReverseConnectivityIndex[i-1]-1] is the first value)
Referenced by MEDMEM::SUPPORT::getBoundaryElements(), getBoundaryElements(), getElementNumber(), and getSkin().
| const CONNECTIVITY * MEDMEM::MESH::getConnectivityptr | ( | ) | const [virtual] |
Referenced by deepCompare(), MEDMEM::SUPPORT::getBoundaryElements(), and printMySelf().
| void MEDMEM::MESH::setConnectivityptr | ( | CONNECTIVITY * | conn | ) |
| SUPPORT * MESH::buildSupportOnNodeFromElementList | ( | const list< int > & | listOfElt, |
| MED_EN::medEntityMesh | entity | ||
| ) | const throw (MEDEXCEPTION) |
Method created to factorize code. This method creates a new support on NODE (to deallocate) containing all the nodes id contained in elements 'listOfElt' of entity 'entity'.
References fillSupportOnNodeFromElementList(), MEDMEM::SUPPORT::setEntity(), MEDMEM::SUPPORT::setMesh(), and MEDMEM::SUPPORT::setName().
Referenced by getBoundaryElements().
| void MESH::fillSupportOnNodeFromElementList | ( | const list< int > & | listOfElt, |
| SUPPORT * | supportToFill | ||
| ) | const throw (MEDEXCEPTION) |
Method that do the same thing as buildSupportOnNodeFromElementList except that a SUPPORT is not created.
References _connectivity.
Referenced by buildSupportOnNodeFromElementList().
friend class MED_MESH_RDONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class MED_MESH_WRONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class MED_MED_RDONLY_DRIVER21 [friend] |
friend class MED_MED_WRONLY_DRIVER21 [friend] |
friend class MED_MED_RDWR_DRIVER21 [friend] |
friend class MED_MED_RDONLY_DRIVER22 [friend] |
friend class MED_MED_WRONLY_DRIVER22 [friend] |
friend class MED_MED_RDWR_DRIVER22 [friend] |
friend class GIBI_MESH_RDONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class GIBI_MESH_WRONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class GIBI_MESH_RDWR_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class PORFLOW_MESH_RDONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class PORFLOW_MESH_WRONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class PORFLOW_MESH_RDWR_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class VTK_MESH_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
friend class ENSIGHT_MESH_RDONLY_DRIVER [friend] |
Reimplemented from MEDMEM::GMESH.
| ostream& operator<< | ( | ostream & | os, |
| const MESH & | my | ||
| ) | [friend] |
int MEDMEM::MESH::_numberOfNodes [protected] |
Referenced by isEmpty(), MESH(), operator=(), and MEDMEM::MESHING::setCoordinates().
COORDINATE* MEDMEM::MESH::_coordinate [mutable, protected] |
Referenced by deepCompare(), getBoundingBox(), isEmpty(), MESH(), MEDMEM::MESHING::MESHING(), operator=(), MEDMEM::MESHING::setCoordinateName(), MEDMEM::MESHING::setCoordinates(), MEDMEM::MESHING::setCoordinatesNames(), MEDMEM::MESHING::setCoordinatesUnits(), MEDMEM::MESHING::setCoordinateUnit(), and ~MESH().
CONNECTIVITY* MEDMEM::MESH::_connectivity [mutable, protected] |
Referenced by convertToPoly(), deepCompare(), fillSupportOnNodeFromElementList(), getArea(), getBarycenter(), getBoundaryElements(), getMeshDimension(), getNormal(), getSkin(), getVolume(), isEmpty(), MESH(), MEDMEM::MESHING::MESHING(), operator=(), printMySelf(), MEDMEM::MESHING::setCoordinates(), and ~MESH().
int MEDMEM::MESH::_arePresentOptionnalNodesNumbers [protected] |
Modification pour prise en compte de la numérotation optionnelle des noeuds ///
La map suivante donne le lien numérotation optionnelle => numérotation cannonique Elle sera calculée apres l'appel de MEDnumLire(...) Et sera utilisée avant chaque appel a MEDconnLire(...) pour renuméroter toutes les mailles de façon canonique [1...n] _coordinate->NodeNumber sera utilisé avant chaque appel à MEDconnEcri pour démunéroter les mailles en leur numérotation originelle Ce traitement devrait prévenir tout plantage du aux numérotations optionnelles DES NOEUDS Et ne ralentira que tres peu les traitements sans numéros optionnels
Referenced by MESH(), and operator=().
map<int,int> MEDMEM::MESH::_optionnalToCanonicNodesNumbers [protected] |
Referenced by MESH(), and operator=().