On Mon, 2011-05-30 at 09:37 +0200, Gabriel Paubert wrote: > > > Think i know now. Polygons can't have edges that cross other edges. > > > > You got it.. PCB doesn't allow self intersecting polygons, so I removed > > support for rendering them in an attempt to manage the complexity (and > > hopefully improve speed of) the tessellator. > > So, what happens if one directly tinkers with the PCB file with > an editor or script and creates a self interscting polygon > by mistake? "Bad things" (TM). Certainly the polygon computations will give bogus results, because one of the key underlying assumptions of the polygon algebra routines is violated. If PCB is built with asserts enabled, it will just quit immediately when loading your file. > It's not so far fetched, I sometimes edit coordinates in the > file to match mechanical design. I can make a mistake or, > if it is a script (which also happens), it can have a bug. Its not ideal, but PCB doesn't report these problems unless asserts are enabled (which makes PCB slow). We should probably add a validation pass when loading the board and refuse to display any damaged polygon. That should at least help to pick any problems up with hand (or script) edited boards sooner rather than later. -- Peter Clifton Electrical Engineering Division, Engineering Department, University of Cambridge, 9, JJ Thomson Avenue, Cambridge CB3 0FA Tel: +44 (0)7729 980173 - (No signal in the lab!) Tel: +44 (0)1223 748328 - (Shared lab phone, ask for me)
Attachment:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ geda-user mailing list geda-user@xxxxxxxxxxxxxx http://www.seul.org/cgi-bin/mailman/listinfo/geda-user