From e18e2caea8d98f185540e929bd75a5ba61e6cef7 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Mon, 31 Mar 2025 14:05:07 +0500 Subject: [PATCH] Bonsai - exclude selected non-ifcobjects from type assignment/unsassignment #6454 --- src/bonsai/bonsai/bim/module/type/operator.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bonsai/bonsai/bim/module/type/operator.py b/src/bonsai/bonsai/bim/module/type/operator.py index a43e0b72af..5efd58600f 100644 --- a/src/bonsai/bonsai/bim/module/type/operator.py +++ b/src/bonsai/bonsai/bim/module/type/operator.py @@ -50,6 +50,8 @@ class AssignType(bpy.types.Operator, tool.Ifc.Operator): model_props = tool.Model.get_model_props() for obj in related_objects: element = tool.Ifc.get_entity(obj) + if not element or not element.is_a("IfcObject"): + continue core.assign_type(tool.Ifc, tool.Type, element=element, type=relating_type) if model_props.occurrence_name_style == "TYPE": obj.name = tool.Model.generate_occurrence_name(relating_type, element.is_a()) @@ -69,7 +71,7 @@ class UnassignType(bpy.types.Operator, tool.Ifc.Operator): objs = [bpy.data.objects.get(self.related_object)] if self.related_object else context.selected_objects for obj in objs: element = tool.Ifc.get_entity(obj) - if not element or element.is_a("IfcElementType"): + if not element or not element.is_a("IfcObject"): continue ifcopenshell.api.run("type.unassign_type", self.file, related_objects=[element])