From: skv Date: Thu, 4 Feb 2016 13:29:39 +0000 (+0300) Subject: 0052840: Fuse fails if "Remove extra edges" is ON X-Git-Tag: V8_0_0rc1~1^2~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=e087bbd0639cc0e9ffd05416387007385187bcdd;p=modules%2Fgeom.git 0052840: Fuse fails if "Remove extra edges" is ON --- diff --git a/src/GEOMImpl/GEOMImpl_PipeDriver.cxx b/src/GEOMImpl/GEOMImpl_PipeDriver.cxx index ef5b07e79..039bf0027 100644 --- a/src/GEOMImpl/GEOMImpl_PipeDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_PipeDriver.cxx @@ -180,6 +180,8 @@ static GeomFill_Trihedron EvaluateBestSweepMode(const TopoDS_Shape& Spine) //======================================================================= static Standard_Boolean BuildPipeShell(BRepOffsetAPI_MakePipeShell &theBuilder) { + theBuilder.SetForceApproxC1(Standard_True); + theBuilder.Build(); Standard_Boolean isDone = theBuilder.IsDone(); @@ -3125,7 +3127,8 @@ Standard_Integer GEOMImpl_PipeDriver::Execute (TFunction_Logbook& log) const else { GeomFill_Trihedron theBestMode = EvaluateBestSweepMode(aWirePath); - BRepOffsetAPI_MakePipe aMkPipe(aWirePath, aShapeBase, theBestMode); + BRepOffsetAPI_MakePipe aMkPipe + (aWirePath, aShapeBase, theBestMode, Standard_True); if (aMkPipe.IsDone() && aMkPipe.ErrorOnSurface() <= TolPipeSurf) { aShape = aMkPipe.Shape(); @@ -3137,7 +3140,7 @@ Standard_Integer GEOMImpl_PipeDriver::Execute (TFunction_Logbook& log) const } else if (theBestMode != GeomFill_IsDiscreteTrihedron) { // Try to use Descrete Trihedron mode. BRepOffsetAPI_MakePipe aMkPipeDescrete - (aWirePath, aShapeBase, GeomFill_IsDiscreteTrihedron); + (aWirePath, aShapeBase, GeomFill_IsDiscreteTrihedron, Standard_True); if (aMkPipeDescrete.IsDone()) { aShape = aMkPipeDescrete.Shape();