From 08b7d9154a8cab568d5077d459b1a9482e4defbf Mon Sep 17 00:00:00 2001 From: Yorik van Havre Date: Sat, 20 May 2017 12:24:08 -0300 Subject: [PATCH] Arch: Fixed error in DXF export of Arch Panel sheets --- src/Mod/Arch/ArchPanel.py | 2 ++ src/Mod/Draft/importDXF.py | 10 ++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Mod/Arch/ArchPanel.py b/src/Mod/Arch/ArchPanel.py index 5a262ecce3e5..e799f671362f 100644 --- a/src/Mod/Arch/ArchPanel.py +++ b/src/Mod/Arch/ArchPanel.py @@ -948,6 +948,8 @@ def __init__(self, obj): def execute(self, obj): import Part + self.sheettag = None + self.sheetborder = None pl = obj.Placement if obj.Width.Value and obj.Height.Value: l2 = obj.Width.Value/2 diff --git a/src/Mod/Draft/importDXF.py b/src/Mod/Draft/importDXF.py index 76da3de753ad..aaed7dc51992 100644 --- a/src/Mod/Draft/importDXF.py +++ b/src/Mod/Draft/importDXF.py @@ -1898,11 +1898,13 @@ def export(objectslist,filename,nospline=False,lwPoly=False): if not hasattr(ob.Proxy,"sheetborder"): ob.Proxy.execute(ob) sb = ob.Proxy.sheetborder - sb.Placement = ob.Placement + if sb: + sb.Placement = ob.Placement + writeShape(sb,ob,dxf,nospline,lwPoly,layer="Sheets",color=1) ss = ob.Proxy.sheettag - ss.Placement = ob.Placement.multiply(ss.Placement) - writeShape(sb,ob,dxf,nospline,lwPoly,layer="Sheets",color=1) - writeShape(ss,ob,dxf,nospline,lwPoly,layer="SheetTags",color=1) + if ss: + ss.Placement = ob.Placement.multiply(ss.Placement) + writeShape(ss,ob,dxf,nospline,lwPoly,layer="SheetTags",color=1) for subob in ob.Group: if Draft.getType(subob) == "PanelCut": writePanelCut(subob,dxf,nospline,lwPoly,parent=ob)