From 65d599bbd92fa546d21e5f66251c3c55b3b8351c Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Fri, 3 Dec 2021 11:00:54 +1100 Subject: [PATCH] Fix bug where Blender name wouldn't match IFC Name when reassigning class. See #1902. --- src/blenderbim/blenderbim/bim/module/boundary/operator.py | 2 +- src/blenderbim/blenderbim/bim/module/root/operator.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/blenderbim/blenderbim/bim/module/boundary/operator.py b/src/blenderbim/blenderbim/bim/module/boundary/operator.py index cda964bcb9..73c198a472 100644 --- a/src/blenderbim/blenderbim/bim/module/boundary/operator.py +++ b/src/blenderbim/blenderbim/bim/module/boundary/operator.py @@ -70,7 +70,7 @@ class Loader: surface.InnerBoundaries = () shape = ifcopenshell.geom.create_shape(self.settings, surface) mesh = self.ifc_importer.create_mesh(None, shape) - obj = bpy.data.objects.new(f"{boundary.is_a()}/{boundary_id}", mesh) + obj = bpy.data.objects.new(f"{boundary.is_a()}/{boundary.Name}", mesh) obj.matrix_world = blender_space.matrix_world boundaries_collection = get_boundaries_collection(blender_space) boundaries_collection.objects.link(obj) diff --git a/src/blenderbim/blenderbim/bim/module/root/operator.py b/src/blenderbim/blenderbim/bim/module/root/operator.py index 6317ecba68..ef57430072 100644 --- a/src/blenderbim/blenderbim/bim/module/root/operator.py +++ b/src/blenderbim/blenderbim/bim/module/root/operator.py @@ -106,7 +106,7 @@ class ReassignClass(bpy.types.Operator): "predefined_type": predefined_type, }, ) - obj.name = "{}/{}".format(product.is_a(), "/".join(obj.name.split("/")[1:])) + obj.name = "{}/{}".format(product.is_a(), getattr(product, "Name", "None")) IfcStore.link_element(product, obj) obj.BIMObjectProperties.is_reassigning_class = False return {"FINISHED"}