Salome HOME
Fix "restrict size of elements near the segment"
authoreap <eap@opencascade.com>
Wed, 11 Dec 2013 13:17:21 +0000 (13:17 +0000)
committereap <eap@opencascade.com>
Wed, 11 Dec 2013 13:17:21 +0000 (13:17 +0000)
src/NETGENPlugin/NETGENPlugin_Mesher.cxx

index c90ac17fed37a8b71754b27fe7f09bc2ffc190cd..8587523843169e20778eee874950710a46fbe8b1 100644 (file)
@@ -1668,12 +1668,11 @@ NETGENPlugin_Mesher::AddSegmentsToMesh(netgen::Mesh&                    ngMesh,
         int   iPrev = SMESH_MesherHelper::WrapIndex( i-1, nbSegments );
         int   iNext = SMESH_MesherHelper::WrapIndex( i+1, nbSegments );
         double sunH = segLen[ iPrev ] + segLen[ i ] + segLen[ iNext ];
-        int   nbSeg = ( segLen[ iPrev ] > sunH / 100.  +
-                        segLen[ i     ] > sunH / 100.  +
-                        segLen[ iNext ] > sunH / 100.);
-        double avgH = sunH / nbSeg;
-
-        RestrictLocalSize( ngMesh, 0.5*(np1+np2), avgH );
+        int   nbSeg = ( int( segLen[ iPrev ] > sunH / 100.)  +
+                        int( segLen[ i     ] > sunH / 100.)  +
+                        int( segLen[ iNext ] > sunH / 100.));
+        if ( nbSeg > 0 )
+          RestrictLocalSize( ngMesh, 0.5*(np1+np2), sunH / nbSeg );
       }
       if ( isInternalWire )
       {