]> OCCT Git - occt-copy.git/commitdiff
0026644: ShapeUpgrade_UnifySameDomain - strange behavior
authorgka <gka@opencascade.com>
Fri, 11 Sep 2015 08:02:55 +0000 (11:02 +0300)
committerabv <abv@opencascade.com>
Fri, 11 Sep 2015 12:21:41 +0000 (15:21 +0300)
Modification to keep connectivity for non--manifold shapes during operation ShapeUpgrade_UnifySameDomain

src/ShapeUpgrade/ShapeUpgrade_UnifySameDomain.cxx

index 75f63992af3ebb48d7b3138a37c0617ad61e9eaf..b2f5f77b107f1f0d807b8975e26d0b0e1775b54e 100644 (file)
@@ -786,18 +786,14 @@ void ShapeUpgrade_UnifySameDomain::Initialize(const TopoDS_Shape& aShape,
 
 void ShapeUpgrade_UnifySameDomain::UnifyFaces()
 {
-  //Handle(ShapeBuild_ReShape) myContext = new ShapeBuild_ReShape;
-  TopoDS_Shape aResShape = myContext->Apply(myShape);
-
+  // creating map of edge faces
+  TopTools_IndexedDataMapOfShapeListOfShape aMapEdgeFaces;
+  TopExp::MapShapesAndAncestors(myShape, TopAbs_EDGE, TopAbs_FACE, aMapEdgeFaces);
   // processing each shell
   TopExp_Explorer exps;
   for (exps.Init(myShape, TopAbs_SHELL); exps.More(); exps.Next()) {
     TopoDS_Shell aShell = TopoDS::Shell(exps.Current());
-
-    // creating map of edge faces
-    TopTools_IndexedDataMapOfShapeListOfShape aMapEdgeFaces;
-    TopExp::MapShapesAndAncestors(aShell, TopAbs_EDGE, TopAbs_FACE, aMapEdgeFaces);
-
+    
     // map of processed shapes
     TopTools_MapOfShape aProcessed;