Mail Archives: geda-user/2016/06/04/09:05:14
Hi all,
while testing pcb-rnd, khazakar has found an interesting bug that is
present in recent versions of PCB mainline too. A minimal example pcb can
be found at:
http://igor2.repo.hu/tmp/arcbug.pcb.gz
It features two arcs: the one on the component side has both ends within
the drawing area and works properly when moved or resized. The one on the
solder side gets jumpy when moved.
Reproduce from scratch: draw an arc starting it at the top-left corner
making it as big as the editor permits.
The problem seems to be that PCB tries to keep both endpoints within
bounds and when this is not possible, it does something strange.
Proposed fix:
- let the user override clipping with a modifier (e.g. the shift key)
- or relax the clipping: if the size of the area of the bounding box of
the arc is at least 1/3 of the area of the drawing, stop clipping
- maybe both of the above
Rationale: PCB doesn't worry too much about objects falling beyond the
drawing area most of the time, perhaps it shouldn't in this case either.
Worst case 99% of the arc will be off-drawing so it will be difficult to
grab it by the tiny portion still accessible in drawing space. But even
then the drawing area can be enlarged or the object can be removed with a
text editor so nothing really breaks if the user can move such huge arcs
freely.
Regards,
Igor2
- Raw text -