From: jfa Date: Tue, 6 Oct 2020 12:46:44 +0000 (+0300) Subject: bos #20082: Set reverse edge in GeometricProgression fails X-Git-Tag: V9_6_0a2^0 X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=commitdiff_plain;h=611b13e2332152b87b404cf57aa02492984baaf9 bos #20082: Set reverse edge in GeometricProgression fails --- diff --git a/src/SMESH_SWIG/smesh_algorithm.py b/src/SMESH_SWIG/smesh_algorithm.py index 8ee3718a3..e9867dc4e 100644 --- a/src/SMESH_SWIG/smesh_algorithm.py +++ b/src/SMESH_SWIG/smesh_algorithm.py @@ -440,6 +440,18 @@ class Mesh_Algorithm: for i in reverseList: if isinstance( i, int ): s = geompy.GetSubShape(self.mesh.geom, [i]) + + #bos #20082 begin: + if s is None and type(self.geom) != geomBuilder.GEOM._objref_GEOM_Object: + # try to get the SHAPERSTUDY engine directly, as GetGen does not work because of + # simplification of access in geomBuilder: omniORB.registerObjref + from SHAPERSTUDY_utils import getEngine + gen = getEngine() + if gen: + aShapeOp = gen.GetIShapesOperations() + s = aShapeOp.GetSubShape(self.mesh.geom, i) + #bos #20082 end + if s.GetShapeType() != geomBuilder.GEOM.EDGE: raise TypeError("Not EDGE index given") resList.append( i )