]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
SALOME_TESTS/Grids/smesh/2D_mesh_QuadranglePreference_00/A1
authoreap <eap@opencascade.com>
Tue, 29 Apr 2014 16:33:11 +0000 (20:33 +0400)
committereap <eap@opencascade.com>
Tue, 29 Apr 2014 16:33:11 +0000 (20:33 +0400)
 Fix for degenerated EDGEs

src/StdMeshers/StdMeshers_Quadrangle_2D.cxx

index f6a7e237902befa95e4973a661d37600a49697e6..1aee3df7e516f383ec69ac455b5557162d4ef3f6 100644 (file)
@@ -1138,14 +1138,25 @@ FaceQuadStruct::Ptr StdMeshers_Quadrangle_2D::CheckNbEdges(SMESH_Mesh &
       do
       {
         const TopoDS_Edge& edge = *edgeIt;
-        if ( SMESH_Algo::isDegenerated( edge ) && myNeedSmooth )
+        nextSideVReached = nextSideV.IsSame( myHelper->IthVertex( 1, edge ));
+        if ( SMESH_Algo::isDegenerated( edge ))
         {
-          // no side on a degenerated EDGE
+          if ( !myNeedSmooth ) // need to make a side on a degen edge
+          {
+            if ( sideEdges.empty() )
+            {
+              sideEdges.push_back( edge );
+              ++nbUsedDegen;
+            }
+            else
+            {
+              break;
+            }
+          }
         }
         else
         {
           sideEdges.push_back( edge );
-          nextSideVReached = nextSideV.IsSame( myHelper->IthVertex( 1, edge ));
         }
         ++edgeIt;
       }