Mailing list archives : pcb-rnd

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