0029691: Constructor of BRepFill_MultiLine adjusts V-parameter of sphere in the range...
authornbv <nbv@opencascade.com>
Thu, 12 Apr 2018 08:10:22 +0000 (11:10 +0300)
committerbugmaster <bugmaster@opencascade.com>
Thu, 14 Jun 2018 11:03:04 +0000 (14:03 +0300)
1. Sphere is not V-periodic surface. See the section "Periodicity concept" written in frame of the fix 0029115. Therefore, applying ElCLib::AdjustPeriodic(...) method is unreasonable.

2. Default U work range of sphere is 0 ... 2*PI. Therefore, adjusting U parameter in range -PI/2 ... +PI/2 is unreasonable.

src/BRepFill/BRepFill_MultiLine.cxx

index b51f7fe..da087a4 100644 (file)
@@ -227,16 +227,6 @@ BRepFill_MultiLine::BRepFill_MultiLine(const TopoDS_Face&     Face1,
       Precision::PConfusion(),
       Vmin, Vmax);
   }
-  if (GAS1.GetType() == GeomAbs_Sphere) {
-    if (myIsoU1)
-      ElCLib::AdjustPeriodic(-M_PI/2.,M_PI/2.,
-      Precision::PConfusion(),
-      Umin, Umax);
-    else
-      ElCLib::AdjustPeriodic(-M_PI/2.,M_PI/2.,
-      Precision::PConfusion(),
-      Vmin, Vmax);
-  }
   // end try duplication
 
   myU1 = Geom2dAdaptor_Curve(GeomProjLib::Curve2d(UU1, BasisPlane),
@@ -343,16 +333,6 @@ BRepFill_MultiLine::BRepFill_MultiLine(const TopoDS_Face&     Face1,
       Precision::PConfusion(),
       Vmin, Vmax);
   }
-  if (GAS2.GetType() == GeomAbs_Sphere) {
-    if (myIsoU2)
-      ElCLib::AdjustPeriodic(-M_PI/2.,M_PI/2.,
-      Precision::PConfusion(),
-      Umin, Umax);
-    else
-      ElCLib::AdjustPeriodic(-M_PI/2.,M_PI/2.,
-      Precision::PConfusion(),
-      Vmin, Vmax);
-  }
   // end try duplication
 
   myU2 = Geom2dAdaptor_Curve(GeomProjLib::Curve2d(UU2, BasisPlane),