Version: 8.3.0
SMESHDS_Mesh Class Reference

#include <SMESHDS_Mesh.hxx>

Inheritance diagram for SMESHDS_Mesh:

Data Structures

class  SubMeshHolder
 

Public Types

typedef std::vector
< SMDS_MeshNode * > 
SetOfNodes
 
typedef std::vector
< SMDS_MeshCell * > 
SetOfCells
 

Public Member Functions

 SMESHDS_Mesh (int theMeshID, bool theIsEmbeddedMode)
 
bool IsEmbeddedMode ()
 
void SetPersistentId (int id)
 Store ID persistent during lifecycle. More...
 
int GetPersistentId () const
 Return ID persistent during lifecycle. More...
 
void ShapeToMesh (const TopoDS_Shape &S)
 
TopoDS_Shape ShapeToMesh () const
 
bool AddHypothesis (const TopoDS_Shape &SS, const SMESHDS_Hypothesis *H)
 
bool RemoveHypothesis (const TopoDS_Shape &S, const SMESHDS_Hypothesis *H)
 
virtual SMDS_MeshNodeAddNodeWithID (double x, double y, double z, int ID)
 create a MeshNode and add it to the current Mesh More...
 
virtual SMDS_MeshNodeAddNode (double x, double y, double z)
 create a MeshNode and add it to the current Mesh An ID is automatically assigned to the node. More...
 
virtual SMDS_Mesh0DElementAdd0DElementWithID (int nodeID, int ID)
 create a Mesh0DElement and add it to the current Mesh More...
 
virtual SMDS_Mesh0DElementAdd0DElementWithID (const SMDS_MeshNode *node, int ID)
 Create a new Mesh0DElement and at it to the mesh. More...
 
virtual SMDS_Mesh0DElementAdd0DElement (const SMDS_MeshNode *node)
 create a Mesh0DElement and add it to the current Mesh More...
 
virtual SMDS_BallElementAddBallWithID (int n, double diameter, int ID)
 create a Ball and add it to the current Mesh More...
 
virtual SMDS_BallElementAddBallWithID (const SMDS_MeshNode *n, double diameter, int ID)
 Create a new Ball and at it to the mesh. More...
 
virtual SMDS_BallElementAddBall (const SMDS_MeshNode *n, double diameter)
 create a Ball and add it to the current Mesh More...
 
virtual SMDS_MeshEdgeAddEdgeWithID (int n1, int n2, int ID)
 create a MeshEdge and add it to the current Mesh More...
 
virtual SMDS_MeshEdgeAddEdgeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, int ID)
 Create a new edge and at it to the mesh. More...
 
virtual SMDS_MeshEdgeAddEdge (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2)
 create a MeshEdge and add it to the current Mesh More...
 
virtual SMDS_MeshEdgeAddEdgeWithID (int n1, int n2, int n12, int ID)
 
virtual SMDS_MeshEdgeAddEdgeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n12, int ID)
 
virtual SMDS_MeshEdgeAddEdge (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n12)
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int ID)
 Add a triangle defined by its nodes IDs. More...
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, int ID)
 Add a triangle defined by its nodes. More...
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3)
 Add a triangle defined by its nodes. More...
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int n4, int ID)
 Add a quadrangle defined by its nodes IDs. More...
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, int ID)
 Add a quadrangle defined by its nodes. More...
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4)
 Add a quadrangle defined by its nodes. More...
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int n12, int n23, int n31, int ID)
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, int ID)
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31)
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int n12, int n23, int n31, int nCenter, int ID)
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *nCenter, int ID)
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *nCenter)
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int n4, int n12, int n23, int n34, int n41, int ID)
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, int ID)
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41)
 
virtual SMDS_MeshFaceAddFaceWithID (int n1, int n2, int n3, int n4, int n12, int n23, int n34, int n41, int nCenter, int ID)
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *nCenter, int ID)
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *nCenter)
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int ID)
 Create a new tetrahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, int ID)
 Create a new tetrahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4)
 Create a new tetrahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int ID)
 Create a new pyramid and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, int ID)
 Create a new pyramid and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5)
 Create a new pyramid and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int ID)
 Create a new prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, int ID)
 Create a new prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6)
 Create a new prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int ID)
 Create a new hexahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, int ID)
 Create a new hexahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8)
 Create a new hexahedron and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n9, int n10, int n11, int n12, int ID)
 Create a new hexagonal prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n9, const SMDS_MeshNode *n10, const SMDS_MeshNode *n11, const SMDS_MeshNode *n12, int ID)
 Create a new hexagonal prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n9, const SMDS_MeshNode *n10, const SMDS_MeshNode *n11, const SMDS_MeshNode *n12)
 Create a new hexagonal prism and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n12, int n23, int n31, int n14, int n24, int n34, int ID)
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *n14, const SMDS_MeshNode *n24, const SMDS_MeshNode *n34, int ID)
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *n14, const SMDS_MeshNode *n24, const SMDS_MeshNode *n34)
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n12, int n23, int n34, int n41, int n15, int n25, int n35, int n45, int ID)
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n15, const SMDS_MeshNode *n25, const SMDS_MeshNode *n35, const SMDS_MeshNode *n45, int ID)
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n15, const SMDS_MeshNode *n25, const SMDS_MeshNode *n35, const SMDS_MeshNode *n45)
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int n12, int n23, int n31, int n45, int n56, int n64, int n14, int n25, int n36, int ID)
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *n45, const SMDS_MeshNode *n56, const SMDS_MeshNode *n64, const SMDS_MeshNode *n14, const SMDS_MeshNode *n25, const SMDS_MeshNode *n36, int ID)
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n31, const SMDS_MeshNode *n45, const SMDS_MeshNode *n56, const SMDS_MeshNode *n64, const SMDS_MeshNode *n14, const SMDS_MeshNode *n25, const SMDS_MeshNode *n36)
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n12, int n23, int n34, int n41, int n56, int n67, int n78, int n85, int n15, int n26, int n37, int n48, int ID)
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n56, const SMDS_MeshNode *n67, const SMDS_MeshNode *n78, const SMDS_MeshNode *n85, const SMDS_MeshNode *n15, const SMDS_MeshNode *n26, const SMDS_MeshNode *n37, const SMDS_MeshNode *n48, int ID)
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n56, const SMDS_MeshNode *n67, const SMDS_MeshNode *n78, const SMDS_MeshNode *n85, const SMDS_MeshNode *n15, const SMDS_MeshNode *n26, const SMDS_MeshNode *n37, const SMDS_MeshNode *n48)
 
virtual SMDS_MeshVolumeAddVolumeWithID (int n1, int n2, int n3, int n4, int n5, int n6, int n7, int n8, int n12, int n23, int n34, int n41, int n56, int n67, int n78, int n85, int n15, int n26, int n37, int n48, int n1234, int n1256, int n2367, int n3478, int n1458, int n5678, int nCenter, int ID)
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n56, const SMDS_MeshNode *n67, const SMDS_MeshNode *n78, const SMDS_MeshNode *n85, const SMDS_MeshNode *n15, const SMDS_MeshNode *n26, const SMDS_MeshNode *n37, const SMDS_MeshNode *n48, const SMDS_MeshNode *n1234, const SMDS_MeshNode *n1256, const SMDS_MeshNode *n2367, const SMDS_MeshNode *n3478, const SMDS_MeshNode *n1458, const SMDS_MeshNode *n5678, const SMDS_MeshNode *nCenter, int ID)
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8, const SMDS_MeshNode *n12, const SMDS_MeshNode *n23, const SMDS_MeshNode *n34, const SMDS_MeshNode *n41, const SMDS_MeshNode *n56, const SMDS_MeshNode *n67, const SMDS_MeshNode *n78, const SMDS_MeshNode *n85, const SMDS_MeshNode *n15, const SMDS_MeshNode *n26, const SMDS_MeshNode *n37, const SMDS_MeshNode *n48, const SMDS_MeshNode *n1234, const SMDS_MeshNode *n1256, const SMDS_MeshNode *n2367, const SMDS_MeshNode *n3478, const SMDS_MeshNode *n1458, const SMDS_MeshNode *n5678, const SMDS_MeshNode *nCenter)
 
virtual SMDS_MeshFaceAddPolygonalFaceWithID (const std::vector< int > &nodes_ids, const int ID)
 Add a polygon defined by its nodes IDs. More...
 
virtual SMDS_MeshFaceAddPolygonalFaceWithID (const std::vector< const SMDS_MeshNode * > &nodes, const int ID)
 Add a polygon defined by its nodes. More...
 
virtual SMDS_MeshFaceAddPolygonalFace (const std::vector< const SMDS_MeshNode * > &nodes)
 Add a polygon defined by its nodes. More...
 
virtual SMDS_MeshFaceAddQuadPolygonalFaceWithID (const std::vector< int > &nodes_ids, const int ID)
 Add a quadratic polygon defined by its nodes IDs. More...
 
virtual SMDS_MeshFaceAddQuadPolygonalFaceWithID (const std::vector< const SMDS_MeshNode * > &nodes, const int ID)
 Add a quadratic polygon defined by its nodes. More...
 
virtual SMDS_MeshFaceAddQuadPolygonalFace (const std::vector< const SMDS_MeshNode * > &nodes)
 Add a quadratic polygon defined by its nodes. More...
 
virtual SMDS_MeshVolumeAddPolyhedralVolumeWithID (const std::vector< int > &nodes_ids, const std::vector< int > &quantities, const int ID)
 Create a new polyhedral volume and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddPolyhedralVolumeWithID (const std::vector< const SMDS_MeshNode * > &nodes, const std::vector< int > &quantities, const int ID)
 Create a new polyhedral volume and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddPolyhedralVolume (const std::vector< const SMDS_MeshNode * > &nodes, const std::vector< int > &quantities)
 Create a new polyhedral volume and add it to the mesh. More...
 
virtual void MoveNode (const SMDS_MeshNode *, double x, double y, double z)
 
virtual void RemoveNode (const SMDS_MeshNode *)
 Remove a node and all the elements which own this node. More...
 
void RemoveElement (const SMDS_MeshElement *)
 
void RemoveFreeNode (const SMDS_MeshNode *, SMESHDS_SubMesh *, bool fromGroups=true)
 Remove only the given element/node and only if it is free. More...
 
void RemoveFreeElement (const SMDS_MeshElement *, SMESHDS_SubMesh *, bool fromGroups=true)
 
void ClearMesh ()
 Remove all data from the mesh. More...
 
bool ChangeElementNodes (const SMDS_MeshElement *elem, const SMDS_MeshNode *nodes[], const int nbnodes)
 
bool ChangePolygonNodes (const SMDS_MeshElement *elem, std::vector< const SMDS_MeshNode * > nodes)
 
bool ChangePolyhedronNodes (const SMDS_MeshElement *elem, std::vector< const SMDS_MeshNode * > nodes, std::vector< int > quantities)
 
bool ModifyCellNodes (int smdsVolId, std::map< int, int > localClonedNodeIds)
 change some nodes in cell without modifying type or internal connectivity. More...
 
void Renumber (const bool isNodes, const int startID=1, const int deltaID=1)
 
void SetNodeInVolume (const SMDS_MeshNode *aNode, const TopoDS_Shell &S)
 
void SetNodeInVolume (const SMDS_MeshNode *aNode, const TopoDS_Solid &S)
 
void SetNodeOnFace (const SMDS_MeshNode *aNode, const TopoDS_Face &S, double u=0., double v=0.)
 
void SetNodeOnEdge (const SMDS_MeshNode *aNode, const TopoDS_Edge &S, double u=0.)
 
void SetNodeOnVertex (const SMDS_MeshNode *aNode, const TopoDS_Vertex &S)
 
void UnSetNodeOnShape (const SMDS_MeshNode *aNode)
 
void SetMeshElementOnShape (const SMDS_MeshElement *anElt, const TopoDS_Shape &S)
 
void UnSetMeshElementOnShape (const SMDS_MeshElement *anElt, const TopoDS_Shape &S)
 
void SetNodeInVolume (const SMDS_MeshNode *aNode, int Index)
 
void SetNodeOnFace (const SMDS_MeshNode *aNode, int Index, double u=0., double v=0.)
 
void SetNodeOnEdge (const SMDS_MeshNode *aNode, int Index, double u=0.)
 
void SetNodeOnVertex (const SMDS_MeshNode *aNode, int Index)
 
void SetMeshElementOnShape (const SMDS_MeshElement *anElt, int Index)
 
bool HasMeshElements (const TopoDS_Shape &S) const
 
SMESHDS_SubMeshMeshElements (const TopoDS_Shape &S) const
 Return the sub mesh linked to the a given TopoDS_Shape or NULL if the given TopoDS_Shape is unknown. More...
 
SMESHDS_SubMeshMeshElements (const int Index) const
 Return the sub mesh by Id of shape it is linked to. More...
 
std::list< intSubMeshIndices () const
 
SMESHDS_SubMeshIteratorPtr SubMeshes () const
 
bool HasHypothesis (const TopoDS_Shape &S)
 
const std::list< const
SMESHDS_Hypothesis * > & 
GetHypothesis (const TopoDS_Shape &S) const
 
bool IsUsedHypothesis (const SMESHDS_Hypothesis *H) const
 returns true if the hypothesis is assigned to any sub-shape More...
 
const ShapeToHypothesisGetHypotheses () const
 
SMESHDS_ScriptGetScript ()
 
void ClearScript ()
 
int ShapeToIndex (const TopoDS_Shape &aShape) const
 
const TopoDS_Shape & IndexToShape (int ShapeIndex) const
 
int MaxShapeIndex () const
 
int MaxSubMeshIndex () const
 Return max index of sub-mesh. More...
 
SMESHDS_SubMeshNewSubMesh (int Index)
 
int AddCompoundSubmesh (const TopoDS_Shape &S, TopAbs_ShapeEnum type=TopAbs_SHAPE)
 
void AddGroup (SMESHDS_GroupBase *theGroup)
 
void RemoveGroup (SMESHDS_GroupBase *theGroup)
 
int GetNbGroups () const
 
const std::set
< SMESHDS_GroupBase * > & 
GetGroups () const
 
bool IsGroupOfSubShapes (const TopoDS_Shape &aSubShape) const
 
virtual void compactMesh ()
 
void CleanDownWardConnectivity ()
 
void BuildDownWardConnectivity (bool withEdges)
 
 ~SMESHDS_Mesh ()
 
SMDS_UnstructuredGridgetGrid ()
 actual nodes coordinates, cells definition and reverse connectivity are stored in a vtkUnstructuredGrid More...
 
int getMeshId ()
 
virtual SMDS_NodeIteratorPtr nodesIterator (bool idInceasingOrder=false) const
 Return an iterator on nodes of the current mesh factory. More...
 
virtual SMDS_EdgeIteratorPtr edgesIterator (bool idInceasingOrder=false) const
 Return an iterator on edges of the current mesh. More...
 
virtual SMDS_FaceIteratorPtr facesIterator (bool idInceasingOrder=false) const
 Return an iterator on faces of the current mesh. More...
 
virtual SMDS_VolumeIteratorPtr volumesIterator (bool idInceasingOrder=false) const
 Return an iterator on volumes of the current mesh. More...
 
virtual SMDS_ElemIteratorPtr elementsIterator (SMDSAbs_ElementType type=SMDSAbs_All) const
 Return an iterator on elements of the current mesh factory. More...
 
virtual SMDS_ElemIteratorPtr elementGeomIterator (SMDSAbs_GeometryType type) const
 
virtual SMDS_ElemIteratorPtr elementEntityIterator (SMDSAbs_EntityType type) const
 
SMDSAbs_ElementType GetElementType (const int id, const bool iselem) const
 
SMDS_MeshAddSubMesh ()
 Create a submesh and add it to the current mesh. More...
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshEdge *e1, const SMDS_MeshEdge *e2, const SMDS_MeshEdge *e3, int ID)
 Add a triangle defined by its edges. More...
 
virtual SMDS_MeshFaceAddFaceWithID (const SMDS_MeshEdge *e1, const SMDS_MeshEdge *e2, const SMDS_MeshEdge *e3, const SMDS_MeshEdge *e4, int ID)
 Add a quadrangle defined by its edges. More...
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshEdge *e1, const SMDS_MeshEdge *e2, const SMDS_MeshEdge *e3)
 Add a triangle defined by its edges. More...
 
virtual SMDS_MeshFaceAddFace (const SMDS_MeshEdge *e1, const SMDS_MeshEdge *e2, const SMDS_MeshEdge *e3, const SMDS_MeshEdge *e4)
 Add a quadrangle defined by its edges. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4, int ID)
 Create a new tetrahedron defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4, const SMDS_MeshFace *f5, int ID)
 Create a new pyramid defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeWithID (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4, const SMDS_MeshFace *f5, const SMDS_MeshFace *f6, int ID)
 Create a new prism defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4)
 Create a new tetrahedron defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4, const SMDS_MeshFace *f5)
 Create a new pyramid defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolume (const SMDS_MeshFace *f1, const SMDS_MeshFace *f2, const SMDS_MeshFace *f3, const SMDS_MeshFace *f4, const SMDS_MeshFace *f5, const SMDS_MeshFace *f6)
 Create a new prism defined by its faces and add it to the mesh. More...
 
virtual SMDS_MeshVolumeAddVolumeFromVtkIds (const std::vector< vtkIdType > &vtkNodeIds)
 
virtual SMDS_MeshVolumeAddVolumeFromVtkIdsWithID (const std::vector< vtkIdType > &vtkNodeIds, const int ID)
 
virtual SMDS_MeshFaceAddFaceFromVtkIds (const std::vector< vtkIdType > &vtkNodeIds)
 
virtual SMDS_MeshFaceAddFaceFromVtkIdsWithID (const std::vector< vtkIdType > &vtkNodeIds, const int ID)
 
virtual void RemoveElement (const SMDS_MeshElement *elem, std::list< const SMDS_MeshElement * > &removedElems, std::list< const SMDS_MeshElement * > &removedNodes, const bool removenodes=false)
 
virtual void RemoveElement (const SMDS_MeshElement *elem, bool removenodes=false)
 
virtual void Remove0DElement (const SMDS_Mesh0DElement *elem0d)
 Remove an edge and all the elements which own this edge. More...
 
virtual void RemoveEdge (const SMDS_MeshEdge *edge)
 Remove an edge and all the elements which own this edge. More...
 
virtual void RemoveFace (const SMDS_MeshFace *face)
 Remove an face and all the elements which own this face. More...
 
virtual void RemoveVolume (const SMDS_MeshVolume *volume)
 Remove a volume. More...
 
virtual void RemoveFreeElement (const SMDS_MeshElement *elem)
 Remove only the given element and only if it is free. More...
 
virtual void Clear ()
 Clear all data. More...
 
virtual bool RemoveFromParent ()
 
virtual bool RemoveSubMesh (const SMDS_Mesh *aMesh)
 
bool ChangePolyhedronNodes (const SMDS_MeshElement *elem, const std::vector< const SMDS_MeshNode * > &nodes, const std::vector< int > &quantities)
 
const SMDS_MeshNodeFindNode (int idnode) const
 Return the node whose SMDS ID is 'ID'. More...
 
const SMDS_MeshNodeFindNodeVtk (int idnode) const
 Return the node whose VTK ID is 'vtkId'. More...
 
const SMDS_Mesh0DElementFind0DElement (int idnode) const
 
const SMDS_BallElementFindBall (int idnode) const
 
const SMDS_MeshEdgeFindEdge (int idnode1, int idnode2) const
 
const SMDS_MeshEdgeFindEdge (int idnode1, int idnode2, int idnode3) const
 
const SMDS_MeshFaceFindFace (int idnode1, int idnode2, int idnode3) const
 
const SMDS_MeshFaceFindFace (int idnode1, int idnode2, int idnode3, int idnode4) const
 
const SMDS_MeshFaceFindFace (int idnode1, int idnode2, int idnode3, int idnode4, int idnode5, int idnode6) const
 
const SMDS_MeshFaceFindFace (int idnode1, int idnode2, int idnode3, int idnode4, int idnode5, int idnode6, int idnode7, int idnode8) const
 
const SMDS_MeshFaceFindFace (const std::vector< int > &nodes_ids) const
 
const SMDS_MeshElementFindElement (int IDelem) const
 
int MaxNodeID () const
 
int MinNodeID () const
 
int MaxElementID () const
 
int MinElementID () const
 
const SMDS_MeshInfoGetMeshInfo () const
 
virtual int NbNodes () const
 Return the number of nodes. More...
 
virtual int NbElements () const
 Return the number of elements. More...
 
virtual int Nb0DElements () const
 Return the number of 0D elements. More...
 
virtual int NbBalls () const
 Return the number of 0D elements. More...
 
virtual int NbEdges () const
 Return the number of edges (including construction edges) More...
 
virtual int NbFaces () const
 Return the number of faces (including construction faces) More...
 
virtual int NbVolumes () const
 Return the number of volumes. More...
 
virtual int NbSubMesh () const
 Return the number of child mesh of this mesh. More...
 
void DumpNodes () const
 
void Dump0DElements () const
 
void DumpEdges () const
 
void DumpFaces () const
 
void DumpVolumes () const
 
void DebugStats () const
 
bool hasConstructionEdges ()
 Return true if this mesh create faces with edges. More...
 
bool hasConstructionFaces ()
 Return true if this mesh create volumes with faces A false returned value mean that volumes are created with nodes or edges. More...
 
bool hasInverseElements ()
 Return true if nodes are linked to the finit elements, they are belonging to. More...
 
void setConstructionEdges (bool)
 Make this mesh creating construction edges (see hasConstructionEdges) More...
 
void setConstructionFaces (bool)
 Make this mesh creating construction faces (see hasConstructionFaces) More...
 
void setInverseElements (bool)
 Make this mesh creating link from nodes to elements (see hasInverseElements) More...
 
bool Contains (const SMDS_MeshElement *elem) const
 Checks if the element is present in mesh. More...
 
double getMaxDim ()
 
int fromVtkToSmds (int vtkid)
 
void dumpGrid (std::string ficdump="dumpGrid")
 
void setMyModified ()
 low level modification: add, change or remove node or element More...
 
void Modified ()
 modification that needs compact structure and redraw More...
 
vtkMTimeType GetMTime () const
 get last modification timeStamp More...
 
bool isCompacted ()
 

Static Public Member Functions

static const SMDS_Mesh0DElementFind0DElement (const SMDS_MeshNode *n)
 
static const SMDS_BallElementFindBall (const SMDS_MeshNode *n)
 
static const SMDS_MeshEdgeFindEdge (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2)
 
static const SMDS_MeshEdgeFindEdge (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3)
 
static const SMDS_MeshFaceFindFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3)
 
static const SMDS_MeshFaceFindFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4)
 
static const SMDS_MeshFaceFindFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6)
 
static const SMDS_MeshFaceFindFace (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4, const SMDS_MeshNode *n5, const SMDS_MeshNode *n6, const SMDS_MeshNode *n7, const SMDS_MeshNode *n8)
 
static const SMDS_MeshFaceFindFace (const std::vector< const SMDS_MeshNode * > &nodes)
 
static const SMDS_MeshElementFindElement (const std::vector< const SMDS_MeshNode * > &nodes, const SMDSAbs_ElementType type=SMDSAbs_All, const bool noMedium=true)
 Return element based on all given nodes. More...
 
static int CheckMemory (const bool doNotRaise=false) throw (std::bad_alloc)
 Raise an exception if free memory (ram+swap) too low. More...
 

Static Public Attributes

static std::vector< SMDS_Mesh * > _meshList = vector<SMDS_Mesh*>()
 to retrieve this SMDS_Mesh instance from its elements (index stored in SMDS_Elements) More...
 
static int chunkSize = 1024
 

Protected Member Functions

SMDS_MeshFacecreateTriangle (const SMDS_MeshNode *node1, const SMDS_MeshNode *node2, const SMDS_MeshNode *node3, int ID)
 Create a triangle and add it to the current mesh. More...
 
SMDS_MeshFacecreateQuadrangle (const SMDS_MeshNode *node1, const SMDS_MeshNode *node2, const SMDS_MeshNode *node3, const SMDS_MeshNode *node4, int ID)
 Create a quadrangle and add it to the current mesh. More...
 
SMDS_MeshEdgeFindEdgeOrCreate (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2)
 
SMDS_MeshFaceFindFaceOrCreate (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3)
 
SMDS_MeshFaceFindFaceOrCreate (const SMDS_MeshNode *n1, const SMDS_MeshNode *n2, const SMDS_MeshNode *n3, const SMDS_MeshNode *n4)
 
bool registerElement (int ID, SMDS_MeshElement *element)
 Registers element with the given ID, maintains inverse connections. More...
 
void addChildrenWithNodes (std::set< const SMDS_MeshElement * > &setOfChildren, const SMDS_MeshElement *element, std::set< const SMDS_MeshElement * > &nodes)
 Find the children of an element that are made of given nodes. More...
 
void adjustmyCellsCapacity (int ID)
 
void adjustBoundingBox (double x, double y, double z)
 

Protected Attributes

int myMeshId
 index of this SMDS_mesh in the static vector<SMDS_Mesh*> _meshList More...
 
SMDS_UnstructuredGridmyGrid
 actual nodes coordinates, cells definition and reverse connectivity are stored in a vtkUnstructuredGrid More...
 
ObjectPool< SMDS_MeshNode > * myNodePool
 Small objects like SMDS_MeshNode are allocated by chunks to limit memory costs of new. More...
 
ObjectPool< SMDS_VtkVolume > * myVolumePool
 Small objects like SMDS_VtkVolume are allocated by chunks to limit memory costs of new. More...
 
ObjectPool< SMDS_VtkFace > * myFacePool
 
ObjectPool< SMDS_VtkEdge > * myEdgePool
 
ObjectPool< SMDS_BallElement > * myBallPool
 
SetOfNodes myNodes
 SMDS_MeshNodes refer to vtk nodes (vtk id != index in myNodes),store reference to this mesh, and sub-shape. More...
 
SetOfCells myCells
 
std::vector< vtkIdType > myNodeIds
 a buffer to speed up elements addition by excluding some memory allocation More...
 
std::vector< intmyCellIdVtkToSmds
 for cells only: index = ID in vtkUnstructuredGrid, value = ID for SMDS users More...
 
SMDS_MeshmyParent
 
std::list< SMDS_Mesh * > myChildren
 
SMDS_MeshNodeIDFactorymyNodeIDFactory
 
SMDS_MeshElementIDFactorymyElementIDFactory
 
SMDS_MeshInfo myInfo
 
bool myModified
 any add, remove or change of node or cell More...
 
unsigned long myModifTime
 use a counter to keep track of modifications More...
 
unsigned long myCompactTime
 
bool myHasConstructionEdges
 
bool myHasConstructionFaces
 
bool myHasInverseElements
 
double xmin
 
double xmax
 
double ymin
 
double ymax
 
double zmin
 
double zmax
 

Private Types

typedef std::set
< SMESHDS_GroupBase * > 
TGroups
 

Private Member Functions

bool add (const SMDS_MeshElement *elem, SMESHDS_SubMesh *subMesh)
 Add element or node to submesh. More...
 
SMESHDS_SubMeshgetSubmesh (const TopoDS_Shape &shape)
 return submesh by shape More...
 

Private Attributes

ShapeToHypothesis myShapeToHypothesis
 
int myMeshID
 
int myPersistentID
 
TopoDS_Shape myShape
 
SubMeshHoldermySubMeshHolder
 
TopTools_IndexedMapOfShape myIndexToShape
 
TGroups myGroups
 
SMESHDS_ScriptmyScript
 
bool myIsEmbeddedMode
 

Member Typedef Documentation

typedef std::vector<SMDS_MeshCell *> SMDS_Mesh::SetOfCells
inherited
typedef std::vector<SMDS_MeshNode *> SMDS_Mesh::SetOfNodes
inherited
typedef std::set<SMESHDS_GroupBase*> SMESHDS_Mesh::TGroups
private

Constructor & Destructor Documentation

SMESHDS_Mesh::SMESHDS_Mesh ( int  theMeshID,
bool  theIsEmbeddedMode 
)

References myScript, and SetPersistentId().

SMESHDS_Mesh::~SMESHDS_Mesh ( )

References myScript, and mySubMeshHolder.

Member Function Documentation

bool SMESHDS_Mesh::add ( const SMDS_MeshElement elem,
SMESHDS_SubMesh subMesh 
)
private

Add element or node to submesh.

Parameters
elem- element to add
subMesh- submesh to be filled in

References SMESHDS_SubMesh::AddElement(), SMESHDS_SubMesh::AddNode(), SMDS_MeshElement::GetType(), and SMDSAbs_Node.

Referenced by SetMeshElementOnShape(), SetNodeInVolume(), SetNodeOnEdge(), SetNodeOnFace(), and SetNodeOnVertex().

SMDS_Mesh0DElement * SMESHDS_Mesh::Add0DElement ( const SMDS_MeshNode node)
virtual

create a Mesh0DElement and add it to the current Mesh

Returns
: The created Mesh0DElement

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::Add0DElement(), SMDS_Mesh::Add0DElement(), SMDS_MeshElement::GetID(), and myScript.

SMDS_Mesh0DElement * SMESHDS_Mesh::Add0DElementWithID ( int  idnode,
int  ID 
)
virtual

create a Mesh0DElement and add it to the current Mesh

Returns
: The created Mesh0DElement

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::Add0DElement(), SMDS_Mesh::Add0DElementWithID(), and myScript.

SMDS_Mesh0DElement * SMESHDS_Mesh::Add0DElementWithID ( const SMDS_MeshNode n,
int  ID 
)
virtual

Create a new Mesh0DElement and at it to the mesh.

Parameters
idnodeID of the node
IDID of the 0D element to create
Returns
The created 0D element or NULL if an element with this ID already exists or if input node is not found.

Reimplemented from SMDS_Mesh.

References SMDS_MeshElement::GetID().

SMDS_BallElement * SMESHDS_Mesh::AddBall ( const SMDS_MeshNode node,
double  diameter 
)
virtual

create a Ball and add it to the current Mesh

Returns
: The created Ball

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddBall(), SMDS_Mesh::AddBall(), SMDS_MeshElement::GetID(), and myScript.

SMDS_BallElement * SMESHDS_Mesh::AddBallWithID ( int  idnode,
double  diameter,
int  ID 
)
virtual

create a Ball and add it to the current Mesh

Returns
: The created Ball

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddBall(), SMDS_Mesh::AddBallWithID(), SMDS_MeshElement::GetID(), and myScript.

SMDS_BallElement * SMESHDS_Mesh::AddBallWithID ( const SMDS_MeshNode n,
double  diameter,
int  ID 
)
virtual

Create a new Ball and at it to the mesh.

Parameters
idnodeID of the node
IDID of the 0D element to create
Returns
The created 0D element or NULL if an element with this ID already exists or if input node is not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddBall(), SMDS_Mesh::AddBallWithID(), SMDS_MeshElement::GetID(), and myScript.

void SMDS_Mesh::addChildrenWithNodes ( std::set< const SMDS_MeshElement * > &  setOfChildren,
const SMDS_MeshElement element,
std::set< const SMDS_MeshElement * > &  nodes 
)
protectedinherited

Find the children of an element that are made of given nodes.

Parameters
setOfChildrenThe set in which matching children will be inserted
elementThe element were to search matching children
nodesThe nodes that the children must have to be selected

References SMDS_MeshElement::edgesIterator(), SMDS_MeshElement::facesIterator(), SMDS_MeshElement::GetType(), SMDS_Mesh::hasConstructionEdges(), SMDS_Mesh::hasConstructionFaces(), MESSAGE, SMDS_MeshElement::nodesIterator(), SMDSAbs_0DElement, SMDSAbs_All, SMDSAbs_Ball, SMDSAbs_Edge, SMDSAbs_Face, SMDSAbs_NbElementTypes, SMDSAbs_Node, and SMDSAbs_Volume.

Referenced by SMDS_Mesh::RemoveElement().

int SMESHDS_Mesh::AddCompoundSubmesh ( const TopoDS_Shape &  S,
TopAbs_ShapeEnum  type = TopAbs_SHAPE 
)
SMDS_MeshEdge * SMESHDS_Mesh::AddEdge ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n12 
)
virtual
SMDS_MeshEdge * SMESHDS_Mesh::AddEdgeWithID ( int  idnode1,
int  idnode2,
int  ID 
)
virtual

create a MeshEdge and add it to the current Mesh

Returns
: The created MeshEdge

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddEdge(), SMDS_Mesh::AddEdgeWithID(), and myScript.

Referenced by SMESH_MesherHelper::AddEdge(), AddEdgeWithID(), DriverMED::buildMeshGrille(), and DriverGMF_Read::Perform().

SMDS_MeshEdge * SMESHDS_Mesh::AddEdgeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
int  ID 
)
virtual

Create a new edge and at it to the mesh.

Parameters
idnode1ID of the first node
idnode2ID of the second node
IDID of the edge to create
Returns
The created edge or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References AddEdgeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshEdge * SMESHDS_Mesh::AddEdgeWithID ( int  n1,
int  n2,
int  n12,
int  ID 
)
virtual
SMDS_MeshEdge * SMESHDS_Mesh::AddEdgeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n12,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddEdgeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4 
)
virtual

Add a quadrangle defined by its nodes.

An ID is automatically affected to the created face

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddFace(), SMDS_Mesh::AddFace(), SMDS_MeshElement::GetID(), and myScript.

SMDS_MeshFace * SMESHDS_Mesh::AddFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31 
)
virtual
SMDS_MeshFace * SMDS_Mesh::AddFace ( const SMDS_MeshEdge e1,
const SMDS_MeshEdge e2,
const SMDS_MeshEdge e3 
)
virtualinherited

Add a triangle defined by its edges.

An ID is automatically assigned to the Created face

References SMDS_Mesh::AddFaceWithID(), SMDS_MeshElementIDFactory::GetFreeID(), SMDS_Mesh::hasConstructionEdges(), and SMDS_Mesh::myElementIDFactory.

SMDS_MeshFace * SMDS_Mesh::AddFace ( const SMDS_MeshEdge e1,
const SMDS_MeshEdge e2,
const SMDS_MeshEdge e3,
const SMDS_MeshEdge e4 
)
virtualinherited

Add a quadrangle defined by its edges.

An ID is automatically assigned to the Created face

References SMDS_Mesh::AddFaceWithID(), SMDS_MeshElementIDFactory::GetFreeID(), SMDS_Mesh::hasConstructionEdges(), and SMDS_Mesh::myElementIDFactory.

SMDS_MeshFace * SMESHDS_Mesh::AddFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode nCenter 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode nCenter 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  ID 
)
virtual

Add a triangle defined by its nodes IDs.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddFace(), SMDS_Mesh::AddFaceWithID(), and myScript.

Referenced by SMESH_MesherHelper::AddFace(), AddFaceWithID(), DriverMED::buildMeshGrille(), and DriverGMF_Read::Perform().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
int  ID 
)
virtual

Add a triangle defined by its nodes.

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  ID 
)
virtual

Add a quadrangle defined by its nodes IDs.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddFace(), SMDS_Mesh::AddFaceWithID(), and myScript.

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
int  ID 
)
virtual

Add a quadrangle defined by its nodes.

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  n12,
int  n23,
int  n31,
int  ID 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  n12,
int  n23,
int  n31,
int  nCenter,
int  ID 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode nCenter,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n12,
int  n23,
int  n34,
int  n41,
int  ID 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n12,
int  n23,
int  n34,
int  n41,
int  nCenter,
int  ID 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddFaceWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode nCenter,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddFaceWithID(), and SMDS_MeshElement::GetID().

void SMESHDS_Mesh::AddGroup ( SMESHDS_GroupBase theGroup)

Referenced by DriverGMF_Read::Perform().

bool SMESHDS_Mesh::AddHypothesis ( const TopoDS_Shape &  SS,
const SMESHDS_Hypothesis H 
)
SMDS_MeshNode * SMESHDS_Mesh::AddNode ( double  x,
double  y,
double  z 
)
virtual
SMDS_MeshNode * SMESHDS_Mesh::AddNodeWithID ( double  x,
double  y,
double  z,
int  ID 
)
virtual

create a MeshNode and add it to the current Mesh

Parameters
ID: The ID of the MeshNode to create
Returns
: The created node or NULL if a node with this ID already exists

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddNode(), SMDS_Mesh::AddNodeWithID(), SMDS_MeshElement::GetID(), and myScript.

Referenced by SMESH_MesherHelper::AddNode(), DriverMED::buildMeshGrille(), SMESH_Gen_i::CopyMesh(), and DriverGMF_Read::Perform().

SMDS_MeshFace * SMESHDS_Mesh::AddPolygonalFaceWithID ( const std::vector< int > &  nodes_ids,
const int  ID 
)
virtual
SMDS_MeshFace * SMESHDS_Mesh::AddPolygonalFaceWithID ( const std::vector< const SMDS_MeshNode * > &  nodes,
const int  ID 
)
virtual

Add a polygon defined by its nodes.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddPolygonalFace(), SMDS_Mesh::AddPolygonalFaceWithID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddPolyhedralVolume ( const std::vector< const SMDS_MeshNode * > &  nodes,
const std::vector< int > &  quantities 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddPolyhedralVolumeWithID ( const std::vector< int > &  nodes_ids,
const std::vector< int > &  quantities,
const int  ID 
)
virtual

Create a new polyhedral volume and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created volume or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddPolyhedralVolume(), SMDS_Mesh::AddPolyhedralVolumeWithID(), and myScript.

Referenced by SMESH_MesherHelper::AddPolyhedralVolume().

SMDS_MeshVolume * SMESHDS_Mesh::AddPolyhedralVolumeWithID ( const std::vector< const SMDS_MeshNode * > &  nodes,
const std::vector< int > &  quantities,
const int  ID 
)
virtual

Create a new polyhedral volume and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created volume

Reimplemented from SMDS_Mesh.

References SMDS_Mesh::AddPolyhedralVolumeWithID().

SMDS_MeshFace * SMESHDS_Mesh::AddQuadPolygonalFace ( const std::vector< const SMDS_MeshNode * > &  nodes)
virtual

Add a quadratic polygon defined by its nodes.

An ID is automatically affected to the created face.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddQuadPolygonalFace(), SMDS_Mesh::AddQuadPolygonalFace(), SMDS_MeshElement::GetID(), and myScript.

Referenced by SMESH_MesherHelper::AddPolygonalFace(), and DriverMED_R_SMESHDS_Mesh::Perform().

SMDS_MeshFace * SMESHDS_Mesh::AddQuadPolygonalFaceWithID ( const std::vector< int > &  nodes_ids,
const int  ID 
)
virtual

Add a quadratic polygon defined by its nodes IDs.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddQuadPolygonalFace(), SMDS_Mesh::AddQuadPolygonalFaceWithID(), and myScript.

Referenced by SMESH_MesherHelper::AddPolygonalFace(), and DriverMED_R_SMESHDS_Mesh::Perform().

SMDS_MeshFace * SMESHDS_Mesh::AddQuadPolygonalFaceWithID ( const std::vector< const SMDS_MeshNode * > &  nodes,
const int  ID 
)
virtual

Add a quadratic polygon defined by its nodes.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddQuadPolygonalFace(), SMDS_Mesh::AddQuadPolygonalFaceWithID(), and myScript.

SMDS_Mesh * SMDS_Mesh::AddSubMesh ( )
inherited

Create a submesh and add it to the current mesh.

References SMDS_Mesh::myChildren, and SMDS_Mesh::SMDS_Mesh().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5 
)
virtual

Create a new pyramid and add it to the mesh.

Nodes 1,2,3 and 4 define the base of the pyramid

Returns
The created pyramid

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolume(), SMDS_MeshElement::GetID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6 
)
virtual

Create a new prism and add it to the mesh.

Nodes 1,2,3 is a triangle and 1,2,5,4 a quadrangle.

Returns
The created prism

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolume(), SMDS_MeshElement::GetID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8 
)
virtual

Create a new hexahedron and add it to the mesh.

Nodes 1,2,3,4 and 5,6,7,8 are quadrangle and 5,1 and 7,3 are an edges.

Returns
The created hexahedron

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolume(), SMDS_MeshElement::GetID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n9,
const SMDS_MeshNode n10,
const SMDS_MeshNode n11,
const SMDS_MeshNode n12 
)
virtual

Create a new hexagonal prism and add it to the mesh.

Returns
The created prism

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolume(), SMDS_MeshElement::GetID(), and myScript.

SMDS_MeshVolume * SMDS_Mesh::AddVolume ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4 
)
virtualinherited

Create a new tetrahedron defined by its faces and add it to the mesh.

Returns
The created tetrahedron

References SMDS_Mesh::AddVolumeWithID(), SMDS_MeshElementIDFactory::GetFreeID(), SMDS_Mesh::hasConstructionFaces(), and SMDS_Mesh::myElementIDFactory.

SMDS_MeshVolume * SMDS_Mesh::AddVolume ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4,
const SMDS_MeshFace f5 
)
virtualinherited

Create a new pyramid defined by its faces and add it to the mesh.

Returns
The created pyramid

References SMDS_Mesh::AddVolumeWithID(), SMDS_MeshElementIDFactory::GetFreeID(), SMDS_Mesh::hasConstructionFaces(), and SMDS_Mesh::myElementIDFactory.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode n14,
const SMDS_MeshNode n24,
const SMDS_MeshNode n34 
)
virtual
SMDS_MeshVolume * SMDS_Mesh::AddVolume ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4,
const SMDS_MeshFace f5,
const SMDS_MeshFace f6 
)
virtualinherited

Create a new prism defined by its faces and add it to the mesh.

Returns
The created prism

References SMDS_Mesh::AddVolumeWithID(), SMDS_MeshElementIDFactory::GetFreeID(), SMDS_Mesh::hasConstructionFaces(), and SMDS_Mesh::myElementIDFactory.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n15,
const SMDS_MeshNode n25,
const SMDS_MeshNode n35,
const SMDS_MeshNode n45 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode n45,
const SMDS_MeshNode n56,
const SMDS_MeshNode n64,
const SMDS_MeshNode n14,
const SMDS_MeshNode n25,
const SMDS_MeshNode n36 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n56,
const SMDS_MeshNode n67,
const SMDS_MeshNode n78,
const SMDS_MeshNode n85,
const SMDS_MeshNode n15,
const SMDS_MeshNode n26,
const SMDS_MeshNode n37,
const SMDS_MeshNode n48 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolume ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n56,
const SMDS_MeshNode n67,
const SMDS_MeshNode n78,
const SMDS_MeshNode n85,
const SMDS_MeshNode n15,
const SMDS_MeshNode n26,
const SMDS_MeshNode n37,
const SMDS_MeshNode n48,
const SMDS_MeshNode n1234,
const SMDS_MeshNode n1256,
const SMDS_MeshNode n2367,
const SMDS_MeshNode n3478,
const SMDS_MeshNode n1458,
const SMDS_MeshNode n5678,
const SMDS_MeshNode nCenter 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  ID 
)
virtual

Create a new tetrahedron and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created tetrahedron or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolumeWithID(), and myScript.

Referenced by SMESH_MesherHelper::AddVolume(), AddVolumeWithID(), DriverMED::buildMeshGrille(), and DriverGMF_Read::Perform().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
int  ID 
)
virtual

Create a new tetrahedron and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created tetrahedron

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  ID 
)
virtual

Create a new pyramid and add it to the mesh.

Nodes 1,2,3 and 4 define the base of the pyramid

Parameters
IDThe ID of the new volume
Returns
The created pyramid or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolumeWithID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
int  ID 
)
virtual

Create a new pyramid and add it to the mesh.

Nodes 1,2,3 and 4 define the base of the pyramid

Parameters
IDThe ID of the new volume
Returns
The created pyramid

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  idnode6,
int  ID 
)
virtual

Create a new prism and add it to the mesh.

Nodes 1,2,3 is a triangle and 1,2,5,4 a quadrangle.

Parameters
IDThe ID of the new volume
Returns
The created prism or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolumeWithID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
int  ID 
)
virtual

Create a new prism and add it to the mesh.

Nodes 1,2,3 is a triangle and 1,2,5,4 a quadrangle.

Parameters
IDThe ID of the new volume
Returns
The created prism

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  idnode6,
int  idnode7,
int  idnode8,
int  ID 
)
virtual

Create a new hexahedron and add it to the mesh.

Nodes 1,2,3,4 and 5,6,7,8 are quadrangle and 5,1 and 7,3 are an edges.

Parameters
IDThe ID of the new volume
Returns
The created hexahedron or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolumeWithID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
int  ID 
)
virtual

Create a new hexahedron and add it to the mesh.

Nodes 1,2,3,4 and 5,6,7,8 are quadrangle and 5,1 and 7,3 are an edges.

Parameters
IDThe ID of the new volume
Returns
The created prism or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  idnode6,
int  idnode7,
int  idnode8,
int  idnode9,
int  idnode10,
int  idnode11,
int  idnode12,
int  ID 
)
virtual

Create a new hexagonal prism and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created prism or NULL if an element with this ID already exists or if input nodes are not found.

Reimplemented from SMDS_Mesh.

References SMESHDS_Script::AddVolume(), SMDS_Mesh::AddVolumeWithID(), and myScript.

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n9,
const SMDS_MeshNode n10,
const SMDS_MeshNode n11,
const SMDS_MeshNode n12,
int  ID 
)
virtual

Create a new hexagonal prism and add it to the mesh.

Parameters
IDThe ID of the new volume
Returns
The created prism

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n12,
int  n23,
int  n31,
int  n14,
int  n24,
int  n34,
int  ID 
)
virtual
SMDS_MeshVolume * SMDS_Mesh::AddVolumeWithID ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4,
int  ID 
)
virtualinherited
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode n14,
const SMDS_MeshNode n24,
const SMDS_MeshNode n34,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMDS_Mesh::AddVolumeWithID ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4,
const SMDS_MeshFace f5,
int  ID 
)
virtualinherited
SMDS_MeshVolume * SMDS_Mesh::AddVolumeWithID ( const SMDS_MeshFace f1,
const SMDS_MeshFace f2,
const SMDS_MeshFace f3,
const SMDS_MeshFace f4,
const SMDS_MeshFace f5,
const SMDS_MeshFace f6,
int  ID 
)
virtualinherited
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n5,
int  n12,
int  n23,
int  n34,
int  n41,
int  n15,
int  n25,
int  n35,
int  n45,
int  ID 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n15,
const SMDS_MeshNode n25,
const SMDS_MeshNode n35,
const SMDS_MeshNode n45,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n5,
int  n6,
int  n12,
int  n23,
int  n31,
int  n45,
int  n56,
int  n64,
int  n14,
int  n25,
int  n36,
int  ID 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n31,
const SMDS_MeshNode n45,
const SMDS_MeshNode n56,
const SMDS_MeshNode n64,
const SMDS_MeshNode n14,
const SMDS_MeshNode n25,
const SMDS_MeshNode n36,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n5,
int  n6,
int  n7,
int  n8,
int  n12,
int  n23,
int  n34,
int  n41,
int  n56,
int  n67,
int  n78,
int  n85,
int  n15,
int  n26,
int  n37,
int  n48,
int  ID 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n56,
const SMDS_MeshNode n67,
const SMDS_MeshNode n78,
const SMDS_MeshNode n85,
const SMDS_MeshNode n15,
const SMDS_MeshNode n26,
const SMDS_MeshNode n37,
const SMDS_MeshNode n48,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( int  n1,
int  n2,
int  n3,
int  n4,
int  n5,
int  n6,
int  n7,
int  n8,
int  n12,
int  n23,
int  n34,
int  n41,
int  n56,
int  n67,
int  n78,
int  n85,
int  n15,
int  n26,
int  n37,
int  n48,
int  n1234,
int  n1256,
int  n2367,
int  n3478,
int  n1458,
int  n5678,
int  nCenter,
int  ID 
)
virtual
SMDS_MeshVolume * SMESHDS_Mesh::AddVolumeWithID ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8,
const SMDS_MeshNode n12,
const SMDS_MeshNode n23,
const SMDS_MeshNode n34,
const SMDS_MeshNode n41,
const SMDS_MeshNode n56,
const SMDS_MeshNode n67,
const SMDS_MeshNode n78,
const SMDS_MeshNode n85,
const SMDS_MeshNode n15,
const SMDS_MeshNode n26,
const SMDS_MeshNode n37,
const SMDS_MeshNode n48,
const SMDS_MeshNode n1234,
const SMDS_MeshNode n1256,
const SMDS_MeshNode n2367,
const SMDS_MeshNode n3478,
const SMDS_MeshNode n1458,
const SMDS_MeshNode n5678,
const SMDS_MeshNode nCenter,
int  ID 
)
virtual

Reimplemented from SMDS_Mesh.

References AddVolumeWithID(), and SMDS_MeshElement::GetID().

void SMDS_Mesh::adjustBoundingBox ( double  x,
double  y,
double  z 
)
protectedinherited
void SMESHDS_Mesh::BuildDownWardConnectivity ( bool  withEdges)
bool SMESHDS_Mesh::ChangePolygonNodes ( const SMDS_MeshElement elem,
std::vector< const SMDS_MeshNode * >  nodes 
)
bool SMESHDS_Mesh::ChangePolyhedronNodes ( const SMDS_MeshElement elem,
std::vector< const SMDS_MeshNode * >  nodes,
std::vector< int quantities 
)
bool SMDS_Mesh::ChangePolyhedronNodes ( const SMDS_MeshElement elem,
const std::vector< const SMDS_MeshNode * > &  nodes,
const std::vector< int > &  quantities 
)
inherited
int SMDS_Mesh::CheckMemory ( const bool  doNotRaise = false) throw (std::bad_alloc)
staticinherited
void SMESHDS_Mesh::CleanDownWardConnectivity ( )
void SMESHDS_Mesh::ClearMesh ( )

Remove all data from the mesh.

References SMDS_Mesh::Clear(), SMESHDS_Script::ClearMesh(), myGroups, myScript, and SubMeshes().

void SMESHDS_Mesh::ClearScript ( )
bool SMDS_Mesh::Contains ( const SMDS_MeshElement elem) const
inherited

Checks if the element is present in mesh.

Useful to determine dead pointers. Use this function for debug purpose only! Do not check in the code using it even in DEBUG mode

Useful to determine dead pointers.

References SMDS_Mesh::elementsIterator(), and SMDS_Mesh::nodesIterator().

void SMDS_Mesh::Dump0DElements ( ) const
inherited
void SMDS_Mesh::DumpEdges ( ) const
inherited
void SMDS_Mesh::DumpFaces ( ) const
inherited
void SMDS_Mesh::dumpGrid ( std::string  ficdump = "dumpGrid")
inherited
void SMDS_Mesh::DumpNodes ( ) const
inherited
void SMDS_Mesh::DumpVolumes ( ) const
inherited
SMDS_EdgeIteratorPtr SMDS_Mesh::edgesIterator ( bool  idInceasingOrder = false) const
virtualinherited

Return an iterator on edges of the current mesh.

Reimplemented in SMESH_MeshPartDS.

References SMDS_Mesh::myCells, and SMDSAbs_Edge.

Referenced by SMESH_MeshEditor::ConvertToQuadratic(), SMDS_Mesh::DumpEdges(), and SMESH_MeshObj::GetEntities().

SMDS_ElemIteratorPtr SMDS_Mesh::elementsIterator ( SMDSAbs_ElementType  type = SMDSAbs_All) const
virtualinherited

Return an iterator on elements of the current mesh factory.

Reimplemented in SMESH_MeshPartDS.

References SMDS_Mesh::myCells, SMDS_Mesh::myNodes, SMDSAbs_All, and SMDSAbs_Node.

Referenced by SMESH_Gen_i::_GetInside(), SMDS_Mesh::Clear(), SMDS_Mesh::Contains(), SMESH_Gen_i::CopyMesh(), SMESH_MeshEditor::Create0DElementsOnAllNodes(), SMESH_MeshEditor::DoubleElements(), SMDS_Mesh::Dump0DElements(), DriverGMF_Write::elementIterator(), SMDS_MeshNodeIDFactory::elementsIterator(), SMDS_MeshElementIDFactory::elementsIterator(), SMESH_MeshPartDS::elementsIterator(), SMESH_MeshEditor::FindEqualElements(), SMESHDS_GroupOnFilter::GetElements(), SMESH_Mesh_i::GetElements(), SMESH_Mesh_i::GetElementsByType(), SMESH_Mesh_i::GetElementsId(), SMESH::Controls::Filter::GetElementsId(), SMESH_MeshObj::GetEntities(), DriverSTL_W_SMDS_Mesh::getFaces(), SMESH_ProxyMesh::GetFaces(), SMESH::Controls::NumericalFunctor::GetHistogram(), SMESH::Filter_i::GetMeshInfo(), SMESH::Filter_i::GetNbElementsByType(), DriverMED_W_Field::GetOrderedElems(), SMESH_MeshEditor_i::GetPreviewData(), SMESH_ElementSearcherImpl::getTolerance(), SMESH::Filter_i::GetTypes(), StdMeshers_Import_1D::importMesh(), DriverMED_W_SMESHDS_Mesh::Perform(), SMESH::Controls::ElementsOnSurface::process(), SMESH_MeshEditor::QuadTo4Tri(), SMESH_PreMeshInfo::readSubMeshes(), SMESH_MeshEditor::Reorient2DBy3D(), SMESH_Gen_i::Save(), DriverMED_W_Field::Set(), SMESHDS_GroupOnFilter::setNbElemToSkip(), SMESH_MeshEditor::Transform(), and SMDS_Mesh::~SMDS_Mesh().

const SMDS_Mesh0DElement * SMDS_Mesh::Find0DElement ( int  idnode) const
inherited

References SMDS_Mesh::FindNode().

const SMDS_Mesh0DElement * SMDS_Mesh::Find0DElement ( const SMDS_MeshNode n)
staticinherited
const SMDS_BallElement * SMDS_Mesh::FindBall ( int  idnode) const
inherited

References SMDS_Mesh::FindNode().

const SMDS_BallElement * SMDS_Mesh::FindBall ( const SMDS_MeshNode n)
staticinherited
const SMDS_MeshEdge * SMDS_Mesh::FindEdge ( int  idnode1,
int  idnode2,
int  idnode3 
) const
inherited
const SMDS_MeshEdge * SMDS_Mesh::FindEdge ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2 
)
staticinherited
const SMDS_MeshEdge * SMDS_Mesh::FindEdge ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3 
)
staticinherited
const SMDS_MeshElement * SMDS_Mesh::FindElement ( int  IDelem) const
inherited

References SMDS_Mesh::myCells.

Referenced by SMESH_Gen_i::_GetInside(), MeshEditor_I::arrayToSet(), SMESH_Mesh_i::BaryCenter(), SMESHGUI_CreatePolyhedralVolumeDlg::checkEditLine(), StdMeshers_Import_1D2D::Compute(), SMESH_Gen_i::CopyMesh(), SMESH_MeshEditor::CreateHoleSkin(), SMESHGUI_CuttingOfQuadsDlg::displayPreview(), SMESHGUI_CreatePolyhedralVolumeDlg::displaySimulation(), SMESH_MeshEditor::DoubleNodes(), SMESH_MeshEditor::DoubleNodesOnGroupBoundaries(), SMESH_Mesh_i::ElemNbEdges(), SMESH_Mesh_i::ElemNbFaces(), enlargeBoundingBox(), SMDS_Mesh::FindFace(), SMESH_Gen_i::FindGeometryByMeshElement(), SMESHGUI_MergeDlg::FindGravityCenter(), SMESHDS_GroupBase::findInMesh(), DriverSTL_W_SMDS_Mesh::findVolumeTriangles(), SMESHGUI_PreVisualObj::GetEdgeNodes(), SMESH_VisualObjDef::GetEdgeNodes(), SMESHGUI_PreVisualObj::GetElemDimension(), SMESH_MeshObj::GetElemDimension(), SMESH_Mesh_i::GetElementPosition(), SMESH_Mesh_i::GetElemNbNodes(), SMESH_Mesh_i::GetElemNode(), SMESHGUI_PreVisualObj::GetElemVTKId(), getNodesFromElems(), getPointers(), SMESH::Controls::NumericalFunctor::GetPoints(), SMESH_Mesh_i::GetShapeIDForElem(), SMESH::Controls::NumericalFunctor::GetValue(), SMESH::Controls::Volume::GetValue(), SMESH::Controls::MaxElementLength3D::GetValue(), SMESH::Controls::AspectRatio::GetValue(), SMESH::Controls::AspectRatio3D::GetValue(), SMESH::Controls::MultiConnection2D::GetValue(), SMESH::Controls::BallDiameter::GetValue(), MeshEditor_I::idSourceToNodeSet(), StdMeshers_Import_1D::importMesh(), SMESH_Mesh_i::IsMediumNode(), SMESHGUI_PredicateFilter::IsObjValid(), SMESHGUI_QuadrangleFilter::IsObjValid(), SMESHGUI_TriangleFilter::IsObjValid(), SMESHGUI_FacesFilter::IsObjValid(), SMESHGUI_VolumesFilter::IsObjValid(), SMESHGUI_VolumeShapeFilter::IsObjValid(), SMESH_Mesh_i::IsPoly(), SMESH_Mesh_i::IsQuadratic(), SMESH::Controls::CoincidentElements::IsSatisfy(), SMESH::Controls::BadOrientedVolume::IsSatisfy(), SMESH::Controls::ElemEntityType::IsSatisfy(), SMESH::Controls::BareBorderVolume::IsSatisfy(), SMESH::Controls::BareBorderFace::IsSatisfy(), SMESH::Controls::OverConstrainedVolume::IsSatisfy(), SMESH::Controls::OverConstrainedFace::IsSatisfy(), SMESH::Controls::FreeEdges::IsSatisfy(), SMESH::Controls::RangeOfIds::IsSatisfy(), SMESH::Controls::ElementsOnShape::IsSatisfy(), SMESH::Controls::BelongToGeom::IsSatisfy(), SMESH::Controls::LyingOnGeom::IsSatisfy(), SMESH::Controls::FreeFaces::IsSatisfy(), SMESH::Controls::LinearOrQuadratic::IsSatisfy(), SMESH::Controls::ElemGeomType::IsSatisfy(), SMESHGUI_PredicateFilter::IsValid(), SMESHGUI_QuadrangleFilter::IsValid(), SMESHGUI_TriangleFilter::IsValid(), SMESHGUI_FacesFilter::IsValid(), SMESHGUI_VolumesFilter::IsValid(), SMESHGUI_VolumeShapeFilter::IsValid(), SMESH::SMESH_MeshEditor::Make2DMeshFrom3D(), SMESH_MeshEditor::MergeElements(), SMDS_MeshElementIDFactory::MeshElement(), SMDS_MeshNode::NbInverseElements(), SMDS_MeshNode_MyInvIterator::next(), SMESHGUI_3TypesSelector::onTextChange(), SMESHGUI_CopyMeshDlg::onTextChange(), SMESHGUI_SmoothingDlg::onTextChange(), SMESHGUI_CreatePolyhedralVolumeDlg::onTextChange(), SMESHGUI_ScaleDlg::onTextChange(), SMESHGUI_TranslationDlg::onTextChange(), SMESHGUI_RotationDlg::onTextChange(), SMESHGUI_SymmetryDlg::onTextChange(), SMESHGUI_SewingDlg::onTextChange(), SMESHGUI_MeshPatternDlg::onTextChanged(), SMESHGUI_SelectionOp::onTextChanged(), SMESH::Controls::ManifoldPart::process(), SMESH_MeshEditor::Remove(), SMESH::Controls::CoplanarFaces::SetMesh(), SMESH_MeshEditor_i::SetMeshElementOnShape(), SMESH_MeshEditor::SewFreeBorder(), SMESHGUI_SplitVolumesDlg::showFacetByElement(), SMDS_MeshNode_MyInvIterator::SMDS_MeshNode_MyInvIterator(), and SMESH_MeshEditor::SplitVolumes().

const SMDS_MeshElement * SMDS_Mesh::FindElement ( const std::vector< const SMDS_MeshNode * > &  nodes,
const SMDSAbs_ElementType  type = SMDSAbs_All,
const bool  noMedium = true 
)
staticinherited

Return element based on all given nodes.

Parameters
nodes- node of element
type- type of element
noMedium- true if medium nodes of quadratic element are not included in <nodes>
Return values
constSMDS_MeshElement* - found element or NULL

References SMDS_MeshElement::GetNodeIndex(), SMDS_MeshElement::NbCornerNodes(), and SMDS_MeshElement::NbNodes().

const SMDS_MeshFace * SMDS_Mesh::FindFace ( int  idnode1,
int  idnode2,
int  idnode3 
) const
inherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4 
) const
inherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  idnode6 
) const
inherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( int  idnode1,
int  idnode2,
int  idnode3,
int  idnode4,
int  idnode5,
int  idnode6,
int  idnode7,
int  idnode8 
) const
inherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3 
)
staticinherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4 
)
staticinherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6 
)
staticinherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4,
const SMDS_MeshNode n5,
const SMDS_MeshNode n6,
const SMDS_MeshNode n7,
const SMDS_MeshNode n8 
)
staticinherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const std::vector< int > &  nodes_ids) const
inherited
const SMDS_MeshFace * SMDS_Mesh::FindFace ( const std::vector< const SMDS_MeshNode * > &  nodes)
staticinherited
SMDS_MeshFace * SMDS_Mesh::FindFaceOrCreate ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3 
)
protectedinherited
SMDS_MeshFace * SMDS_Mesh::FindFaceOrCreate ( const SMDS_MeshNode n1,
const SMDS_MeshNode n2,
const SMDS_MeshNode n3,
const SMDS_MeshNode n4 
)
protectedinherited
const SMDS_MeshNode * SMDS_Mesh::FindNode ( int  idnode) const
inherited

Return the node whose SMDS ID is 'ID'.

References SMDS_Mesh::myNodes.

Referenced by SMESH_Gen_i::_GetInside(), MeshEditor_I::arrayToSet(), SMESHGUI_CreatePolyhedralVolumeDlg::checkEditLine(), SMESH_MeshEditor::ConvertFromQuadratic(), SMESH_Gen_i::CopyMesh(), SMESH_Mesh_i::CreateDimGroup(), SMESHGUI_CreatePolyhedralVolumeDlg::displaySimulation(), SMESH_MeshEditor::DoubleNodes(), enlargeBoundingBox(), SMDS_Mesh::Find0DElement(), SMDS_Mesh::FindBall(), SMDS_Mesh::FindEdge(), SMDS_Mesh::FindFace(), SMESHDS_GroupBase::findInMesh(), DriverMED::FindNode(), SMESH_Mesh_i::GetNodeInverseElements(), SMESH_Mesh_i::GetNodePosition(), SMESHGUI_PreVisualObj::GetNodeVTKId(), SMESH_Mesh_i::GetNodeXYZ(), SMESHGUI_SewingDlg::BorderGroupDisplayer::getPartEnds(), getPointers(), SMESH_Mesh_i::GetShapeID(), SMESH::Controls::NodeConnectivityNumber::GetValue(), MeshEditor_I::idSourceToNodeSet(), SMESH_Mesh_i::IsMediumNode(), SMESH_Mesh_i::IsMediumNodeOfAnyElem(), SMESHGUI_PredicateFilter::IsObjValid(), SMESH::Controls::ElemEntityType::IsSatisfy(), SMESH::Controls::FreeNodes::IsSatisfy(), SMESH::Controls::RangeOfIds::IsSatisfy(), SMESH::Controls::ElementsOnShape::IsSatisfy(), SMESH::Controls::BelongToGeom::IsSatisfy(), SMESH::Controls::LyingOnGeom::IsSatisfy(), SMESH::Controls::ConnectedElements::IsSatisfy(), SMESHGUI_AddQuadraticElementDlg::IsValid(), SMESHGUI_PredicateFilter::IsValid(), SMESH_MeshEditor_i::MergeNodes(), SMDS_MeshNodeIDFactory::MeshElement(), SMESH::Measurements_i::MinDistance(), SMESH_MeshEditor_i::MoveClosestNodeToPoint(), SMESHGUI_3TypesSelector::onTextChange(), SMESHGUI_AddMeshElementDlg::onTextChange(), SMESHGUI_AddQuadraticElementDlg::onTextChange(), SMESHGUI_SmoothingDlg::onTextChange(), SMESHGUI_CreatePolyhedralVolumeDlg::onTextChange(), SMESHGUI_ExtrusionAlongPathDlg::onTextChange(), SMESHGUI_SewingDlg::onTextChange(), SMESHGUI_SelectionOp::onTextChanged(), SMESH_PreMeshInfo::readSubMeshes(), SMESH_MeshEditor::Remove(), SMESHGUI_ExtrusionAlongPathDlg::SelectionIntoArgument(), SMESHGUI_ScaleDlg::SelectionIntoArgument(), SMESHGUI_TranslationDlg::SelectionIntoArgument(), SMESHGUI_RotationDlg::SelectionIntoArgument(), SMESHGUI_SymmetryDlg::SelectionIntoArgument(), SMESHGUI_ExtrusionDlg::SelectionIntoArgument(), SMESH::Controls::ConnectedElements::SetNode(), SMESH_MeshEditor_i::SetNodeInVolume(), SMESH_MeshEditor_i::SetNodeOnEdge(), SMESH_MeshEditor_i::SetNodeOnFace(), SMESH_MeshEditor_i::SetNodeOnVertex(), SMESHGUI_IdPreview::SetPointsData(), SMESH_MeshEditor_i::SewBorderToSide(), SMESH_MeshEditor_i::SewConformFreeBorders(), SMESH_MeshEditor_i::SewFreeBorders(), SMESH_MeshEditor_i::SewSideElements(), SMESH_MeshEditor_i::smooth(), and DriverGMF_Read::storeBadNodeIds().

const SMDS_MeshNode * SMDS_Mesh::FindNodeVtk ( int  idnode) const
inherited
const ShapeToHypothesis& SMESHDS_Mesh::GetHypotheses ( ) const
const list< const SMESHDS_Hypothesis * > & SMESHDS_Mesh::GetHypothesis ( const TopoDS_Shape &  S) const
double SMDS_Mesh::getMaxDim ( )
inherited
int SMESHDS_Mesh::GetNbGroups ( ) const
int SMESHDS_Mesh::GetPersistentId ( ) const
SMESHDS_Script * SMESHDS_Mesh::GetScript ( )

References myScript.

Referenced by SMESH_Client::Update().

SMESHDS_SubMesh * SMESHDS_Mesh::getSubmesh ( const TopoDS_Shape &  shape)
private

return submesh by shape

Parameters
shape- the sub-shape
Return values
SMESHDS_SubMesh*- the found submesh

References NewSubMesh(), and ShapeToIndex().

Referenced by SetMeshElementOnShape(), SetNodeInVolume(), SetNodeOnEdge(), SetNodeOnFace(), and SetNodeOnVertex().

bool SMDS_Mesh::hasConstructionEdges ( )
inherited
bool SMDS_Mesh::hasConstructionFaces ( )
inherited

Return true if this mesh create volumes with faces A false returned value mean that volumes are created with nodes or edges.

(see hasConstructionEdges) A concequence is, iteration on faces (SMDS_Element::facesIterator) will be unavailable.

References SMDS_Mesh::myHasConstructionFaces.

Referenced by SMDS_Mesh::addChildrenWithNodes(), SMDS_Mesh::AddPolyhedralVolumeWithID(), SMDS_Mesh::AddVolume(), SMDS_Mesh::AddVolumeWithID(), DriverMED_W_SMESHDS_Mesh::Perform(), RemoveElement(), SMDS_Mesh::RemoveElement(), RemoveFreeElement(), SMDS_Mesh::RemoveFreeElement(), and RemoveNode().

bool SMESHDS_Mesh::HasHypothesis ( const TopoDS_Shape &  S)

References myShapeToHypothesis.

bool SMDS_Mesh::hasInverseElements ( )
inherited

Return true if nodes are linked to the finit elements, they are belonging to.

Currently, It always return true.

References SMDS_Mesh::myHasInverseElements.

bool SMESHDS_Mesh::HasMeshElements ( const TopoDS_Shape &  S) const
bool SMDS_Mesh::isCompacted ( )
inherited
bool SMESHDS_Mesh::IsEmbeddedMode ( )
bool SMESHDS_Mesh::IsGroupOfSubShapes ( const TopoDS_Shape &  aSubShape) const
bool SMESHDS_Mesh::IsUsedHypothesis ( const SMESHDS_Hypothesis H) const

returns true if the hypothesis is assigned to any sub-shape

References myShapeToHypothesis.

int SMDS_Mesh::MaxElementID ( ) const
inherited
int SMDS_Mesh::MaxNodeID ( ) const
inherited
int SMESHDS_Mesh::MaxSubMeshIndex ( ) const
SMESHDS_SubMesh * SMESHDS_Mesh::MeshElements ( const TopoDS_Shape &  S) const

Return the sub mesh linked to the a given TopoDS_Shape or NULL if the given TopoDS_Shape is unknown.

References SMESHDS_TSubMeshHolder< SUBMESH >::Get(), mySubMeshHolder, and ShapeToIndex().

Referenced by VISCOUS_3D::_ViscousBuilder::addBoundaryElements(), VISCOUS_3D::_Shrinker1D::AddEdge(), clearSubMesh(), StdMeshers_Projection_1D2D::Compute(), StdMeshers_Projection_2D::Compute(), StdMeshers_Import_1D2D::Compute(), StdMeshers_Import_1D::Compute(), StdMeshers_Cartesian_3D::Compute(), StdMeshers_Hexa_3D::Compute(), StdMeshers_RadialPrism_3D::Compute(), StdMeshers_Regular_1D::Compute(), StdMeshers_QuadToTriaAdaptor::Compute(), StdMeshers_Prism_3D::computeWalls(), SMESH_MeshEditor::ConvertToQuadratic(), SMESH_Pattern::createElements(), StdMeshers_ProjectionUtils::FindMatchingNodesOnFaces(), SMESH_MeshEditor::FindShape(), VISCOUS_3D::_ViscousBuilder::fixBadFaces(), StdMeshers_Quadrangle_2D::getCorners(), StdMeshers_FaceSide::GetEdgeNodes(), SMESH_Algo::GetNodeParamOnEdge(), DriverMED_W_SMESHDS_Mesh::getNodesOfMissing0DOnVert(), SMESH_Algo::GetSortedNodesOnEdge(), SMESH_ProxyMesh::GetSubMesh(), StdMeshers_Prism_3D::getSweepTolerance(), SMESH_subMesh::IsMeshComputed(), SMESH_MesherHelper::IsQuadraticSubMesh(), SMESH_MesherHelper::IsReversedSubMesh(), StdMeshers_Penta_3D::LoadIJNodes(), SMESH_MesherHelper::LoadNodeColumns(), VISCOUS_3D::_ViscousBuilder::MakeN2NMap(), StdMeshers_Penta_3D::MakeNodes(), NewSubMesh(), VISCOUS_3D::_ViscousBuilder::prepareEdgeToShrink(), SMESH_MeshEditor::QuadTo4Tri(), VISCOUS_3D::_ViscousBuilder::refine(), RemoveElement(), RemoveFreeElement(), RemoveFreeNode(), removeFromContainers(), SMESH_MeshEditor::removeQuadElem(), StdMeshers_MaxElementArea::SetParametersByMesh(), StdMeshers_MaxElementVolume::SetParametersByMesh(), StdMeshers_AutomaticLength::SetParametersByMesh(), StdMeshers_NumberOfSegments::SetParametersByMesh(), SMESHDS_GroupOnGeom::SetShape(), SMESH_subMesh::SMESH_subMesh(), StdMeshers_Quadrangle_2D::smooth(), SMESH_MeshEditor::SplitBiQuadraticIntoLinear(), SMESH_MeshEditor::SplitVolumes(), VISCOUS_3D::_Shrinker1D::SwapSrcTgtNodes(), UnSetMeshElementOnShape(), UnSetNodeOnShape(), and SMESH_Algo::VertexNode().

SMESHDS_SubMesh * SMESHDS_Mesh::MeshElements ( const int  Index) const

Return the sub mesh by Id of shape it is linked to.

References SMESHDS_TSubMeshHolder< SUBMESH >::Get(), and mySubMeshHolder.

int SMDS_Mesh::MinElementID ( ) const
inherited
int SMDS_Mesh::MinNodeID ( ) const
inherited
void SMDS_Mesh::Modified ( )
inherited
bool SMESHDS_Mesh::ModifyCellNodes ( int  vtkVolId,
std::map< int, int localClonedNodeIds 
)

change some nodes in cell without modifying type or internal connectivity.

Nodes inverse connectivity is maintained up to date.

Parameters
vtkVolIdvtk id of the cell.
localClonedNodeIdsmap old node id to new node id.
Returns
ok if success.

References SMDS_UnstructuredGrid::ModifyCellNodes(), and SMDS_Mesh::myGrid.

Referenced by SMESH_MeshEditor::DoubleNodesOnGroupBoundaries().

int SMDS_Mesh::NbBalls ( ) const
virtualinherited
int SMDS_Mesh::NbElements ( ) const
virtualinherited

Return the number of elements.

References SMDS_Mesh::myInfo, and SMDS_MeshInfo::NbElements().

Referenced by cleanSubMesh().

int SMDS_Mesh::NbSubMesh ( ) const
virtualinherited

Return the number of child mesh of this mesh.

Note that the tree structure of SMDS_Mesh is unused in SMESH

References SMDS_Mesh::myChildren.

void SMDS_Mesh::Remove0DElement ( const SMDS_Mesh0DElement elem0d)
virtualinherited

Remove an edge and all the elements which own this edge.

References SMDS_Mesh::RemoveElement().

void SMDS_Mesh::RemoveEdge ( const SMDS_MeshEdge edge)
virtualinherited

Remove an edge and all the elements which own this edge.

References SMDS_Mesh::RemoveElement().

void SMDS_Mesh::RemoveElement ( const SMDS_MeshElement elem,
std::list< const SMDS_MeshElement * > &  removedElems,
std::list< const SMDS_MeshElement * > &  removedNodes,
const bool  removenodes = false 
)
virtualinherited
void SMDS_Mesh::RemoveElement ( const SMDS_MeshElement elem,
bool  removenodes = false 
)
virtualinherited
Parameters
elemThe element to delete
removenodesif true remaining nodes will be removed

References SMDS_Mesh::RemoveElement().

void SMDS_Mesh::RemoveFace ( const SMDS_MeshFace face)
virtualinherited

Remove an face and all the elements which own this face.

References SMDS_Mesh::RemoveElement().

bool SMDS_Mesh::RemoveFromParent ( )
virtualinherited
void SMESHDS_Mesh::RemoveGroup ( SMESHDS_GroupBase theGroup)
bool SMESHDS_Mesh::RemoveHypothesis ( const TopoDS_Shape &  S,
const SMESHDS_Hypothesis H 
)
bool SMDS_Mesh::RemoveSubMesh ( const SMDS_Mesh aMesh)
virtualinherited
void SMDS_Mesh::RemoveVolume ( const SMDS_MeshVolume volume)
virtualinherited

Remove a volume.

References SMDS_Mesh::RemoveElement().

void SMESHDS_Mesh::Renumber ( const bool  isNodes,
const int  startID = 1,
const int  deltaID = 1 
)
virtual
void SMDS_Mesh::setConstructionEdges ( bool  b)
inherited

Make this mesh creating construction edges (see hasConstructionEdges)

Parameters
btrue to have construction edges, else false.

References SMDS_Mesh::myHasConstructionEdges.

void SMDS_Mesh::setConstructionFaces ( bool  b)
inherited

Make this mesh creating construction faces (see hasConstructionFaces)

Parameters
btrue to have construction faces, else false.

References SMDS_Mesh::myHasConstructionFaces.

void SMDS_Mesh::setInverseElements ( bool  b)
inherited

Make this mesh creating link from nodes to elements (see hasInverseElements)

Parameters
btrue to link nodes to elements, else false.

References MESSAGE, and SMDS_Mesh::myHasInverseElements.

void SMESHDS_Mesh::SetMeshElementOnShape ( const SMDS_MeshElement anElt,
int  Index 
)

References add(), and NewSubMesh().

void SMESHDS_Mesh::SetNodeInVolume ( const SMDS_MeshNode aNode,
const TopoDS_Solid &  S 
)
void SMESHDS_Mesh::SetNodeInVolume ( const SMDS_MeshNode aNode,
int  Index 
)
void SMESHDS_Mesh::SetNodeOnEdge ( const SMDS_MeshNode aNode,
int  Index,
double  u = 0. 
)

References add(), and NewSubMesh().

void SMESHDS_Mesh::SetNodeOnFace ( const SMDS_MeshNode aNode,
int  Index,
double  u = 0.,
double  v = 0. 
)

References add(), and NewSubMesh().

void SMESHDS_Mesh::SetNodeOnVertex ( const SMDS_MeshNode aNode,
const TopoDS_Vertex &  S 
)
void SMESHDS_Mesh::SetNodeOnVertex ( const SMDS_MeshNode aNode,
int  Index 
)

References add(), and NewSubMesh().

void SMESHDS_Mesh::SetPersistentId ( int  id)

Store ID persistent during lifecycle.

Initially it was used to have a persistent reference to the mesh from the hypothesis

References myPersistentID, and SMDS_Mesh::NbNodes().

Referenced by SMESH_MeshPartDS::SMESH_MeshPartDS(), and SMESHDS_Mesh().

int SMESHDS_Mesh::ShapeToIndex ( const TopoDS_Shape &  aShape) const

References myIndexToShape.

Referenced by VISCOUS_3D::_ViscousBuilder::addBoundaryElements(), SMESH_Gen_i::AddHypothesisToShape(), SMESH_Mesh_i::CheckGeomGroupModif(), SMESH_Mesh_i::CheckGeomModif(), SMESH_MesherHelper::CheckNodeU(), StdMeshers_Projection_1D2D::Compute(), StdMeshers_CompositeSegment_1D::Compute(), StdMeshers_Projection_3D::Compute(), StdMeshers_Import_1D2D::Compute(), StdMeshers_Import_1D::Compute(), StdMeshers_RadialPrism_3D::Compute(), StdMeshers_Regular_1D::Compute(), StdMeshers_Prism_3D::compute(), StdMeshers_Quadrangle_2D::computeQuadDominant(), StdMeshers_Quadrangle_2D::computeQuadPref(), StdMeshers_Quadrangle_2D::computeReduced(), StdMeshers_Prism_3D::computeWalls(), SMESH_Pattern::createElements(), SMESH_subMesh::CreateSubMeshDS(), VISCOUS_3D::_ViscousBuilder::findCollisionEdges(), VISCOUS_2D::_ViscousBuilder2D::findEdgesWithLayers(), VISCOUS_3D::_ViscousBuilder::findFacesWithLayers(), StdMeshers_ProjectionUtils::FindMatchingNodesOnFaces(), SMESH_MeshEditor::FindShape(), VISCOUS_3D::_ViscousBuilder::findShapesToSmooth(), VISCOUS_3D::_ViscousBuilder::findSolidsWithLayers(), SMESH_MesherHelper::GetCentralNode(), VISCOUS_3D::getConcaveVertices(), StdMeshers_Quadrangle_2D::getCorners(), VISCOUS_2D::getEdgesToIgnore(), SMESH_MesherHelper::getFaceMaxTol(), VISCOUS_3D::_ViscousBuilder::getFaceNormal(), VISCOUS_3D::_ViscousBuilder::getIgnoreFaces(), SMESH_MesherHelper::getMediumNodeOnComposedWire(), SMESH_MesherHelper::GetMediumPos(), SMESH_Gen_i::GetMeshOrSubmeshByShape(), SMESH_MesherHelper::GetNodeU(), SMESH_MesherHelper::GetProjector(), VISCOUS_3D::_SolidData::GetShapeEdges(), StdMeshers_ImportSource1D::GetSourceSubMeshes(), getSubmesh(), StdMeshers_PrismAsBlock::Init(), SMESH::Controls::BelongToGeom::init(), SMESH::Controls::LyingOnGeom::init(), SMESH_MesherHelper::IsReversedSubMesh(), StdMeshers_Penta_3D::MakeNodes(), StdMeshers_Penta_3D::MakeVolumeMesh(), MeshElements(), VISCOUS_3D::_ViscousBuilder::prepareEdgeToShrink(), StdMeshers_Prism_3D::projectBottomToTop(), VISCOUS_2D::_ViscousBuilder2D::refine(), VISCOUS_3D::_ViscousBuilder::refine(), VISCOUS_3D::_ViscousBuilder::setShapeData(), SMESH_MesherHelper::SetSubShape(), SMESH_ProxyMesh::shapeIndex(), SMESH_MesherHelper::ShapeToIndex(), VISCOUS_2D::_ViscousBuilder2D::shrink(), VISCOUS_3D::_ViscousBuilder::shrink(), StdMeshers_FaceSide::StdMeshers_FaceSide(), StdMeshers_PrismAsBlock::TSideFace::TSideFace(), VISCOUS_3D::_ViscousBuilder::updateNormalsOfConvexFaces(), and StdMeshers_PrismAsBlock::TSideFace::Value().

TopoDS_Shape SMESHDS_Mesh::ShapeToMesh ( ) const

References myShape.

Referenced by SMESH_MeshPartDS::SMESH_MeshPartDS().

list< int > SMESHDS_Mesh::SubMeshIndices ( ) const
void SMESHDS_Mesh::UnSetMeshElementOnShape ( const SMDS_MeshElement anElt,
const TopoDS_Shape &  S 
)
void SMESHDS_Mesh::UnSetNodeOnShape ( const SMDS_MeshNode aNode)
SMDS_VolumeIteratorPtr SMDS_Mesh::volumesIterator ( bool  idInceasingOrder = false) const
virtualinherited

Field Documentation

vector< SMDS_Mesh * > SMDS_Mesh::_meshList = vector<SMDS_Mesh*>()
staticinherited

to retrieve this SMDS_Mesh instance from its elements (index stored in SMDS_Elements)

Referenced by SMDS_MeshNode::AddInverseElement(), SMDS_VtkFace::ChangeApex(), SMDS_BallElement::ChangeNode(), SMDS_Mesh0DElement::ChangeNodes(), SMDS_VtkFace::ChangeNodes(), SMDS_VtkVolume::ChangeNodes(), SMDS_VtkEdge::ChangeNodes(), SMDS_MeshNode::ClearInverseElements(), SMDS_VtkEdge::elementsIterator(), SMDS_BallElement::elementsIterator(), SMDS_VtkFace::elementsIterator(), SMDS_VtkVolume::elementsIterator(), SMDS_MeshNode::getCoord(), SMDS_BallElement::GetDiameter(), SMDS_VtkFace::GetEntityType(), SMDS_VtkVolume::GetEntityType(), SMDS_VtkVolume::GetFaceNode(), SMDS_VtkFace::GetGeomType(), SMDS_VtkVolume::GetGeomType(), SMDS_MeshNode::GetInverseElementIterator(), SMDS_VtkFace::GetNode(), SMDS_VtkEdge::GetNode(), SMDS_BallElement::GetNode(), SMDS_VtkVolume::GetNode(), SMDS_VtkFace::GetNodeIndex(), SMDS_VtkVolume::GetNodeIndex(), SMDS_VtkVolume::GetQuantities(), SMESH::Controls::AspectRatio::GetValue(), SMESH::Controls::AspectRatio3D::GetValue(), SMDS_VtkFace::GetVtkType(), SMDS_VtkVolume::GetVtkType(), SMDS_MeshNode::GetXYZ(), SMDS_MeshNode::init(), SMDS_VtkVolume::interlacedNodesIterator(), SMDS_VtkEdge::IsMediumNode(), SMDS_VtkFace::IsMediumNode(), SMDS_VtkVolume::IsMediumNode(), SMDS_VtkFace::IsPoly(), SMDS_VtkVolume::IsPoly(), SMDS_VtkFace::IsQuadratic(), SMDS_VtkVolume::IsQuadratic(), SMDS_VtkFace::NbCornerNodes(), SMDS_VtkVolume::NbCornerNodes(), SMDS_VtkFace::NbEdges(), SMDS_VtkVolume::NbEdges(), SMDS_VtkVolume::NbFaceNodes(), SMDS_VtkVolume::NbFaces(), SMDS_MeshNode::NbInverseElements(), SMDS_VtkVolume::NbNodes(), SMDS_VtkFace::NbNodes(), SMDS_VtkEdge::NbNodes(), SMDS_VtkVolume::NbUniqueNodes(), SMDS_VtkEdge::nodesIteratorToUNV(), SMDS_VtkFace::nodesIteratorToUNV(), SMDS_VtkVolume::nodesIteratorToUNV(), SMDS_MeshNode::RemoveInverseElement(), SMDS_BallElement::SetDiameter(), SMDS_MeshNode::setXYZ(), SMDS_BallElement::SMDS_BallElement(), SMDS_Mesh::SMDS_Mesh(), SMESH_Gen::SMESH_Gen(), SMDS_VtkVolume::uniqueNodesIterator(), and SMDS_VtkVolume::vtkOrder().

std::vector<int> SMDS_Mesh::myCellIdVtkToSmds
protectedinherited
std::list<SMDS_Mesh *> SMDS_Mesh::myChildren
protectedinherited
unsigned long SMDS_Mesh::myCompactTime
protectedinherited
TGroups SMESHDS_Mesh::myGroups
private
bool SMDS_Mesh::myHasConstructionEdges
protectedinherited
bool SMDS_Mesh::myHasConstructionFaces
protectedinherited
bool SMDS_Mesh::myHasInverseElements
protectedinherited
TopTools_IndexedMapOfShape SMESHDS_Mesh::myIndexToShape
private
bool SMESHDS_Mesh::myIsEmbeddedMode
private

Referenced by IsEmbeddedMode().

int SMESHDS_Mesh::myMeshID
private
int SMDS_Mesh::myMeshId
protectedinherited

index of this SMDS_mesh in the static vector<SMDS_Mesh*> _meshList

Referenced by SMDS_Mesh::AddNodeWithID(), SMDS_Mesh::registerElement(), and SMDS_Mesh::SMDS_Mesh().

bool SMDS_Mesh::myModified
protectedinherited

any add, remove or change of node or cell

Referenced by SMDS_Mesh::AddNodeWithID(), SMDS_Mesh::Clear(), and SMDS_Mesh::Modified().

unsigned long SMDS_Mesh::myModifTime
protectedinherited

use a counter to keep track of modifications

Referenced by SMDS_Mesh::Clear(), SMDS_Mesh::compactMesh(), SMDS_Mesh::GetMTime(), SMDS_Mesh::isCompacted(), and SMDS_Mesh::Modified().

ObjectPool<SMDS_MeshNode>* SMDS_Mesh::myNodePool
protectedinherited
SMDS_Mesh* SMDS_Mesh::myParent
protectedinherited
int SMESHDS_Mesh::myPersistentID
private

Referenced by GetPersistentId(), and SetPersistentId().

TopoDS_Shape SMESHDS_Mesh::myShape
private

Referenced by AddCompoundSubmesh(), and ShapeToMesh().

ShapeToHypothesis SMESHDS_Mesh::myShapeToHypothesis
private
double SMDS_Mesh::xmax
protectedinherited
double SMDS_Mesh::xmin
protectedinherited
double SMDS_Mesh::ymax
protectedinherited
double SMDS_Mesh::ymin
protectedinherited
double SMDS_Mesh::zmax
protectedinherited
double SMDS_Mesh::zmin
protectedinherited