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

Re: gEDA-user: Refresh all polygons



   Here is one way to break it that works 100% of the time:
   1. Highlight only one layer and the top side components. The layer must
   have a plane or large polygon area for the bug to be easily visible.
   2. Move that layer and the components.
   3. Hit Undo or "U", notice polygon has holes where they used to be, in
   the wrong positions.
   4. Save-Revert refreshes the PCB and works fine.
   I have no idea about git, sorry. All I know is:
   This is PCB, an interactive
   printed circuit board editor
   version 1.99z
   Compiled on May  2 2011 at 15:36:55
   The release I used was the most recent available on the 2nd May at
   about 15:36 GMT.
   However I noticed this bug in older versions of PCB. It has been around
   for a while, it just didn't really bother me until recent when I
   started working on a very complex PCB design with many polygons.

   On 10 May 2011 20:58, Peter C.J. Clifton <[1]pcjc2@xxxxxxxxx> wrote:

   On May 10 2011, DJ Delorie wrote:

     Make sure you have my patch to src/insert.c that calls
     ClearFromPolygon() and RestoreToPolygon().
     Failing that, Peter says calling InitClip() for every polygon will
     recompute them, but at the moment, there's no way to do that from
     the
     GUI.  In theory, you should never have to.  If you can come up with
     a
     small self-contained test case, file a bug so we can fix it.

     In addition to the patch DJ mentioned, the one I think you're more
     likely to be hitting (depending on what version of PCB you have), is
     the one fixed by this:
     commit 79417191949173c16579554dc8f8d5b9cbb22b3a
     Author: Peter Clifton <[2]pcjc2@xxxxxxxxx>
     Date:   Fri Apr 22 18:38:20 2011 +0100
       Fix geometry errors caused by commit
     2d8dc8a3a3a55158b4e6278dd9f40588e4111c2d
          This fixes up problems from the following commit:
              [PATCH] fix bug 2793480 (vias/arcs-to-polygon clearances)
              frac_circle(): introduce radius_adjustment factor to make
           the polygon outline the arc rather than connet points on the
     arc
              ArcPolyNoIntersect(): compute number of segments so that
           polygon diverges from the arc no more than 0.02 of
           required thickness; adjust outer "arc" radius like in
     frac_circle()
          The object bounding boxes for arcs, vias, lines and rounded
     pads which
       determine the maximum area affected by that object were no longer
       correct, leading to artaefacts when doing incremental polygon
     processing.
          It also lead to missing fragments in (the non-curved + and x
     type
       thermals). These are also fixed up by this patch.
     Could you elaborate as to what PCB version (git SHA1 if you built
     from git), and what symptoms you're seeing (perhaps with a
     screen-shot of the problem).
     It is far more important to us that polygons "Just work", rather
     than adding kludges in to let the user force recalculating them.
     This said, I know where are some very rare cases with degenerate or
     complex curved geometry where PCB's polygon routines do get very
     confused, and will need to be forced to recalculate. (If necessary,
     I use the file save, file revert method as Kai-Martin suggested).
     Best regards,
     Peter Clifton

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

References

   1. mailto:pcjc2@xxxxxxxxx
   2. mailto:pcjc2@xxxxxxxxx
   3. mailto:geda-user@xxxxxxxxxxxxxx
   4. http://www.seul.org/cgi-bin/mailman/listinfo/geda-user

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