]> SALOME platform Git repositories - modules/geom.git/commitdiff
Salome HOME
Mantis issue 0020706: EDF 1263 GEOM: Suppress faces does notremove faces and adds...
authorjfa <jfa@opencascade.com>
Tue, 23 Mar 2010 11:54:42 +0000 (11:54 +0000)
committerjfa <jfa@opencascade.com>
Tue, 23 Mar 2010 11:54:42 +0000 (11:54 +0000)
src/GEOMImpl/GEOMImpl_HealingDriver.cxx

index cc54d8189be20fcc7e8aff1bc6ea6db2e7c755ce..6dd8160f6a05037f83771cb5e899f15c7b106674 100644 (file)
@@ -26,6 +26,8 @@
 #include <GEOMImpl_IHealing.hxx>
 #include <GEOM_Function.hxx>
 
+#include <GEOMImpl_GlueDriver.hxx>
+
 #include <ShHealOper_ShapeProcess.hxx>
 #include <ShHealOper_RemoveFace.hxx>
 #include <ShHealOper_CloseContour.hxx>
@@ -42,6 +44,8 @@
 #include <TopoDS_Iterator.hxx>
 #include <TopTools_IndexedMapOfShape.hxx>
 
+#include <Precision.hxx>
+
 #include <StdFail_NotDone.hxx>
 
 //=======================================================================
@@ -261,6 +265,11 @@ Standard_Boolean GEOMImpl_HealingDriver::SuppressFaces (GEOMImpl_IHealing* theHI
       aShapesFaces.Append(aFace);
     }
     SuppressFacesRec(aShapesFaces, theOriginalShape, theOutShape);
+    if ((theOriginalShape.ShapeType() == TopAbs_COMPOUND ||
+         theOriginalShape.ShapeType() == TopAbs_COMPSOLID)) {
+      TopoDS_Shape aSh = theOutShape;
+      theOutShape = GEOMImpl_GlueDriver::GlueFaces(aSh, Precision::Confusion(), Standard_True);
+    }
   }
 
   return Standard_True;