Mailing list archives : pcb-rnd

ID:868
From:ge...@igor2.repo.hu
Date:Sun, 10 Sep 2017 05:07:22 +0200 (CEST)
Subject:Re: [pcb-rnd] bugreport - impossible selection of off grid trace
in-reply-to:864 from Evan Foss <ev...@gmail.com>
replies: 870 from Evan Foss <ev...@gmail.com>
Hi Evan,
 
On Sat, 9 Sep 2017, Evan Foss wrote:
 
> Hi fellow pcb-rnd'rs,
>
> I was doing some testing of pcb-rnd with the gtk2 gl hid using rubber
> band modes (both of them) and I drew the attached trace. It was part
> of a longer single trace on the page. I removed the rest of it for
> simplicity. This one horizontal segment can not be selected. Endpoint
> selection of this trace still works as does window selection but
> clicking on it fails. I am running r11297.
 
I managed to reproduce it in all 3 HIDs. Unfortunately it is not a bug.
 
If you want to select an object by a click, you must have the (center of 
the) crosshair be on the object. In case of a line, this means the 
crosshair must be within the boundaries of the lin width.
 
This is all calculated in core, while rendering happens in various 
HIDs. To overcome possible different rounding as on "which pixel 
the line really uses", there's a certain tolerance, specified in pixels, 
called the pcb_pixel_slop.
 
What you have in your example is a horizontal line that is between two 
rows of grid in a way that no part of the line overlaps with any grid row.
 
This means you can not officially select it by trying to click on the 
line, because you can not place the crosshair on the line because the 
crosshair will snap to grid rows and will never overlap the line.
 
The only reason you can still select it sometime using this method is that 
at certain zoom levels, pcb_pixel_slop says "well, on-screen, it's close 
enough, let's accept it".
 
You can test it by zooming in to give the engine more pixels; you won't be 
able toe select it. Then start zooming out, step by step, and try select 
click again: at some point it will stop working. That's when your grid 
points get too far away from the edge of the line for pcb_pixel_slop.
 
The reason you can select by endpoint is probably because you have snap to 
off-grid points of line on and it simply snaps at the endpoint even if 
it is between grid points.
 
Official solution: if you have objects in between grid poitns, either 
select it using selection boxes or refine your grid or depend on the 
object-point-snap settings.
 
HTH,
 
Igor2
 
 

Reply subtree:
868 Re: [pcb-rnd] bugreport - impossible selection of off grid trace from ge...@igor2.repo.hu
  870 Re: [pcb-rnd] bugreport - impossible selection of off grid trace from Evan Foss <ev...@gmail.com>
    871 Re: [pcb-rnd] bugreport - impossible selection of off grid trace from ge...@igor2.repo.hu