From ee4f856fc8ade0c7889736cdadc0571f0641f80f Mon Sep 17 00:00:00 2001 From: Roy-043 <70520633+Roy-043@users.noreply.github.com> Date: Sat, 17 Jan 2026 16:42:56 +0100 Subject: [PATCH] BIM: fix ArchReference Placement if whole file is used --- src/Mod/BIM/ArchReference.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/Mod/BIM/ArchReference.py b/src/Mod/BIM/ArchReference.py index 031a85cb8e..18d387f016 100644 --- a/src/Mod/BIM/ArchReference.py +++ b/src/Mod/BIM/ArchReference.py @@ -147,7 +147,6 @@ class ArchReference: import Part - pl = obj.Placement filename = self.getFile(obj) if filename and self.reload and obj.ReferenceMode in ["Normal", "Transient"]: self.parts = self.getPartsList(obj) @@ -155,6 +154,7 @@ class ArchReference: if filename.lower().endswith(".fcstd"): zdoc = zipfile.ZipFile(filename) if zdoc: + pl = obj.Placement self.shapes = [] if obj.Part: if obj.Part in self.parts: @@ -166,8 +166,6 @@ class ArchReference: shape = self.cleanShape(shapedata, obj, self.parts[obj.Part][2]) self.shapes.append(shape) obj.Shape = shape - if not pl.isIdentity(): - obj.Placement = pl else: t = translate("Arch", "Part not found in file") FreeCAD.Console.PrintError(t + "\n") @@ -181,6 +179,7 @@ class ArchReference: self.shapes.append(shape) if self.shapes: obj.Shape = Part.makeCompound(self.shapes) + obj.Placement = pl elif filename.lower().endswith(".ifc"): ifcfile = self.getIfcFile(filename) if not ifcfile: