]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
New methods for SMDS_Mesh
authorasl <asl@opencascade.com>
Mon, 4 Jul 2005 10:28:51 +0000 (10:28 +0000)
committerasl <asl@opencascade.com>
Mon, 4 Jul 2005 10:28:51 +0000 (10:28 +0000)
GetElementType - returns element type by id

src/SMDS/SMDS_Mesh.cxx
src/SMDS/SMDS_Mesh.hxx

index 0058da87809121f013470ed8cc9ec0f88e86e49c..c883bbe627166ac91fc464d0ecd2a40a42a44b19 100644 (file)
@@ -2179,3 +2179,25 @@ void SMDS_Mesh::Renumber (const bool isNodes, const int  startID, const int  del
     ID += deltaID;
   }
 }
+
+//=======================================================================
+//function : GetElementType
+//purpose  : Return type of element or node with id
+//=======================================================================
+
+SMDSAbs_ElementType SMDS_Mesh::GetElementType( const int id, const bool iselem ) const
+{
+  SMDS_MeshElement* elem = 0;
+  if( iselem )
+    elem = myElementIDFactory->MeshElement( id );
+  else
+    elem = myNodeIDFactory->MeshElement( id );
+
+  if( !elem )
+  {
+    //throw SALOME_Exception(LOCALIZED ("this element isn't exist"));
+    return SMDSAbs_All;
+  }
+  else
+    return elem->GetType();
+}
index 9d59a3ddff3c0360510ef3651b5504dfd847e34d..acdd19170401850b237e2e6f0f837d1cca98fdc2 100644 (file)
@@ -59,6 +59,8 @@ public:
   SMDS_VolumeIteratorPtr volumesIterator() const;
   SMDS_ElemIteratorPtr elementsIterator() const;  
 
+  SMDSAbs_ElementType GetElementType( const int id, const bool iselem ) const;
+  
   SMDS_Mesh *AddSubMesh();
   
   virtual SMDS_MeshNode* AddNodeWithID(double x, double y, double z, int ID);