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

Re: gEDA-user: PCB Bug: poly clearance around rotated pads.



On 9/6/08, Robert Fitzsimons <robfitz@xxxxxxxx> wrote:
> Here's an updated version of my patch which fixes the square pad and
>  damaged polygon issues.

Actually it does not fixes "damaged polygons" very well. And yes, this
issue was present before the patches. It just was not so frequent,
because
rounded lines (and all pads as well) were unsubtracted
with increased clearance, like this:
if (!
          (np = LinePoly ((LineType *) pad, pad->Thickness +
pad->Clearance + 100)))
        return 0;

The square pads robustness can be improved by the same means:

static int
UnsubtractPad (PadType * pad, LayerType * l, PolygonType * p)
{
  POLYAREA *np = NULL;
  if (TEST_FLAG (SQUAREFLAG, pad))
    {PadType p=*pad;p.Clearance+=100;
      if (!
          (np = SquarePadPoly (&p)))
        return 0;
    }
  else
    {
and so on. I don't know why 100; but 10 or 20 is not enough.

Regards,
Ineiev


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