From f7cfe54fae65e3e99118ade7d9b3a8612dd5dea4 Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 24 Aug 2013 07:26:31 +0200 Subject: [PATCH] Fix refinement algorithm to avoid the loose the solid --- src/Mod/Part/App/TopoShape.cpp | 3 +++ src/Mod/Part/App/modelRefine.cpp | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/Mod/Part/App/TopoShape.cpp b/src/Mod/Part/App/TopoShape.cpp index 349fd81db..1afbad292 100644 --- a/src/Mod/Part/App/TopoShape.cpp +++ b/src/Mod/Part/App/TopoShape.cpp @@ -1980,6 +1980,9 @@ TopoDS_Shape TopoShape::removeSplitter() const const TopoDS_Shell &newShell = uniter.getShell(); mkSolid.Add(newShell); } + else { + mkSolid.Add(currentShell); + } } else { Standard_Failure::Raise("Removing splitter failed"); diff --git a/src/Mod/Part/App/modelRefine.cpp b/src/Mod/Part/App/modelRefine.cpp index c459defa2..851b21194 100644 --- a/src/Mod/Part/App/modelRefine.cpp +++ b/src/Mod/Part/App/modelRefine.cpp @@ -710,6 +710,9 @@ void Part::BRepBuilderAPI_RefineModel::Build() mkSolid.Add(newShell); LogModifications(uniter); } + else { + mkSolid.Add(currentShell); + } } else { Standard_Failure::Raise("Removing splitter failed");