Running a python script 'on top' of Rhino?

Following up this thread, I wonder if it possible to run a python program (that is using an ETO dialog), while still allowing me to execute regular Rhino commands? Right now my python program blocks things, since I am inside my own python program I guess. But when the program is iddle, I suspect it should somehow be possible to run another command and keep my dialog and display conduit active.

Your python program is still running on the main thread even if you are showing non-blocking user interface. This means that if the script is taking a long time to complete it will still block Rhino.

If you have something that takes a long time to complete, you could run it in a separate thread but be warned that there are all sorts of potential pitfalls to doing this if your script has any sort of dependency on geometry in the Rhino document.

Can you describe a bit more what you want to do? Maybe I can more useful answer.

I’ve sent you the script in question by pm

Thanks; I’m on vacation today but will try to check on this when I get back. Is there an existing user command or interface in Rhino that you would like to have similar functionality of with regards to flow of ui and interaction with the document?


Yes it’s a bit like how EdgeContinuity now works. This can stay open and (that will be the more advanced version) reacts to changes of the surfaces. And its display conduit stays active

This seemed to do the trick: