ID: | 2655 |
From: | Gabriel Paubert <pa...@iram.es> |
Date: | Wed, 20 Feb 2019 08:15:43 +0100 |
Subject: | Re: [pcb-rnd] poly clipping performance optimization - experimental |
in-reply-to: | 2631 from ge...@igor2.repo.hu |
replies: | 2658 from ge...@igor2.repo.hu |
Hi, On Thu, Jan 31, 2019 at 07:28:55AM +0100, gedau@igor2.repo.hu wrote: > Hi Gabriel, > > in the previous mail I wrote about how the fix involves moving the > decision about when we do the clipping one level higher, e.g. to the > "operation on all selected objects" function. > > This morning I added an experimental action that can move it even higher: > to the user level. Please test if it helps your workflow on your big > board. I expect it could help you not needing to do drawing outside of the > board. If it does help, we may have this included as a standard feature in > the next cycle. If it doesn't help, I will revert the action. > > Steps to get the new action: > > 1. configure with --buildin-expfeat so that you get the plugin with > experimental features > > 2. use the ClipInhibit() action with one argument (on, off or toggle) to > change the current inhibit state. During an inhibition (on), no poly > clipping is done on the board. This means when you draw a new polygon, it > won't show up, when you put objects within a poly, they won't get > clearances, etc. Tip: you may want to turn on the wireframe draw mode > while inhibit is on (the | key) to make new objects visible under > polygons. > > 3. once you are done with a lot of operations that affect large polygons, > turn off the inhibit. This will do all the clipping at once. If it takes > longer than a few seconds, it should draw a progress bar. > > 4. attached is an optional menu patch; it doesn't have a checkbox, it's > not easy to do without a proper conf item which I didn't want to add > before we figure whether the feature is useful at all. But it has a hotkey > {m p i} and a menu item so it's easier to call it. It toggles clip > inhibit on each ionvocation. > > > If you have the time, please experiment with it and let me know if it > looks useful. So far it was super cheap to implement and in expfeat it is > not introducing any risk on our upcoming release. These last days I have been using this experimental feature extensively, it really speeds up thing. Now my fingers have learnt the {m p i} sequence! This said, when I forget to inhibit clipping, there is one function which really is incredibly slow in many cases: undo. Maybe the clipping should be always inhibited at the beginning of undo and restored after. Regards, Gabriel
Reply subtree:
2655 Re: [pcb-rnd] poly clipping performance optimization - experimental from Gabriel Paubert <pa...@iram.es>
2658 Re: [pcb-rnd] poly clipping performance optimization - experimental from ge...@igor2.repo.hu
2672 Re: [pcb-rnd] poly clipping performance optimization - experimental from ge...@igor2.repo.hu
2673 Re: [pcb-rnd] poly clipping performance optimization - experimental from Gabriel Paubert <pa...@iram.es>
2674 Re: [pcb-rnd] poly clipping performance optimization - experimental from ge...@igor2.repo.hu