IsolateToViewports is counterintuitive

Testing out the _IsolateToViewports for the first time, and it works way differently than what I expected it to do. The expectation was that the command would provide a method for isolating a single object for modification in scene that is cluttered with object.

Expected:
It ISOLATES (as in _isolate) the selected objects in that viewport only.
(Expected behaviour simulated here with a macro.)

Reality:
It HIDES the selected object from other viewports.

Also, I’m missing a corresponding _Show / _ShowInDetail command that resets the scene.

I think the concept of the command is super usefull, but currently with the weird names and missing functionalities, it’s missing the mark. IMO the available commands should duplicate these guys in viewport level.
kuva

We have usefull _HideInDetail, _ShowInDetail and _ShowSelectedInDetail (why not _IsolateInDetail?)
I would expect to have _HideinViewport, _ShowInViewport and _IsolateInViewport that work similarly.

Hi Toni -

Thanks for taking the time to provide feedback on this new feature!

I think there are more of us that aren’t very happy with the names of the commands. Every time I see the command names I need to start parsing the word to figure out its functionality. When they were introduced, I quickly made keyboard aliases that I remember the function of and probably don’t look at the actual command names often enough…

Anyway…

As you found out, that’s not what it does.

Yes, it isolates the “existence” of the object to the selected viewport(s).

You don’t mention that macro…
And from:

… I take it that you didn’t use the HideInViewport command.

For your purpose, the macro would be:

Select Pause Invert HideInViewport EnterEnd

I’m not sure if that means that you didn’t find the UnisolateFromViewports command?

To me, the one important part that is missing in this feature is a way to make an object visible again in a certain viewport without having to chase down where that object is still visible in a viewport or detail somewhere. To me, it wouldn’t be ShowInViewport as that would show all objects that have been isolated from a viewport, but a more selective ShowSelectedInViewport that, just like the ShowSelected command, would only show everything that was isolated from the active viewport and let you select which objects to make visible again.
That request has been on the list for a while: RH-89994 IsolateToViewport: UnveilIsolated
-wim

Hi Wim,
I a big fan of first impressions when it comes to functionality. Like, how you preceive it before you learn to cope with the workarounds and inconsistencies.

First off, the icons are missing for the “viewport” set , and the existing icon is missleading at best.

I found this one. It was listed here as an example part on a complete set.

I did find this, but I dod not realise the AllFullyHiddenByIsolation option. And I’m still missing the “reset scene” option.

I used similar macro. Why isn’t this a command?

I have the feeling (now again as a long time user, but first-time impression of the new functionality) that all the pieces are there for an incredible new working method - but the UX is terrible. The possibility to hide layers and objects in details have simplified printing setups on multi-layout prints tremendously. I feel this has a similar potential to assist modelling in complex scenes. I mean I use basic _Hide and _Isolate (coupled with selection by Key/Value) a lot on models with 100.000+ parts. These methods would complement current working processes nicely. But the “viewport” commands need a harmonisation step to match with the legacy stuff.

Exactly this.

@wim

Come to think of it, here’s my suggestion to the set.

_IsolateInViewport: "Select objects to isolate in current viewport" (Type=Isolate/HideFromOtherViewports Mode=Single viewport/Multiple viewports)

_HideInViewport: "Select objects to hide in current viewport (Mode=Single viewport/Multiple viewports)"

_ShowInViewport "Select viewport to show all objects" (ShowAll Mode=Single viewport/Multiple viewports)

_ShowSelectedInViewport "Select objects to show" (Mode=Single viewport/Multiple viewports)

I also think that the naming is confusing. It should isolate the selected object(s) in the active viewport and hide the rest objects only in the active display.

I haven’t tested this as I use Rhino 7, but from what I read, this new command is acting like “Hide the selected object from the rest viewports”.

This is a very accurate definition based on my brief experience.

RH-89994 is fixed in Rhino WIP

Hi Toni -

Have you had a chance to review the changes in the “in-viewport” visibility workflow?
A lot of the rewrite was based on your feedback, so I’m hoping this is useful as it is now.
-wim

Hi @wim
thanks for pinging me, appreciate it. I had a look.

  1. As a non-native it is hard to understand the subtle difference between _IsolateInViewports and _IsolateToViewports command. It is great that the “in” version works as I would assume it does. However, it was 50/50 trial and error for me to pick the correct one, until I got it fully memorized.

I would like to point out that actually the command _HideInViewports contains both commands already in it’s options. You can replicate both cases with this one, and the command line option text is quite understandable. Are the 2 Isolate-commands even necessary after the Hide command works so nicely..?

BUT - the options go missing if you have a preselected set! I think it should work the same on either case.

  1. _ShowSelectedInViewports tells me that “All selectable objects are already visible in the currently active viewport.”. The _ShowInViewports and _UnisolateFromViewports should tell the same info.

  2. I had some trouble in “resetting” the situation. The _UnisolateInViewports did not work as expected. Also did not the AllFullyHiddenByIsolation.

EDIT:
Rhino updated to 9.0.26237.15343 after closing, and AllFullyHiddenByIsolation seems to work now better

Hi Toni -

Sorry about that, both IsolateToViewports and UnisolateFromViewports are left-overs from the first round of the in-viewport visibility. They should be removed (or at least be turned into a non-autocompleting test command).

The list of commands is now:

  • HideInViewports & ShowInViewports
  • IsolateInViewports & UnisolateInViewports
  • ShowSelectedInViewport

Apart from those that either show or hide objects, the SelIsolated command lets you check if there is a visible object in the active viewport that is invisible in other viewports.
-wim

Ok @wim, thanks for the clarification. I’ll recaliber my thoughts based on this.

FYI - the both “left-over” commands are now the only ones present in the Visibility toolbar.

  1. The _HideInViewports works as expected. I would prefer that the Options would be visible even with a preselected set.

  2. It’s nice to note that Ctrl+A works only on visible objects on the active viewport.

  3. I would expect that _SelIsolated would then work a bit differently. If only active VP has objects hidden, nothing gets selected. Although I undestand the logic, but it would be tremendously helpful if objects hidden to that VP would get selected on other VPs.

  4. All commands that ask you to select a VP (‘Enter for active only’) should have the option “All vieports”. It would prevent to click 4 separate VPs.

  5. _ShowSelectedInViewport should allow to change the active viewport during the command active. Or in other words - as I change the active VP during the command, the object visibility should update.

  6. _UnIsolateIn Viewports does not work for me at all. Nothing happens

  7. The mindblow moment was when I realised that this works in Details as well! This opens up a whole new possibilities in creating part/assembly drawings for instance directly from the model. I can isolate a set right in the 3D-position, without the need to copy it somewhere empty space or another file.

EDIT redaction

In the wake of no7 realisation, I think you guys have a real winner here, in terms of what this could mean to drawing production process. Similar to what the ‘hide layer in detail’ did. Throw some resources into this - I’m afraid now that my isolated (pun unintended) view on this is not woefully enough for such a potentially important addition.

After my initial excitement, I realised that we already have _HideInDetail command. _ShowInDetail and _ShowSelectedInDetail do not work for me at all (Rh8 SR34)! I am able to hide objects in detail but not to bring them back.
IMO you could merge the HideInDetail and HideInVieports commands, as they offer similar functionalities.
And as a long-time user, I would expect the same clarity and function set as these. They are super uselful and easy to understand.
kuva

This is pretty cool. With a small macro I can popup a separate edit window for an isolated object.
For easy, non-cluttered editing.

_NewViewport
_ToggleFloatingViewport
_SetView
_World
_Perspective
_IsolateInViewports _Enter
_Zoom
_Selected

Hi Toni -
Thanks for the continued feedback on this!

RH-98431 Toolbar: Update In-viewport Visibility Buttons

RH-98432 In-Viewport Visibility: Expose Option with PrePicked Objects

RH-98433 In-Viewport Visibility: Enhance ShowSelectedInViewport

There is way too much going on in that video for me to be able to follow along.
Select an object and run IsolateInViewports with Enter.
Run UnisolateInViewports with Enter.
That doesn’t work?

They are mostly merged but I’m hesitant to take the InDetail commands out. They are a bit simpler when you only have to think about that one detail that you are working in.

From that video, that part could probably be replaced with

NewFloatingViewport Enter

-wim

It does work now. I could not replicate the error anymore.

  1. The “Selected” dot is behind selected/highlighted objects.

  2. My testing with isolated popup viewport brought forth an interesting dilemma (this might concern detail objects as well). Closed viewports’ isolated objects are remembered in _SelIsolated, even though the viewport does not exist anymore. And overall the working of this function is not consistent.
    As I’m testing broadly everything, it’s hard to get a grasp on how this command should function…


    Button:

NewFloatingViewport Enter
-ViewportProperties Size 1500 800 Enter
IsolateInViewports Enter
Zoom Selected

I really see this ‘isolate’-command set as a huge possible improvent in model documentation. With a little python, I have been able to create hundreds of layouts with views on the 3D-model and hidden layer sets per detail. Currently I have to copy all geometry to a blank file and space, but I could easily see the option to have the 3D-model as is.


In that sense, I truly hope that this fully supports worksession geometry, and the possibility to save this information in a worksession-file (.rws) as well. Otherwise it becomes just a modelling aid, not a documentation aid.

RH-98432 is fixed in Rhino BETA