[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: PCB+GL Branches: URGENT WARNING



On Fri, 2010-03-19 at 01:39 +0100, kai-martin knaak wrote:
> Peter Clifton wrote:
> 
> >> It has come to my attention that my PCB+GL branches (starting from
> >> "polygon_speedup" onwards, contain a flaw which can in some
> >> circumstances result in subtly corrupted polygons - which can in turn
> >> ruin a finished board's connectivity.
> 
> Thanks for the warning!
> Luckily, I haven't been bitten by this bug, yet. 
> 
>  
> > Looks like this is due to poly_ContourInContour sometimes mistakenly
> > returning TRUE for touching contours.
> 
> You mean two polygons touching, but not solidly overlapping?

Not two separate polygons.. rather a single polygon with two touching
holes. In my case, this was caused by two resistors with pins spaced
such that their polygon clearances touched exactly.

There had to be various other geometry around the touching case to cause
it to manifest as well.


> > For those looking to _use_ my branches, I'd recommend the above
> > workaround rather than re-fetching my branches with the attached patch
> > applied.
> 
> Wouldn't it suffice to switch to the stable version of pcb for gerber 
> output?

Yes, although anyone using the "pours" variants of the code would still
need the fix.

> > The patch causes a huge slow-down due to its more obsessive
> > testing.
> 
> How about activating the obsessive tests only on export, or on explicit 
> demand by the user? Say, with a button "recalculate polygons".

It needs to do it continuously or data-structures get corrupted.

I think (and in agreement with Harry's comment), we just need to test
one interior point of the polygon. Computing an interior point isn't
totally trivial though.

-- 
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)



_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user