]> SALOME platform Git repositories - modules/smesh.git/commitdiff
Salome HOME
+ // double delta = d1*d2*1e-6; PAL17233
authoreap <eap@opencascade.com>
Thu, 11 Oct 2007 12:43:05 +0000 (12:43 +0000)
committereap <eap@opencascade.com>
Thu, 11 Oct 2007 12:43:05 +0000 (12:43 +0000)
+  double delta = min( d1, d2 ) / 10.;

src/SMESH/SMESH_Pattern.cxx

index 5054f554906674af055a3c2f6f5684437ef018bf..cfc66f3488103f4bd1d10999d872546ee7874ac7 100644 (file)
 #include <GeomAdaptor_Surface.hxx>
 #include <Geom_Curve.hxx>
 #include <Geom_Surface.hxx>
-#include <IntAna2d_AnaIntersection.hxx>
+//#include <IntAna2d_AnaIntersection.hxx>
 #include <TopAbs_ShapeEnum.hxx>
 #include <TopExp.hxx>
+#include <TopExp_Explorer.hxx>
 #include <TopLoc_Location.hxx>
+#include <TopTools_ListIteratorOfListOfShape.hxx>
 #include <TopoDS.hxx>
 #include <TopoDS_Edge.hxx>
 #include <TopoDS_Face.hxx>
@@ -47,7 +49,6 @@
 #include <TopoDS_Shell.hxx>
 #include <TopoDS_Vertex.hxx>
 #include <TopoDS_Wire.hxx>
-#include <TopTools_ListIteratorOfListOfShape.hxx>
 #include <gp_Ax2.hxx>
 #include <gp_Lin2d.hxx>
 #include <gp_Pnt2d.hxx>
@@ -966,8 +967,9 @@ static bool intersectIsolines(const gp_XY& uv11, const gp_XY& uv12, const double
   // SKL 26.07.2007 for NPAL16567
   double d1 = (uv11-uv12).Modulus();
   double d2 = (uv21-uv22).Modulus();
-  double delta = d1*d2*1e-6;
-  isDeformed = ( loc1 - loc2 ).SquareModulus() > delta;
+  // double delta = d1*d2*1e-6; PAL17233
+  double delta = min( d1, d2 ) / 10.;
+  isDeformed = ( loc1 - loc2 ).SquareModulus() > delta * delta;
 
 //   double len1 = ( uv11 - uv12 ).Modulus();
 //   double len2 = ( uv21 - uv22 ).Modulus();
@@ -991,6 +993,10 @@ static bool intersectIsolines(const gp_XY& uv11, const gp_XY& uv12, const double
   
 //   resUV /= 2.;
 //     }
+  if ( isDeformed ) {
+    MESSAGE("intersectIsolines(), d1 = " << d1 << ", d2 = " << d2 << ", delta = " << delta <<
+            ", " << (loc1 - loc2).SquareModulus() << " > " << delta * delta);
+  }
   return true;
 }