View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001964 | Draft | Patch | public | 2015-02-12 04:52 | 2015-02-12 14:19 |
Reporter | swill | Assigned To | yorik | ||
Priority | normal | Severity | minor | Reproducibility | always |
Status | closed | Resolution | fixed | ||
OS | Ubuntu Server | OS Version | 14.04 | ||
Summary | 0001964: importSVG export fails without GUI | ||||
Description | When trying to export an SVG file on Ubuntu 14.04 Server without X installed I get the following error: Traceback (most recent call last): File "./custom.py", line 153, in <module> importSVG.export(FreeCAD.ActiveDocument.Objects, "%s/custom.svg" % (config['app']['export'])) File "/usr/lib/freecad/Mod/Draft/importSVG.py", line 1207, in export svg.write(Draft.getSVG(ob)) File "/usr/lib/freecad/Mod/Draft/Draft.py", line 2159, in getSVG (obj.Name,i)) File "/usr/lib/freecad/Mod/Draft/Draft.py", line 1802, in getPath drawing_plane_normal = FreeCAD.DraftWorkingPlane.axis AttributeError: 'module' object has no attribute 'DraftWorkingPlane' This issue is the FreeCAD attribute 'DraftWorkingPlane' is used without checking that it actually exists. Everywhere else in the Draft.py code there is a check before using it and it defaults to the Z axis if it does not exist. I have created a patch for this issue following the same form as the other examples in the same file. I have tested this fix and it works. Cheers and thanks for all the hard work. :) | ||||
Tags | No tags attached. | ||||
FreeCAD Information | |||||
|
0001-Checking-FreeCAD.DraftWorkingPlane.axis-before-using.patch (1,244 bytes)
From f24f1dcde7f36d5cd03f1ae17524f5f1a27c2c4e Mon Sep 17 00:00:00 2001 From: Will Stevens <wstevens@cloudops.com> Date: Wed, 11 Feb 2015 23:41:14 -0500 Subject: [PATCH] Checking 'FreeCAD.DraftWorkingPlane.axis' before using it --- src/Mod/Draft/Draft.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Mod/Draft/Draft.py b/src/Mod/Draft/Draft.py index 800af91..68cb516 100644 --- a/src/Mod/Draft/Draft.py +++ b/src/Mod/Draft/Draft.py @@ -1799,7 +1799,10 @@ def getSVG(obj,scale=1,linewidth=0.35,fontsize=12,fillstyle="shape color",direct if rot < -90: rot += 180 #be carefull with the sweep flag - drawing_plane_normal = FreeCAD.DraftWorkingPlane.axis + if hasattr(FreeCAD,"DraftWorkingPlane"): + drawing_plane_normal = FreeCAD.DraftWorkingPlane.axis + else: + drawing_plane_normal = FreeCAD.Vector(0,0,1) if plane: drawing_plane_normal = plane.axis flag_large_arc = (((e.ParameterRange[1] - \ e.ParameterRange[0]) / math.pi) % 2) > 1 -- 1.9.3 (Apple Git-50) |
|
Added the patch, thanks! |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-02-12 04:52 | swill | New Issue | |
2015-02-12 04:52 | swill | File Added: 0001-Checking-FreeCAD.DraftWorkingPlane.axis-before-using.patch | |
2015-02-12 13:59 | yorik | Note Added: 0005790 | |
2015-02-12 14:19 | yorik | Changeset attached | => FreeCAD Master master cd5783ac |
2015-02-12 14:19 | yorik | Assigned To | => yorik |
2015-02-12 14:19 | yorik | Status | new => closed |
2015-02-12 14:19 | yorik | Resolution | open => fixed |