← Back to team overview

kicad-developers team mailing list archive

DXF export 'plotter'


As requested by someone (and given that DXF support is a given for CAD 
interoperation and importing a plt is very hackish) I wrote a simple 
DXF 'plotter' and integrated it in eeschema and pcbnew;

It only 
creates baseline entities (lines, circles, arcs), not fancy stuff like 
polylines, donuts, traces or dtext entities. Anyway the files load with 
both qcad and LT 2008. It puts every colour in a different layer, so 
you can send pretty schematics in DXF format (strange, peoples asks for 
DXF instead of PDF for a schematic drawing!). Of course line width 
isn't handled (neither dashing for comment objects, because I'm lazy :

Layer color is... well... false color, since every CAD use its own 
palette... units are decimils (i.e. internal units of the plotter). 
With some caution the 'scale' could be implemented (caution because 
wxPoint is int based, while DXF needs doubles... unless you want to 
lose precision); but anyway WHAT program that read a DXF doesn't have a 
'scale' command? :P

The UI work is a quick fix-up... I'd recommend an 
UI redesign in both the applications, there is no consistency (scaling 
to a4 is only for PS, hpgl is sometimes scalable, sometime 1:1 

I'd love something like Eagle postprocessor recipes or OrCAD 
CAM worksheet, but I don't know wx and anyway I suck in UI work (that 
is, if you don't count 7-segment multiplexed displays as UI :D:D).

attach a couple of samples (this board is going in the ovens these 
days, by the way...)
 ------=_Part_152899_20829968.1246287033299 Content-Type: APPLICATION/X-BZIP2; name=vlp-Component.dxf.bz2
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=vlp-Component.dxf.bz2; size=85120

[Attachment content not displayed.] ------=_Part_152899_20829968.1246287033299 Content-Type: APPLICATION/X-BZIP2; name=vlp.dxf.bz2
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename=vlp.dxf.bz2; size=80485

[Attachment content not displayed.] ------=_Part_152899_20829968.1246287033299 Content-Type: APPLICATION/OCTET-STREAM; name=dxf-plotter-r1846.patch
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=dxf-plotter-r1846.patch; 

[Attachment content not displayed.] ------=_Part_152899_20829968.1246287033299--