kicad-developers team mailing list archive
Mailing list archive
Re: Question about VIEW_GROUP drawing
KiCad Developers <kicad-developers@xxxxxxxxxxxxxxxxxxx>
Maciej Suminski <maciej.suminski@xxxxxxx>
Sun, 12 Mar 2017 22:09:47 +0100
spf=pass (sender IP is 220.127.116.11) smtp.mailfrom=cern.ch; lists.launchpad.net; dkim=none (message not signed) header.d=none;lists.launchpad.net; dmarc=bestguesspass action=none header.from=cern.ch;
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1
Wow, the progress on gerbview is amazing. I must admit this is the first
time I compiled it, but it works quite well.
For SELECTION class ViewBBox() is overridden. It computes the bounding
box size depending on its contents. Apart from that, SELECTION object is
added to VIEW during SELECTION_TOOL initialization, without any objects
inside, so the bounding box is not calculated properly. It is also never
updated, therefore you see the selected objects randomly.
You were simply unlucky, as the bug was introduced in the master branch
(dda51ab5) and resolved a few commits later (cc3d79f9). Probably
rebasing your code on the current master will cure the problem. If it is
not the case, please let me know and I will investigate it further.
Recently I have also found the reason why OpenGL was going much slower
than expected. It is fixed now (737dc204), so there is another another
reason to rebase the code.
Thank you for your work on KiCad, we really appreciate it!
On 03/11/2017 10:48 PM, Jon Evans wrote:
> Hi, I guess this is mostly a question for Orson but maybe others could
> answer also...
> I'm chasing a bug that I can't figure out. I have implemented selection of
> items in GerbView, in a similar mechanism to Pcbnew where selected objects
> are added to a VIEW_GROUP so they are drawn together. The problem is, the
> VIEW_GROUP is not drawn at all unless I zoom out very far! I am curious
> what could cause this. The BBox for VIEW_GROUP is set to the maximum size,
> so it shouldn't ever get culled from the draw list. So, my other thought
> was that this has something to do with caching, and when I zoom out far
> enough, sure enough, I can see in the debugger that the VIEW_GROUP is now
> drawn in Immediate mode, not cached mode.
> I have not yet wrapped my head around the caching systems in GAL. Anyone
> know what could be wrong? I guess I'm likely just not configuring something
> properly because this works fine in Pcbnew.