From: vsr Date: Wed, 29 Jun 2011 13:03:38 +0000 (+0000) Subject: Return back workaround for embedded compounds since the OCCT patch does not work... X-Git-Tag: V6_3_1~1 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=055a706162aded7e694a5942d98162f50d230084;p=modules%2Fgeom.git Return back workaround for embedded compounds since the OCCT patch does not work in all cases (e.g. it fails when exporting / importing single edge). --- diff --git a/src/STEPImport/STEPImport.cxx b/src/STEPImport/STEPImport.cxx index 037339e1d..22f0dee18 100644 --- a/src/STEPImport/STEPImport.cxx +++ b/src/STEPImport/STEPImport.cxx @@ -131,6 +131,21 @@ extern "C" /* For a single entity */ else if (nbr == 1 && nbs == 1) { aResShape = aReader.Shape(1); + // ATTENTION: this is a workaround for mantis issue 0020442 remark 0010776 + // It should be removed after patching OCCT for bug OCC22436 + // (fix for OCCT is expected in service pack next to OCCT6.3sp12) + if (aResShape.ShapeType() == TopAbs_COMPOUND) { + int nbSub1 = 0; + TopoDS_Shape currShape; + TopoDS_Iterator It (aResShape, Standard_True, Standard_True); + for (; It.More(); It.Next()) { + nbSub1++; + currShape = It.Value(); + } + if (nbSub1 == 1) + aResShape = currShape; + } + // END workaround break; }