Hello, here is the code; it has to stay in the src/hid directory; I also attached the Makefile.am and .im. The exporter is based on the nelma and png gui (from 20091103 snapshot), and it basically prints every copper layer before sending it to a tracing algorithm. This way there are no problems regarding overlapping and cutting through traces; after much thought and many attempts I found this approach to be very effective. The tracing part was taken from potrace, an open source tracing program (again, after many attempts at writing my own algorithm I realized that I was trying to reinvent the wheel). The exporter is called gcode, and it will generate a mask image and a .cnc gcode file for every copper layer, along with a drill file still in gcode. You have the possibility to change some settings: -intermediate resolution: this affects how precisely the polygons will be traced, especially around pads and other round objects; -mill depth: depth of the milling pass; this and other milling settings are expressed as g-code parameters, so it's easy to change them in the cnc file itself; -safe z: retract height; -tool radius: in order to compensate for the tool radius all traces are bloated by this amount; of course if two objects touch they won't be cut; -drill depth: not much to say; -measurement unit: affects both settings and gcode coordinates. I tried the codes with a homemade milling machine run by EMC2; is seems to work fine. I think this is all, let me know if there are problems or features that should be included or anything else. Best regards, Alberto
Attachment:
gcode.tar.gz
Description: GNU Zip compressed data
Attachment:
makefiles.tar.gz
Description: GNU Zip compressed data
_______________________________________________ geda-user mailing list geda-user@xxxxxxxxxxxxxx http://www.seul.org/cgi-bin/mailman/listinfo/geda-user