Med Memory Users' Guide 5.1.3

MESH Advanced features

Functions

virtual SUPPORTMEDMEM::MESH::getBoundaryElements (MED_EN::medEntityMesh Entity) throw (MEDEXCEPTION)
virtual FIELD< double > * MEDMEM::MESH::getVolume (const SUPPORT *Support, bool isAbs=true) const throw (MEDEXCEPTION)
virtual FIELD< double > * MEDMEM::MESH::getArea (const SUPPORT *Support) const throw (MEDEXCEPTION)
virtual FIELD< double > * MEDMEM::MESH::getLength (const SUPPORT *Support) const throw (MEDEXCEPTION)
virtual FIELD< double > * MEDMEM::MESH::getNormal (const SUPPORT *Support) const throw (MEDEXCEPTION)
virtual FIELD< double > * MEDMEM::MESH::getBarycenter (const SUPPORT *Support) const throw (MEDEXCEPTION)
SUPPORTMEDMEM::MESH::getSkin (const SUPPORT *Support3D) throw (MEDEXCEPTION)
static SUPPORTMEDMEM::MESH::mergeSupports (const vector< SUPPORT * > Supports) throw (MEDEXCEPTION)
static SUPPORTMEDMEM::MESH::intersectSupports (const vector< SUPPORT * > Supports) throw (MEDEXCEPTION)

Detailed Description

These functions provide access to high-level manipulation of the meshes, giving information about the cells or extracting supports from the mesh.

The methods described in this section are algorithms that perform a computation and return a result in the form of a SUPPORT or a FIELD to the user. For large meshes, as the returned information is not stored in the mesh but is rather computed, the computation time can be large.


Function Documentation

SUPPORT * MESH::getBoundaryElements ( MED_EN::medEntityMesh  Entity) throw (MEDEXCEPTION) [virtual, inherited]

Returns a support which reference all elements on the boundary of mesh. For a d-dimensional mesh, a boundary element is defined as a d-1 dimension element that is referenced by only one element in the full descending connectivity.

This method can also return the list of nodes that belong to the boundary elements.

WARNING: This method can recalculate descending connectivity from partial to full form, so that partial SUPPORT on d-1 dimension elements becomes invalid.

Parameters:
Entityentity on which the boundary is desired. It has to be either MED_NODE or the d-1 dimension entity type (MED_FACE in 3D, MED_EDGE in 2D).

References MEDMEM::MESH::_connectivity, MEDMEM::MESH::_spaceDimension, MEDMEM::MESH::buildSupportOnElementsFromElementList(), MEDMEM::MESH::buildSupportOnNodeFromElementList(), MEDMEM::MESH::getNumberOfElementsWithPoly(), MEDMEM::MESH::getReverseConnectivity(), and MEDMEM::MESH::getReverseConnectivityIndex().

FIELD< double, FullInterlace > * MESH::getLength ( const SUPPORT Support) const throw (MEDEXCEPTION) [virtual, inherited]
FIELD< double, FullInterlace > * MESH::getNormal ( const SUPPORT Support) const throw (MEDEXCEPTION) [virtual, inherited]
SUPPORT * MESH::getSkin ( const SUPPORT Support3D) throw (MEDEXCEPTION) [inherited]

Retrieves the skin of support Support3D. This method is only available in 3D. On output, it returns a MED_FACE support with the skin of all elements contained in support. The skin is defined as the list of faces that are compnents of only one volume in the input support.

WARNING: This method can recalculate descending connectivity from partial to full form, so that partial SUPPORT on MED_FACE on this mesh becomes invalid.

References MEDMEM::MESH::_connectivity, MEDMEM::MESH::_meshDimension, MEDMEM::MESH::getConnectivity(), MEDMEM::MESH::getConnectivityIndex(), MEDMEM::MESH::getElementType(), MEDMEM::MESH::getNumberOfElements(), MEDMEM::MESH::getNumberOfTypes(), MEDMEM::MESH::getReverseConnectivity(), MEDMEM::MESH::getReverseConnectivityIndex(), MEDMEM::MESH::getTypes(), MEDMEM::SUPPORT::setAll(), MEDMEM::SUPPORT::setGeometricType(), MEDMEM::SUPPORT::setNumber(), MEDMEM::SUPPORT::setNumberOfElements(), and MEDMEM::SUPPORT::setNumberOfGeometricType().

SUPPORT * MESH::mergeSupports ( const vector< SUPPORT * >  Supports) throw (MEDEXCEPTION) [static, inherited]

returns a SUPPORT pointer on the union of all SUPPORTs in Supports. You should delete this pointer after use to avois memory leaks.

return a SUPPORT pointer on the union of all SUPPORTs in Supports. You should delete this pointer after use to avoid memory leaks.

References MEDMEM::SUPPORT::blending(), MEDMEM::MESH::getDescription(), and MEDMEM::MESH::getName().

SUPPORT * MESH::intersectSupports ( const vector< SUPPORT * >  Supports) throw (MEDEXCEPTION) [static, inherited]

returns a SUPPORT pointer on the intersection of all SUPPORTs in Supports. The (SUPPORT *) NULL pointer is returned if the intersection is empty. You should delete this pointer after use to avois memory leaks.

return a SUPPORT pointer on the intersection of all SUPPORTs in Supports. The (SUPPORT *) NULL pointer is returned if the intersection is empty. You should delete this pointer after use to avois memory leaks.

References MEDMEM::MESH::getDescription(), MEDMEM::MESH::getName(), and MEDMEM::SUPPORT::intersecting().