← Back to team overview

kicad-developers team mailing list archive

Re: Footprint preview panel - faster initialization (Tom?)


Hi Chris,

I don't know much about it, but
maybe Cirilo can give some ideas based on the 3D cache implementation.
The 3D cache is based on a hash of the 3D file so it just need to load a binary pre-processed representation.

Maybe you can do some similar rendered image cache. This nature of graphs should also be easily / fast compressed/loaded.
This idea may not work in a good way if your windows resolution change, it is not very adaptative.
but maybe you can keep a temporary memory cache for the same resolution..

Mario Luzeiro

From: Kicad-developers [kicad-developers-bounces+mrluzeiro=ua.pt@xxxxxxxxxxxxxxxxxxx] on behalf of Chris Pavlina [pavlina.chris@xxxxxxxxx]
Sent: 09 March 2017 19:27
To: kicad-developers@xxxxxxxxxxxxxxxxxxx
Subject: [Kicad-developers] Footprint preview panel - faster initialization     (Tom?)

I'm trying to speed up my new component selector, since the previous one
loaded and searched so quickly. I don't want a serious efficiency
regression in one of the most used dialogs in eeschema.

Since optimizing the column sizing cache and data sorting, the slowest
part is now loading FOOTPRINT_PREVIEW_PANEL, which has to initialize a

Tom/Orson/anyone else who knows GAL - can you think of a reasonable way
to either speed up the initialization or retain an initialized copy
between dialog invocations? I'm thinking about just keeping the dialog
in memory all the time and hiding it when not in use instead of
destroying and reinstantiating it - will this cause any problems with
GAL no longer having something to draw to? (Bear in mind I'm unfamiliar
with both GAL and how wxWidgets handles graphics here.)

If it provides any relevant information, I'm currently forcing Cairo
mode in the component selector, to avoid having to deal with graphics
support in a simple dialog (since drawing efficiency is not required).


Mailing list: https://launchpad.net/~kicad-developers
Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
Unsubscribe : https://launchpad.net/~kicad-developers
More help   : https://help.launchpad.net/ListHelp