From c6dad398060d21161561f9c6fd152cd57d888000 Mon Sep 17 00:00:00 2001 From: jfa Date: Sat, 5 Mar 2022 10:34:20 +0300 Subject: [PATCH] [bos #29103] EDF 24802 - limitation of tolerance --- src/GEOMImpl/GEOMImpl_HealingDriver.cxx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx index 37ad79855..a360ae96d 100644 --- a/src/GEOMImpl/GEOMImpl_HealingDriver.cxx +++ b/src/GEOMImpl/GEOMImpl_HealingDriver.cxx @@ -44,6 +44,7 @@ #include #include +#include #include #include @@ -645,8 +646,14 @@ void GEOMImpl_HealingDriver::LimitTolerance (GEOMImpl_IHealing* theHI, // 1. Make a copy to prevent the original shape changes. TopoDS_Shape aShapeCopy; { - TColStd_IndexedDataMapOfTransientTransient aMapTShapes; - TNaming_CopyShape::CopyTool(theOriginalShape, aMapTShapes, aShapeCopy); + BRepBuilderAPI_Copy aMC (theOriginalShape); + if (aMC.IsDone()) { + aShapeCopy = aMC.Shape(); + } + else { + TColStd_IndexedDataMapOfTransientTransient aMapTShapes; + TNaming_CopyShape::CopyTool(theOriginalShape, aMapTShapes, aShapeCopy); + } } // 2. Limit tolerance. -- 2.39.2