]> SALOME platform Git repositories - plugins/blsurfplugin.git/commitdiff
Salome HOME
0021818: [CEA 645] Error when using Use Internal Vertices
authoreap <eap@opencascade.com>
Tue, 28 Aug 2012 15:09:11 +0000 (15:09 +0000)
committereap <eap@opencascade.com>
Tue, 28 Aug 2012 15:09:11 +0000 (15:09 +0000)
make enforced only INTERNAL vertices

+          if ( exp_face.Current().Orientation() != TopAbs_INTERNAL &&
+               SMESH_MesherHelper::GetAncestors( exp_face.Current(), mesh, TopAbs_EDGE )->more())
+            continue;

src/BLSURFPlugin/BLSURFPlugin_BLSURF.cxx

index 732760beba56834e33220c89ea19588bd8869579..28a1172961cb00f223b6ecdf9f2a33000925c917 100644 (file)
@@ -1028,11 +1028,13 @@ void BLSURFPlugin_BLSURF::SetParameters(
         TopExp_Explorer exp_face (exp.Current(), TopAbs_VERTEX);
         for (; exp_face.More(); exp_face.Next())
         {
+          // check if a vertex is internal
+          if ( exp_face.Current().Orientation() != TopAbs_INTERNAL &&
+               SMESH_MesherHelper::GetAncestors( exp_face.Current(), mesh, TopAbs_EDGE )->more())
+            continue;
           // Get coords of vertex
           // Check if current coords is already in enfVertexList
           // If coords not in enfVertexList, add new enfVertex
-          if ( exp_face.Current().Orientation() != TopAbs_INTERNAL )
-            continue;
           aPnt = BRep_Tool::Pnt(TopoDS::Vertex(exp_face.Current()));
           MESSAGE("Found vertex on face at " << aPnt.X() <<", "<<aPnt.Y()<<", "<<aPnt.Z());
           BLSURFPlugin_Hypothesis::TEnfVertex* enfVertex = new BLSURFPlugin_Hypothesis::TEnfVertex();