From e087bbd0639cc0e9ffd05416387007385187bcdd Mon Sep 17 00:00:00 2001 From: skv Date: Thu, 4 Feb 2016 16:29:39 +0300 Subject: [PATCH] 0052840: Fuse fails if "Remove extra edges" is ON --- src/GEOMImpl/GEOMImpl_PipeDriver.cxx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) 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();