Containers and Panels and Buttons - Oh My.. Option - Stream Deck

Sorry this is long but I serve this up as a possible alternative to building custom Containers/Panels/Toobars until the “bugs” in R8 are worked out. I’m fairly good at customizing but I am finding R8 sometimes frustrating.

I remember there were Discourse questions on the use of Stream Deck so I offer up this.

Background:
My use of Rhino is a bit different than what most design focused folks do. I did however start on AutoCad ver.1.8 (dinosaur I know) thru 2021 so I have a lot of cad background. I also used Sketchup since it earliest beta but I moved to Rhino on V5 and haven’t looked back.

I’m currently a semi-retired consultant using Rhino 6 Mac on heavily customized systems and my process is explicitly refined to create efficient repeatable deliverables. I’ve been in construction, design, and engineering all my working career but now do 3D construction logistics and in some instances I may only have 24 hours to provide a deliverable. The graphics I produce are used for public information on the TV News, permit acquisition, project awarding, neighborhood information meetings, sub-contractor coordination, and project phasing among other things.

Systems:
I don’t do streaming but make heavy use of Stream Decks (SD) to keep my screen clean of clutter and to permit me to transfer effortlessly between my Macs (3) as I have all my support routines on an external SSD (backed up of course). My production systems utilize numerous custom toolbars with custom icons and multi command macros behind the scenes. Some also run custom python scripts to ensure consistency of my process and deliverables. I first tried to encapsulate all my customizations within the Rhino gui but eventually purchased and focused on 3rd party hardware independent of Rhino (ie. Stream Deck)

Testing R8 system:
I have bought the R8 upgrade (skipped R7) and purchased a dedicated new Mac to isolate R8 from my production systems so rogue anomalies don’t put me out of business. This system has no other software installed other than Stream Deck and Rhino 8 Mac. I find the current implementation of Containers/Panels/Toolbars too “unsettled” so adopting my Stream Decks has been a godsend. The majority of my legacy customizations continue to function with only a little tweaking. If you are heavily into keyboard shortcuts you may be satisfied with what base Rhino provides but I have found that I can “develop” a custom SD profile that guides me through a specific task. For example, I have SD screens that do “Site Prep - Aerial Imagery”, “Floorplan Trace over - 3D”, “Site isolation/Protection”, “Excavation - Equipment Staging and Movement”, “Pedestrian Egress”, “Signage”… to name a few. Each of these have sub-functions that only display/execute those activities related to a specific sub task.

I know there is an additional cost associated with 3rd party hardware but I actually use SD for so much more.
I export from Rhino, launch my graphics composition software with exported Rhino images and with my SD button templates then I need to create a new SD button, launch my browser to specific web pages (McNeel Discourse), launch my billing templates, launch Youtube channels that I frequent, copy area to clipboard, and so so much more. I don’t have to remember where things are after I build a “button”.

Ok, enough with the rambling. Attached is a graphic showing some of my SD screens and resulting deliverables.

I do thoroughly enjoy Rhino and know even with it’s transitional bugs it’s still a fantastic application and an outstanding support community.

I’m happy to answer any questions which occur as a result of this post. I frequent the Discourse numerous times a day.

Happy Rhino-ing……

For those who don’t want to get a stream deck, or can’t afford one, you can also try something like kmonad, which is a keyboard manager.

I have a custom-built split keyboard myself that runs on QMK, which allows for adding a whole lot of customization. But since not everybody is into custom keyboards and flashing them with own built configurations kmonad may be of help.

You’d essentially add key combinations that put your keyboard in a different layer - just like the shift key and the fn key already do. That you can set up as you want like @Maxedout did on his stream deck - except you don’t need a stream deck.

I haven’t actually tried kmonad myself, but I imagine it can do fairly similar things.

For some grasshopper definitions I wish I had like a dozen knobs to manipulate sliders…

I’ve used Arduino and potentiometers years ago but it wasn’t very reliable, sliders often kept jumping up or down by an increment

And for those who wish to simply remain within Rhino, most of the buggy stuff concerning the toolbar/container UI is being actively worked on, so I expect it will get better in a few weeks.

If you want to start making custom toolbars NOW before things really stabilize, there is one pretty foolproof method of making custom stuff that works and stays stable between Rhino sessions and new service releases. The method is simple - do not copy anything you plan to modify, make everything from scratch. I know the linked copy stuff will be solved soon, but this method works now and will continue to do so in the future.

In your desired library (if you have more than one, otherwise default) make new toolbars (containers) for your custom stuff - do not copy existing ones.

In those toolbars, create new blank buttons with no commands at all (last option in the dialog). Then right click on the new blank button and add the various text info - name, tooltip, command script etc. - and import either one of the standard Rhino images or a custom SVG. That way you will have a completely independent button not linked to anything else. Certainly it takes a bit longer, but it’s good insurance.

It’s OK to copy existing buttons from default into a custom library (.rui) - if you do not modify them in any way afterward. Currently they remain linked to default - but that may change in the future. Copying in the other direction or between independent .rui’s is iffy but being worked on - I would not risk it currently.

1 Like

Glad that my “suggested option” sparked a non-controversial thread and by no means am I trying to coerce anyone to buy anything. I offered this up because there was a lot of what I perceive as hostile/frustrated comments in the threads related to what isn’t working right and there a couple of past threads questioning the use of Stream Deck with Rhino.

I have done an extensive “within Rhino” customization in the past and it did work fine but my work day is far more than just Rhino. I enjoy having my work environment clean and find that for me 3rd party helps a lot. It also helps me to remain focused on the task at hand so I can continue to be productive and make money. Keyboard shortcuts are great but with age my brain matter seems to forget a lot and Rhino has an extensive arsenal of commands.

I know that the Rhino folks are working hard on stabilizing the entire experience and I feel the frustration from both sides. I’m definitely not bashing anyone.

It took me many iterations to refine my process and most of it was trial and error. Nothing is magic and the icons and “behind the scenes” code could easily reside directly within Rhino.

Once things stabilize what might be helpful is an in-depth set of tutorials/Best Practices/Gotchas dedicated to customizing Rhino. Not tiny “help” snippets (creative programmers hate to document their cool things - I know, past life). It is evident that there are a number of experts within the community and it can only serve to help those just starting out.

For example:
If you want to create a single new toolbar/container with specific command tools from other stock toolbars (not the complete command set). Ie. Align Vert Center, Align Horizontal Center, 3 Point box, Align Dimension, etc…
Do the following:
1…
2…
3…

If you want to create a new toolbar/container with the Layer container on top and the properties container docked immediately below (not the cumbersome stock container that requires multiple mouse clicks using the side icons).
Do the following:
1…
2…
3…

If you want to create a new toolbar/container that contains only new user created custom button/macros.
Do the following:
1…
2…
3…

I’m sure this list would expand and those of us who have done it sometimes assume a level of comfort on the user side. I might even enjoy participating at some level.

One last comment is that SD sent me a note introducing IOS and Android specific versions that eliminate the need for hardware purchase (subscription or one time purchase). They have demo versions to try. I don’t have any affiliation with them nor do I have any experience with these version so I’m not recommending anything but it may be of interest to someone.

To McNeel: Thanks for Mac Rhino in whatever state it is and I look forward to its evolution.

Very cool workflow solution! I am
a big fan of backing up customizations too but am a what’s-under-my-fingers (keyboard) is faster kind of user. I have experimented with the TouchPortal app for iOS, a software based StreamDeck alternative with some success. Might be worth a look.

Yes, there are already a couple of dedicated Wiki pages for making toolbars and buttons that apply up to V7. For V8 they will need to be edited and added to. They are in the process of making V8 a bit more V7-like (concerning toolbars and how Windows V7 used to work), once that is done and I have some time I can do some of that. One problem is the wiki software they use is age-old and somewhat rickety to edit… but that’s what we have for the moment.