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 () |
![]() | |
GMESH () | |
GMESH (GMESH &m) | |
virtual | ~GMESH () |
GMESH & | operator= (const GMESH &m) |
virtual bool | operator== (const GMESH &other) const |
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 | 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 SUPPORT * | getSupportOnAll (MED_EN::medEntityMesh Entity) const throw (MEDEXCEPTION) |
virtual SUPPORT * | buildSupportOnNodeFromElementList (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 SUPPORT * | buildSupportOnElementsFromElementList (const std::list< int > &listOfElt, MED_EN::medEntityMesh entity) const throw (MEDEXCEPTION) |
void | createFamilies () |
void | createGroups () |
Protected Attributes | |
int | _numberOfNodes |
COORDINATE * | _coordinate |
CONNECTIVITY * | _connectivity |
int | _arePresentOptionnalNodesNumbers |
map< int, int > | _optionnalToCanonicNodesNumbers |
![]() | |
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 | 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) |
Additional Inherited Members | |
![]() | |
static SUPPORT * | mergeSupports (const std::vector< SUPPORT * > Supports) throw (MEDEXCEPTION) |
static SUPPORT * | intersectSupports (const std::vector< SUPPORT * > Supports) throw (MEDEXCEPTION) |
template<class T > | |
static FIELD< T > * | mergeFields (const std::vector< FIELD< T > * > &others, bool meshCompare=false) |
This class contains all the informations related with a MESH :
|
virtual |
References _connectivity, and _coordinate.
|
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.
|
virtual |
|
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().
|
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.
|
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().
|
virtual |
|
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().
|
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.
|
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
|
virtual |
Returns true if the wanted connectivity exist, else returns false (to use before a getSomething method).
|
virtual |
Calculates the required connectivity. Returns an exception if this could not be done. Do nothing if connectivity already exist.
|
virtual |
Returns the corresponding length of the array returned by MESH::getConnectivity with exactly the same arguments. Used particulary for wrapping CORBA and python.
|
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().
|
virtual |
Returns the corresponding length of the array returned by MESH::getReverseConnectivity with exactly the same arguments. Used particulary for wrapping CORBA and python.
|
virtual |
Returns the reverse connectivity required by ConnectivityType :
You must get ReverseConnectivityIndex array to use it.
Referenced by getBoundaryElements(), MEDMEM::SUPPORT::getBoundaryElements(), getElementNumber(), and getSkin().
|
virtual |
Returns the corresponding length of the array returned by MESH::getReverseConnectivityIndex with exactly the same arguments. Used particulary for wrapping CORBA and python.
|
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 getBoundaryElements(), MEDMEM::SUPPORT::getBoundaryElements(), getElementNumber(), and getSkin().
|
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 |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
protected |
Referenced by isEmpty(), MESH(), operator=(), and MEDMEM::MESHING::setCoordinates().
|
mutableprotected |
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().
|
mutableprotected |
Referenced by convertToPoly(), deepCompare(), fillSupportOnNodeFromElementList(), getArea(), getBarycenter(), getBoundaryElements(), getMeshDimension(), getNormal(), getSkin(), getVolume(), isEmpty(), MESH(), MEDMEM::MESHING::MESHING(), operator=(), printMySelf(), MEDMEM::MESHING::setCoordinates(), and ~MESH().
|
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=().
|
protected |
Referenced by MESH(), and operator=().