From 1ee5bb73fa1ff8635121b197c5ea1de6b19fd787 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bruno=20Perdig=C3=A3o?= Date: Wed, 24 Sep 2025 09:41:22 -0300 Subject: [PATCH] Fix `RefreshLinkedAggregates` renaming of aggregates --- src/bonsai/bonsai/bim/module/geometry/operator.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/bonsai/bonsai/bim/module/geometry/operator.py b/src/bonsai/bonsai/bim/module/geometry/operator.py index ac16d52ff6..a2f9cc8fae 100644 --- a/src/bonsai/bonsai/bim/module/geometry/operator.py +++ b/src/bonsai/bonsai/bim/module/geometry/operator.py @@ -1427,7 +1427,8 @@ class RefreshLinkedAggregate(bpy.types.Operator, tool.Ifc.Operator): pset = ifcopenshell.util.element.get_pset(element, self.pset_name) index = pset["Index"] annotations = get_assignments(element) - original_data[group][index] = {"Name": str(pset["Aggregate_Index"]), "Assignment": annotations} + container = ifcopenshell.util.element.get_container(element) + original_data[group][index] = {"Name": pset["Name"], "Aggregate_Index": pset["Aggregate_Index"], "Assignment": annotations, "Container": container} parts = ifcopenshell.util.element.get_parts(element) if parts: @@ -1470,12 +1471,12 @@ class RefreshLinkedAggregate(bpy.types.Operator, tool.Ifc.Operator): index = pset["Index"] if index == 0: - obj.name = pset["Name"] + obj.name = pset["Name"] + "_" + str(original_data[group][index]["Aggregate_Index"]) ifc_file = tool.Ifc.get() ifcopenshell.api.pset.edit_pset( ifc_file, ifc_file.by_id(pset["id"]), - properties={"Aggregate_Index": int(original_data[group][index]["Name"])}, + properties={"Aggregate_Index": int(original_data[group][index]["Aggregate_Index"])}, ) assignments = original_data[group][index]["Assignment"] if assignments: