Tom, Could the filling progress be displayed in the lower statusbar instead of a popup window?
On Tue, Dec 5, 2017 at 2:48 PM, Henner Zeller <[email protected]> wrote: > On 4 December 2017 at 16:41, Tomasz Wlostowski > <[email protected]> wrote: > > On 04/12/17 15:43, Henner Zeller wrote: > >> On 4 December 2017 at 06:31, Tomasz Wlostowski > >> <[email protected]> wrote: > >>> On 04/12/17 02:05, Henner Zeller wrote: > >>>> On 2 December 2017 at 10:11, Henner Zeller <[email protected]> wrote: > >>>>> On 1 December 2017 at 08:12, Tomasz Wlostowski > >>>>> <[email protected]> wrote: > >>>>>> On 29/11/17 16:10, jp charras wrote: > >>>>>>> I am using a few board in Kicad demos: interf_u, video, > pic_programmer. > >>>>>>> > >>>>>>> Also, filled areas are no shown in OpenGL, but are shown in Cairo > canvas. > >>>>>> > >>>>>> Hi all, > >>>>>> > >>>>>> The branch [1] contains a set of improvements in the zone filling > >>>>>> algorithm. It's several times faster than in the current master > branch. > >>>>>> > >>>>>> I'd like to merge it soon and move on to fixing P&S issues pending > for > >>>>>> the V5 - I'll greatly appreciate testing and feedback! > >>>>> > >>>>> Hi Tom, > >>>>> > >>>>> I'll compile your branch hopefully later this weekend for testing. > >>>>> If you need another board for testing, I am currently having a board > >>>>> that takes annoying several seconds to fill the zones in head KiCad, > >>>>> which hence might be interesting test case: > >>> > >>> Hi Henner, > >>> > >>> What OS did you build for? > >> > >> This was on Debian testing on a x86_64 machine. > >> g++ 7.2.0, Cairo: 1.15.8, boost 1.62.0 > >> > >> -h > > > > Hi guys, > > > > Now it should work fine - the filling algorithm was not thread safe and > > apparently wxProgressDialog can't be invoked from non-main thread. > > > > Check out the updated branch. > > Thanks Tom! > > Nice, the [tom-faster-zones-dec01] branch works well and very fast. I > have not seen any crashes anymore. > > There is a leftover method mentioned in pcbnew/class_zone.h: > void RemoveInsulatedCopperIslands() > .. which is not used/implemented so should be removed from the header. > > One thing I noticed: since it is sooo fast now, the progress-popup is > actually quite annoying as it just briefly blinks up and vanishes > again (at least for the board I was testing it with). Maybe it should > only show up if the operation is still ongoing after a second and less > than 50% is done at that time ? > > Another thought: if zone filling can be that fast, maybe we should > only store zone outlines in the *.kicad_pcb file, not the > (filled_polygon ...) that are now also stored. It is cheap to just > recreate them when loading the file. > Backround: This can save a lot of disk space as the filled polygons > tend to create a lot of points and tend to completely change with tiny > changes to other elements on the board, such as a moved via. This > means that version control has to store huge changes every time and it > is hard to see what actual changes are happening just looking at the > diff (I like to inspect diffs before checking something in, and this > makes it hard. Also it makes it hard to git merge kicad-pcbs). > Downside is, that everyone loading a file has to pay the extra cost to > create the zones (e.g. gerber generation). Maybe it could be a > heuristic to not store the filled polygons if recreating it takes less > than a second or so. > > Cheers, > Henner. > > > > > Thanks! > > Tom > > > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : [email protected] > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp >
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

