Salome HOME
typo-fix by Kunda
[modules/smesh.git] / src / StdMeshers / StdMeshers_Cartesian_3D.cxx
index adbeb5021b88d5a77407593c25436a747905f983..62e590b62e4293f6ba6a621be5db9fb3a33b2b05 100644 (file)
@@ -25,6 +25,7 @@
 #include "StdMeshers_Cartesian_3D.hxx"
 
 #include "SMDS_MeshNode.hxx"
+#include "SMESHDS_Mesh.hxx"
 #include "SMESH_Block.hxx"
 #include "SMESH_Comment.hxx"
 #include "SMESH_Mesh.hxx"
@@ -35,7 +36,6 @@
 
 #include <utilities.h>
 #include <Utils_ExceptHandlers.hxx>
-#include <Basics_OCCTVersion.hxx>
 
 #include <GEOMUtils.hxx>
 
@@ -73,6 +73,7 @@
 #include <TopExp.hxx>
 #include <TopExp_Explorer.hxx>
 #include <TopLoc_Location.hxx>
+#include <TopTools_IndexedMapOfShape.hxx>
 #include <TopTools_MapOfShape.hxx>
 #include <TopoDS.hxx>
 #include <TopoDS_Compound.hxx>
@@ -1369,7 +1370,7 @@ namespace
     }
     if ( surf->IsKind( STANDARD_TYPE(Geom_BSplineSurface )) ||
          surf->IsKind( STANDARD_TYPE(Geom_BezierSurface )))
-      if ( !noSafeTShapes.insert((const Standard_Transient*) _face.TShape() ).second )
+      if ( !noSafeTShapes.insert( _face.TShape().get() ).second )
         isSafe = false;
 
     double f, l;
@@ -1409,7 +1410,7 @@ namespace
             edgeIsSafe = false;
         }
       }
-      if ( !edgeIsSafe && !noSafeTShapes.insert((const Standard_Transient*) e.TShape() ).second )
+      if ( !edgeIsSafe && !noSafeTShapes.insert( e.TShape().get() ).second )
         isSafe = false;
     }
     return isSafe;
@@ -2459,7 +2460,7 @@ namespace
       ip._faceIDs = e2fIt->second;
       ip._shapeID = edgeID;
 
-      // discretize the EGDE
+      // discretize the EDGE
       GCPnts_UniformDeflection discret( curve, deflection, true );
       if ( !discret.IsDone() || discret.NbPoints() < 2 )
         continue;
@@ -2914,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 )
@@ -3046,9 +3047,9 @@ 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];
+    //TGeomID orderShapeIDs[20];
     size_t nbN = 0;
     TGeomID id, *pID = 0;
     for ( e = edges.begin(); e != edges.end(); ++e )
@@ -3056,14 +3057,14 @@ namespace
       if (( id = _grid->_shapes.FindIndex( SMESH_MesherHelper::IthVertex( 0, *e ))) &&
           (( pID = std::find( &nShapeIds[0], nShapeIdsEnd, id )) != nShapeIdsEnd ))
       {
-        orderShapeIDs[ nbN ] = id;
+        //orderShapeIDs[ nbN ] = id;
         orderNodes   [ nbN++ ] = nodes[ pID - &nShapeIds[0] ];
         *pID = -1;
       }
       if (( id = _grid->_shapes.FindIndex( *e )) &&
           (( pID = std::find( &nShapeIds[0], nShapeIdsEnd, id )) != nShapeIdsEnd ))
       {
-        orderShapeIDs[ nbN ] = id;
+        //orderShapeIDs[ nbN ] = id;
         orderNodes   [ nbN++ ] = nodes[ pID - &nShapeIds[0] ];
         *pID = -1;
       }
@@ -3157,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 );
@@ -3387,7 +3388,7 @@ namespace
   }
   //================================================================================
   /*!
-   * \brief Classify a point by grid paremeters
+   * \brief Classify a point by grid parameters
    */
   bool Hexahedron::isOutParam(const double uvw[3]) const
   {
@@ -3587,7 +3588,7 @@ bool StdMeshers_Cartesian_3D::Compute(SMESH_Mesh &         theMesh,
       facesItersectors[i].Intersect();
 #endif
 
-    // put interesection points onto the GridLine's; this is done after intersection
+    // put intersection points onto the GridLine's; this is done after intersection
     // to avoid contention of facesItersectors for writing into the same GridLine
     // in case of parallel work of facesItersectors
     for ( size_t i = 0; i < facesItersectors.size(); ++i )