]> OCCT Git - occt.git/commitdiff
Fix of regression in Extrema, improvement in 3D offset.
authorjgv <jgv@opencascade.com>
Wed, 14 Oct 2020 08:54:11 +0000 (11:54 +0300)
committermgn <maxim.glibin@opencascade.com>
Thu, 25 Feb 2021 12:20:48 +0000 (15:20 +0300)
src/BRepOffset/BRepOffset_Tool.cxx

index af3ac106e167098d458c99a4494459bff526dd21..fb324f8e1094d9ea765da08a5ed9bb65e3d2c492 100644 (file)
@@ -3115,12 +3115,23 @@ Standard_Boolean BRepOffset_Tool::EnLargeFace
   }
   else
   {
-    Standard_Real FaceDU = UF2 - UF1;
-    Standard_Real FaceDV = VF2 - VF1;
-    UU1 = UF1 - 10*FaceDU;
-    UU2 = UF2 + 10*FaceDU;
-    VV1 = VF1 - 10*FaceDV;
-    VV2 = VF2 + 10*FaceDV;
+    if (theExtensionMode == 2)
+    {
+      Standard_Real FaceDU = UF2 - UF1;
+      Standard_Real FaceDV = VF2 - VF1;
+      UU1 = UF1 - 10*FaceDU;
+      UU2 = UF2 + 10*FaceDU;
+      VV1 = VF1 - 10*FaceDV;
+      VV2 = VF2 + 10*FaceDV;
+    }
+    else
+    {
+      Standard_Real aSize = theLenBeforeUfirst;
+      UU1 = UF1 - aSize;
+      UU2 = UF2 + aSize;
+      VV1 = VF1 - aSize;
+      VV2 = VF2 + aSize;
+    }
     coeff = 1.;
   }