From c6ee1d1679d1298de0d7447ff108c22709c68e54 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Fri, 7 Oct 2022 20:55:46 +1100 Subject: [PATCH] Deleting a fill auto deletes the opening --- src/blenderbim/blenderbim/bim/module/void/operator.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/blenderbim/blenderbim/bim/module/void/operator.py b/src/blenderbim/blenderbim/bim/module/void/operator.py index af510e6386..3a9e800a34 100644 --- a/src/blenderbim/blenderbim/bim/module/void/operator.py +++ b/src/blenderbim/blenderbim/bim/module/void/operator.py @@ -168,12 +168,13 @@ class RemoveFilling(bpy.types.Operator): obj = bpy.data.objects.get(self.obj) if self.obj else context.active_object if not obj: return {"FINISHED"} - self.file = IfcStore.get_file() - element_id = obj.BIMObjectProperties.ifc_definition_id - if not element_id: + element = tool.Ifc.get_entity(obj) + if not element: return {"FINISHED"} - ifcopenshell.api.run("void.remove_filling", self.file, **{"element": self.file.by_id(element_id)}) - Data.load(self.file, element_id) + for rel in element.FillsVoids: + bpy.ops.bim.remove_opening(opening_id=rel.RelatingOpeningElement.id()) + ifcopenshell.api.run("void.remove_filling", tool.Ifc.get(), element=element) + Data.load(tool.Ifc.get(), element.id()) return {"FINISHED"}