Salome HOME
0021563: EDF GEOM: Extrusion with scale factor sometimes gives wrong shapes
authorskv <skv@opencascade.com>
Wed, 31 Jul 2013 12:54:30 +0000 (12:54 +0000)
committerskv <skv@opencascade.com>
Wed, 31 Jul 2013 12:54:30 +0000 (12:54 +0000)
src/GEOMImpl/GEOMImpl_PipeDriver.cxx

index de0958f1ff18b90b1643c93b8ba60778f6695682..2efea33f46564a4162e12d0c926f1304d3781a8b 100644 (file)
@@ -939,6 +939,9 @@ TopoDS_Shape GEOMImpl_PipeDriver::CreatePipeWithDifferentSections
         Standard_ConstructionError::Raise("Invalid sections were specified for building pipe");
       }
       Standard_Integer ind =0;
+      Standard_Real aTolConf = Precision::Confusion();
+      Standard_Real aTolAng  = Precision::Angular();
+
       for (i = 1; i <= nbShapes && ind < nbShapes; i++) { //i+nbBases <= nbShapes
         TopTools_SequenceOfShape usedBases;
         Standard_Integer j = 1;
@@ -957,6 +960,9 @@ TopoDS_Shape GEOMImpl_PipeDriver::CreatePipeWithDifferentSections
         if (!aBuilder.IsReady()) {
           Standard_ConstructionError::Raise("Invalid input data for building PIPE: bases are invalid");
         }
+      
+        aBuilder.SetTolerance(aTolConf, aTolConf, aTolAng);
+
         aBuilder.Build();
         aShape = aBuilder.Shape();
         aSeqFaces.Append(aShape);