Salome HOME
0022100: EDF 2413 SMESH: Take into account TRIA7
authoreap <eap@opencascade.com>
Thu, 16 May 2013 16:49:03 +0000 (16:49 +0000)
committereap <eap@opencascade.com>
Thu, 16 May 2013 16:49:03 +0000 (16:49 +0000)
+  CORBA::Long NbBiQuadTriangles()

src/SMESH_I/SMESH_Mesh_i.cxx
src/SMESH_I/SMESH_Mesh_i.hxx

index e68c560426fdeb4cbcc72655699b2f1638654dec..4c48e31e1ca62e41855435d0661bb3ba5015ba08 100644 (file)
@@ -3088,6 +3088,15 @@ CORBA::Long SMESH_Mesh_i::NbTriangles()throw(SALOME::SALOME_Exception)
   return _impl->NbTriangles();
 }
 
   return _impl->NbTriangles();
 }
 
+CORBA::Long SMESH_Mesh_i::NbBiQuadTriangles()throw(SALOME::SALOME_Exception)
+{
+  Unexpect aCatch(SALOME_SalomeException);
+  if ( _preMeshInfo )
+    return _preMeshInfo->NbBiQuadTriangles();
+
+  return _impl->NbBiQuadTriangles();
+}
+
 CORBA::Long SMESH_Mesh_i::NbQuadrangles()throw(SALOME::SALOME_Exception)
 {
   Unexpect aCatch(SALOME_SalomeException);
 CORBA::Long SMESH_Mesh_i::NbQuadrangles()throw(SALOME::SALOME_Exception)
 {
   Unexpect aCatch(SALOME_SalomeException);
@@ -4021,7 +4030,7 @@ CORBA::Long SMESH_Mesh_i::FindElementByNodes(const SMESH::long_array& nodes)
       if ( !( nn[i] = mesh->FindNode( nodes[i] )))
         return elemID;
 
       if ( !( nn[i] = mesh->FindNode( nodes[i] )))
         return elemID;
 
-    const SMDS_MeshElement* elem = mesh->FindElement( nn );
+    const SMDS_MeshElement* elem = mesh->FindElement( nn, SMDSAbs_All, /*noMedium=*/false );
     if ( !elem && ( _impl->NbEdges  ( ORDER_QUADRATIC ) ||
                     _impl->NbFaces  ( ORDER_QUADRATIC ) ||
                     _impl->NbVolumes( ORDER_QUADRATIC )))
     if ( !elem && ( _impl->NbEdges  ( ORDER_QUADRATIC ) ||
                     _impl->NbFaces  ( ORDER_QUADRATIC ) ||
                     _impl->NbVolumes( ORDER_QUADRATIC )))
index 3d4ca13773e0670a02ee0caf18c815d59244cee5..6bb0a59b488d00dc2548c80644eb35e88b74821f 100644 (file)
@@ -294,6 +294,9 @@ public:
   CORBA::Long NbTrianglesOfOrder(SMESH::ElementOrder order)
     throw (SALOME::SALOME_Exception);
 
   CORBA::Long NbTrianglesOfOrder(SMESH::ElementOrder order)
     throw (SALOME::SALOME_Exception);
 
+  CORBA::Long NbBiQuadTriangles()
+    throw (SALOME::SALOME_Exception);
+
   CORBA::Long NbQuadrangles()
     throw (SALOME::SALOME_Exception);
 
   CORBA::Long NbQuadrangles()
     throw (SALOME::SALOME_Exception);