From 0efc2d25f1fd8542569a597e4bfd897bb596f5d2 Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Tue, 20 May 2025 12:24:30 +0500 Subject: [PATCH] Fix for assign_class and object with modifiers in Blender <4.4 #6701 --- src/bonsai/bonsai/bim/module/root/operator.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/bonsai/bonsai/bim/module/root/operator.py b/src/bonsai/bonsai/bim/module/root/operator.py index 41297e822f..d1b036cc1d 100644 --- a/src/bonsai/bonsai/bim/module/root/operator.py +++ b/src/bonsai/bonsai/bim/module/root/operator.py @@ -274,8 +274,15 @@ class AssignClass(bpy.types.Operator, tool.Ifc.Operator): # Apply geometry. if obj.modifiers: ensure_single_user_mesh(obj.data) + # In older Blender versions 'object.convert' + # still requires object to be both selected and active. + is_old_blender = bpy.app.version < (4, 4, 0) with context.temp_override(selected_editable_objects=[obj]): + if is_old_blender: + tool.Blender.set_active_object(obj) bpy.ops.object.convert(target="MESH") + if is_old_blender: + tool.Blender.clear_objects_selection() # Apply scale. if obj.scale != (1, 1, 1):