diff --git a/FlatCAMApp.py b/FlatCAMApp.py index f6f74d47..fb600282 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -1714,15 +1714,32 @@ class App(QtCore.QObject): except: return "Could not retrieve object: %s" % obj_name - # TODO needs size of board determining # TODO needs seperate colours for CNCPath Export + # The line thickness is only affected by the scaling factor not the tool size + # Use the tool size to determine the scaling factor for line thickness with self.proc_container.new("Exporting SVG") as proc: + exported_svg = obj.export_svg() + + # Determine bounding area for svg export + svgwidth = obj.solid_geometry.bounds[2] - obj.solid_geometry.bounds[0] + svgheight = obj.solid_geometry.bounds[3] - obj.solid_geometry.bounds[1] + minx = obj.solid_geometry.bounds[0] + miny = obj.solid_geometry.bounds[1] - svgheight + + svgwidth = str(svgwidth) + svgheight = str(svgheight) + minx = str(minx) + miny = str(miny) + uom = obj.units.lower() + svg_header = '' svg_header += '' svg_footer = ' ' - svg_elem = svg_header + obj.export_svg() + svg_footer + svg_elem = svg_header + exported_svg + svg_footer doc = parse_xml_string(svg_elem) with open(filename, 'w') as fp: fp.write(doc.toprettyxml())