From 845ebb854305e11dfdc0b6377ed15f2192202bdc Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Fri, 27 Dec 2024 13:06:07 +0500 Subject: [PATCH] Fix bug in Blender quantities calculator ignoring openings from an aggregate It wasn't considering that object's geometry might be also altered by opening added not directly but to it's aggregate. --- src/bonsai/bonsai/bim/module/qto/calculator.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bonsai/bonsai/bim/module/qto/calculator.py b/src/bonsai/bonsai/bim/module/qto/calculator.py index 38275312c5..d8dd45a453 100644 --- a/src/bonsai/bonsai/bim/module/qto/calculator.py +++ b/src/bonsai/bonsai/bim/module/qto/calculator.py @@ -516,9 +516,9 @@ def get_gross_volume(o: bpy.types.Object) -> float: return gross_volume -def has_openings(obj: bpy.types.Object) -> Union[ifcopenshell.entity_instance, list[ifcopenshell.entity_instance]]: +def has_openings(obj: bpy.types.Object) -> bool: element = tool.Ifc.get_entity(obj) - return element and getattr(element, "HasOpenings", []) + return bool(element and tool.Geometry.has_openings(element)) def get_obj_decompositions(obj: bpy.types.Object) -> set[ifcopenshell.entity_instance]: