From c56a4a6c9dee2f862130299e0af49f808450d37f Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 26 Jun 2024 17:06:21 +0500 Subject: [PATCH] Fix console errors from Representations UI if non-product element is selected --- src/blenderbim/blenderbim/bim/module/geometry/data.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/blenderbim/blenderbim/bim/module/geometry/data.py b/src/blenderbim/blenderbim/bim/module/geometry/data.py index f44493e54b..b98188ab20 100644 --- a/src/blenderbim/blenderbim/bim/module/geometry/data.py +++ b/src/blenderbim/blenderbim/bim/module/geometry/data.py @@ -62,7 +62,10 @@ class RepresentationsData: def load(cls): cls.data = {"representations": cls.representations()} cls.data["contexts"] = cls.contexts() + + # Only after cls.representations(). cls.data["shape_aspects"] = cls.shape_aspects() + cls.is_loaded = True @classmethod @@ -118,7 +121,11 @@ class RepresentationsData: return results @classmethod - def shape_aspects(cls): + def shape_aspects(cls) -> list[tuple[str, str, str]]: + """Get list of current's representation shape aspects for prop's enum_items.""" + # Ignore objects without representations, e.g. IfcRelSpaceBoundary. + if not cls.data["representations"]: + return [] obj = bpy.context.active_object if not obj.data: return []