A complete UI overhaul of Rhino would be a much welcomed move


(Toshe Andonov) #167


Honestly, each time I come on this thread I’m on the verge of having an aneurysm.

It seems to me I’ll have to learn to live with the fact that the Rhino is stuck in 2002 regarding it’s UI.
Let’s see how far it can drag itself in this broken shell, while everyone else follows new design principles and adapt to new input technologies.

(Nathan 'jesterKing' Letwory) #168

if you like that sorta stuff you should - for fun - read through the gazillion UI threads over at blenderartists.org (:


I agree! Those are fun read!
No one is ever going to design a UI that everyone likes, so just make it so it can be customized however you want is best answer.
Fact that you can run Rhino without even seeing Rhino, or just use viewport and draw your own customized whole UI around just viewport to make your own app and app space is best customization I’ve seen for apps, and in future with rhinoinput you can never even deal with rhino locally at all will be amazing.
I guess that is why I answered original OP that if made their own custom UI of forms, controls, dialogs, colors, keys, menus, whatever and it was popular, I would think McNeel would just have it as hyperlink option to use during install.
During my time working with McNeel on using Rhino in multiple ways they have always made it super easy to use as little or as much of the Rhino UI to use Rhino as user wants.


…but…this discussion hasn’t actually been about UI/UX deisgn at all, it’s been 99.9% about graphic design dressing, fluff. An actual UI Design topic would be “How do we help users understand what the Hell NURBS are and how they should be used, since as you can see from questions asked here all the time, there are people who have been using the product for years and obviously don’t understand the basics?” I don’t see “Make Rhino look like Photoshop/etc” doing much to help that, nor is it even a good approach to even to the problem of making it look more up-to-date.


I was thinking that the answer to this question posed by OP is that capabilities already exists, via rhino skin,rhino options, and rhino sdk. The tools are already there and in some industries are already used to make custom UI around Rhino right now.


Yep - Matrix and Rhinogold to name two…

(Tom) #173

well, I always have been critical here regarding changing the UI. I even said its not that bad at all. For windows its just looking a bit old. My assumption was that this is the most common denominator here in this discussion. But if people not even share that thought… (And I was more on the leave it like this side)

Changing the UI style is very limited, since its very difficult to create a consitent color scheme if icons just work with a light blue background. And Layer background color depends on windows settings. Thats actually not good. I said it already, you can basically create your own gui, to a certain degree. Which is good, but practical nobody will do this, thats another fact. Maybe using Forms/Eto is not the best choice in days of Qt or WPF

(jesterKing) #174

Eto.Forms is WPF on Windows. The problem is more that most of the UI is still oldschool MFC

(Tom) #175

Oh didn’t know that. Thanks for the information. I always assumed Eto.Forms is platform independent WinForms (I guess the name is confusing). I also assumed Rhino6 already is build with Eto.
MFC and WinForms are visually not very different.

But then Rhino Mac is obviously not MFC but Eto instead? That might explain the difference between Mac and Windows users, since Rhino Mac already is based on a modern GUI Framework.

Edit: On Mac its Xamarin.MonoMac or Xamarin.Mac, Linux its GTK# on Windows it can mirror both: WPF and Forms

(Nathan 'jesterKing' Letwory) #176

We’re in the progress of (re)writing sizeable portions of the UI using Eto.Forms so that we can have features working on both Windows and Mac. The current Rhino Mac WIP already hosts a lot of that. On Windows we still use mostly MFC, but the work done by @maxsoder brings a lot into Eto.Forms. I’d imagine that sometimes after the Rhino Mac v6 version is released we’ll see more of an effort of actually switching the UI to the Eto versions that already exist.


Would setting up an interface like rhinogold via the methods you mention be straightforward (only skin for existing commands, no new functions).
Not expecting WYSIWYG, a very simple working template that could be modified and expanded upon would be ideal. Maybe a few example snippets of code as a minimum to get people started?

(Nathan 'jesterKing' Letwory) #178

Perhaps not thick in information, but here is a .NET starting point:

and a sample skin project:


Thanks for googling that up for me :disappointed_relieved:


I know it’s not really your point,is but here I am squeezing my Google phone and asking Google what day of the week my partners birthday lands on this year. “Look Jim no keyboard” ,:wink:


I’m looking for that dislike button :stuck_out_tongue_winking_eye:


Only thing I could add to the conversation here is the SMALL group of things I’D like to see -

Change Selection to favor the item ON TOP, then go in descending order deeper into the assembly as you cycle through the list. This sets a preference for items more likely to be visible, thus selectable DEPENDING on the CURRENT point of view. Simple, right ? Guess not.

change the color inside each command ICON to color-grouping by general function instead of ALL “Blue” as in RH-5 & 6, current image ok, just color-base for the ICON - ALL BLUE ?

Add in-viewport tool-tips for objects pre-selection that would include things like basic info- like object type (closed polysurface/Solid, Layer, Material, Line Length, Circle Radius or Diameter etc), and a set of commands to run on the item, with the ability to also select inside the small list presented, to change a value. Yes we can go over to the [Properties] tab ( I dock mine along the right-side of my viewport) but a SMALL nearby pop-up box with a few commands, and a few changeable properties handy …

by-selected component right-click command selection, with CTL-RT-Click for MOST Recently used Commands list if no object currently selected. Currently a Right-Click SELECTS !!! Seriously ?!?

I ALREADY group my favorite commands ICONS into the OSNAP Toolbar and set that as my middle-button pop-up so I DON’T have to go menu-hunting or Tool-Bar hunting when I want to do something “next”. Its HERE that I’d LOVE to be able to tell my command “groups” apart by color, but it’d be useful (read: HUGELY HELPFUL) here AND other places, too.

This might reduce the need for EXTENSIVE (read cumbersome AND expensive) overall UI overhauls ( BIG answer a BLACK background? Seriously? ;-)) ! ), as such a simplified solution like this would obviate any need for such extensive overhauls, simplifying the WFP (Work Flow Process) process of finding commands and USING them … .

Add to that simplifying the process of creating custom operations and macros to a custom “Command” ICON, and we might HAVE something !

Ok, ALL the VERY BEST to ALL - Chuck.



Or make cycle through overlapping objects (ie when trying to select vertically stacked solids or curves we just get a menu that says ‘curve’ ‘curve’ ‘curve’ currently right?
(Note, this functionality is present in another software and its used almost as much as LMB)


Prehabitat -

Hi !

We already cycle-thru, and (with RH-6) we AT LEAST get a color “hint” which part we’ve cycled to. Yeah I agree, tho, its still cumbersome :wink: !

SOMETIMES the intended item is the one most recently created, and that HELPS putting it at the top of the list, but really, if they CAN select on which handle is most recent in the database, they SHOULD be able to select similarly and START wit the one on TOP. We’ve been asking for this since RH-3, with SOME dim recollection that folks were asking for it at RH-2x, but I started right at the new release of RH-3, so my DIRECT knowledge only goes back that far.

Thanks bud - and good LUCK !



I didn’t know we can cycle through! Is it key based? Or menu?

(Wim Dekeyser) #186

Hi - I’m not sure I understand the question here. You can cycle through the selection menu with the left mouse button. You then accept the selection with the right mouse button.