On Thu, May 14, 2009 at 08:34:17PM +0200, Stefan Salewski wrote: > > http://groups.csail.mit.edu/drl/wiki/index.php/Visolate:_Voronoi_Toolpaths_for_PCB_Mechanical_Etch
Voronoi diagrams are a related problem, but I think the correct way to approach it is: 1. Produce the polygon (with holes) of all of the *non copper* areas of the board. PCB can do this easily with existing polygon primitives. 2. Find the "straight skeleton" of the resulting polygon. I believe if the orientation of the PCB polygons was cleared up you could do this with the CGAL library. Or it could be reimplemented for our polygon structure. Skeletonization can be done with a raster method, but I think this would produce suboptimal toolpaths if the intent were really to output Gcode. 3. Delete all of the "stubs" in the resulting skeleton. Holes in the original non-copper polygon (which represent islands of copper) will create loops in the skeleton, which we want to keep. "Peninsulas" of non copper will produce stubs (which do not serve to actually isolate any region -- imagine a P shape simplified to an O). If you use a library like CGAL these should be removed. -- Ben Jackson AD7GD <b...@ben.com> http://www.ben.com/ _______________________________________________ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user