Salome HOME
23514: EDF 16031 - SMESH freezes
[modules/smesh.git] / src / StdMeshers / StdMeshers_Cartesian_3D.cxx
index 70fe2368d063191ccee137a29eb00ae13086bdc2..002f209619b9847b091359a6cedebcc15757e721 100644 (file)
@@ -36,7 +36,6 @@
 
 #include <utilities.h>
 #include <Utils_ExceptHandlers.hxx>
-#include <Basics_OCCTVersion.hxx>
 
 #include <GEOMUtils.hxx>
 
@@ -1371,11 +1370,7 @@ namespace
     }
     if ( surf->IsKind( STANDARD_TYPE(Geom_BSplineSurface )) ||
          surf->IsKind( STANDARD_TYPE(Geom_BezierSurface )))
-#if OCC_VERSION_MAJOR < 7
-      if ( !noSafeTShapes.insert((const Standard_Transient*) _face.TShape() ).second )
-#else
       if ( !noSafeTShapes.insert( _face.TShape().get() ).second )
-#endif
         isSafe = false;
 
     double f, l;
@@ -1415,11 +1410,7 @@ namespace
             edgeIsSafe = false;
         }
       }
-#if OCC_VERSION_MAJOR < 7
-      if ( !edgeIsSafe && !noSafeTShapes.insert((const Standard_Transient*) e.TShape() ).second )
-#else
       if ( !edgeIsSafe && !noSafeTShapes.insert( e.TShape().get() ).second )
-#endif
         isSafe = false;
     }
     return isSafe;
@@ -2924,7 +2915,7 @@ namespace
       proj.Perform( testPnt );
       if ( proj.IsDone() && proj.NbPoints() > 0 )       
       {
-        Quantity_Parameter u,v;
+        Standard_Real u,v;
         proj.LowerDistanceParameters( u,v );
 
         if ( proj.LowerDistance() <= 0.1 * _grid->_tol )
@@ -3056,7 +3047,7 @@ namespace
     else if ( eMidOut != edges.end() )
       edges.splice( edges.end(), edges, edges.begin(), eMidOut );
 
-    // sort nodes accoring to the order of edges
+    // sort nodes according to the order of edges
     _Node*  orderNodes   [20];
     //TGeomID orderShapeIDs[20];
     size_t nbN = 0;
@@ -3167,7 +3158,7 @@ namespace
         const F_IntersectPoint* firstIntPnt = 0;
         if ( link._nodes[0]->Node() ) // 1st node is a hexa corner
         {
-          curIntPnt._paramOnLine = coords[ ijk[ iDir ]] - coords[0];
+          curIntPnt._paramOnLine = coords[ ijk[ iDir ]] - coords[0] + _grid->_tol;
           const GridLine& line = _grid->_lines[ iDir ][ lineIndex[ iL ]];
           multiset< F_IntersectPoint >::const_iterator ip =
             line._intPoints.upper_bound( curIntPnt );