-# Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2024 CEA, EDF, OPEN CASCADE
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
"""
Defines "ViscousLayers2D" hypothesis to give parameters of layers of quadrilateral
elements to build near mesh boundary. This hypothesis can be used by several 2D algorithms:
- NETGEN 2D, NETGEN 1D-2D, Quadrangle (mapping), MEFISTO, MG-CADSurf
+ NETGEN 2D, NETGEN 1D-2D, Quadrangle (mapping), MG-CADSurf
Parameters:
thickness: total thickness of layers of quadrilaterals
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 )