Options Dialog, Worksession manager dialog, block manager dialog … any time a Dialog uses Windows API the viewports are locked. All of a sudden a windows API dialog allows viewport operations, breaking the consistency.
Is there anyone at McNeel that applies ergonomic principles for UI consistency on these things ?
Only Panel dialogs allow viewport operations, like the UV editor.
Yes, good idea! Let’s try to generalize a bit.
So, the Block Manager becomes a non-modal, dockable panel. It shows a list of all blocks and nested blocks as a tree view(!). It could be combined with the BlockEdit mode. If a block in the list is double-clicked, edit mode is entered. The functions of BlockEdit (Add, Remove, SetBasePoint) are part of this new panel, as well as some new functionality (selecting all instances of a block, creating duplicates, filtering, sorting, drag&drop, …)
Actually, groups could be listed in there, too.
To generalize even more:
Most 3d applications (and some 2d, like Affinity Designer) have some sort of ‘Scene Explorer’ / ‘Outliner’, or whatever it’s called, where the complete scene is shown in list form, in a tree view, with parent/child relations (which Rhino doesn’t have, at least without Bongo). How about getting inspired by those? Did McNeel ever plan such a thing?
As cool as Rhino is, there’s sooo much potential for a more modern, consistent user interface, away from that chalky 90ies-CAD-look&feel. Sorry for drifting off…
I was thinking there wouldn’t even need to be a BlockEdit mode. You would toggle some UI on the panel to unlock a block so it acted like separate individual pieces of geometry. Make some changes and then lock the block back up.
We’ve talked about this off and on over the years.
Fair enough. However, sometimes it’s good to see the rest of the scene too, for attaching stuff.
Maybe there’s an option for color/transparency for everything outside the block (isn’t there already?).
I’d also like to see columns in that panel showing the quantity (i.e the number of instances) of each block , perhaps indented to show nested block quantities and/or scaled variants. Then an export button to save out a WYSIWYG version of the panel as csv or similar so that it can be brought into Excel etc.
As far as Block editing goes, a lot of what’s being discussed here is, for me, very reminiscent of Pascal’s legendary scripts Isolate and IsolateLock. Sometimes one wants to declutter the viewport and see the contents of the block on its own, without the rest of a complex model getting in the way. Other times it’s essential to be able to reference surrounding geometry when revising a block, without actually bringing that geometry into the Block (equivalent of IsolateLock).
Perhaps a pop-up when a Block is double clicked, asking if you want to open in a new Rhino or edit in place?
To identify Blocks (top level ones, at least) with broad brush strokes, make them highlight in a different colour to ‘normal’ geometry when they are picked or window-selected.
Dear @stevebaer i would love to have a simple layer-visibility option / command (a command, maybe in block-Edit, maybe in Layerstatemanager, maybe in the block-instance-property panel…):
→ isolate and show all layers, that contain geometry that belong to the block-definition.
(this should show parent layers of course…)
I would suggest adding an extra OSNAP called INSert (like in AutoCAD since version 10) which can snap to Insertionpoints of Blocks, Text and worksession-files. Also it would be nice to enable a “show direction” vector to be turned on/off on blocks. Non-rotated blocks would have that vector pointing in the direction of the X-axis of the CPlane used when it was created or inserted.