From 276fda7d7135ab27a0a6433833d3d5c988e4a3ab Mon Sep 17 00:00:00 2001 From: Roy-043 <70520633+Roy-043@users.noreply.github.com> Date: Mon, 2 Mar 2026 21:17:56 +0100 Subject: [PATCH] BIM: remove switch to profile beam creation based on dimensions Fixes #28013. When creating a structure from a profile the code could ignore `self.bmode` (beam-mode) and create a beam even if the user selected the column option in the task panel. Rounding errors due to the conversion of numerical values read from the input boxes triggered the bug (89mm -> 3.5" -> 88.89999999999999mm). But beyond that, it is IMO not correct to disregard user input. If the column option is specified, a column should be created irrespective of the dimensions. (cherry picked from commit 64a4cee116ee657bcca487f7f2f3608f9043eea9) --- src/Mod/BIM/ArchStructure.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/Mod/BIM/ArchStructure.py b/src/Mod/BIM/ArchStructure.py index 885916efe1..04677b15ba 100644 --- a/src/Mod/BIM/ArchStructure.py +++ b/src/Mod/BIM/ArchStructure.py @@ -463,9 +463,7 @@ class _CommandStructure: else: # metal profile FreeCADGui.doCommand("p = Arch.makeProfile(" + str(self.Profile) + ")") - if ( - abs(self.Length - self.Profile[4]) >= 0.1 - ) or self.bmode: # forgive rounding errors + if self.bmode: # horizontal FreeCADGui.doCommand( "s = Arch.makeStructure(p,length=" + str(self.Length) + ")"