Scroll wheel zoom with fixed camera target

Hi,

is there a way to keep the camera target unchanged while using the mouse scroll wheel zoom?

What I am trying to do is the following: I select a target (a point for example) and choose [Zoom selected]. Now I can orbit around that target and it stays fixed in the center of the window. Perfect. But now I want to zoom in or out and again orbit around that target. But while zooming in or out the camera target values change depending on where my mouse pointer is. After zooming it is therefore not possible to exactly orbit around the previously set target.

I would appreciate if there was a way to zoom in or out using the mouse scroll wheel while pressing [ALT] or [STRG] or [SHIFT] and lock the camera target while doing so. Maybe there is a setting to enable this - I could not find anything, although I think it would be super useful for ALL Rhino users.

Kind regards,

Oliver

The “Page up” and “Page down” keys on the keyboard could do that, although you asked for the mouse wheel…

Thanks for that tip - I didn’t know that before. The behaviour is exactly what I was looking for.

However, having exactly that [Page up] / [Page down] zoom behaviour on the mouse scroll wheel (plus holding down a key) would probably be a great improvement for Rhino (version 6,7,…8) I think - and it should be super easy to implement.

1 Like

Yes, some programs allow you to hold a keyboard key to alter the behaviour of the mouse wheel to zoom-in and zoom-out. Others let you choose one of the two options from the settings, without the need to hold a keyboard key.
With regards to Rhino, I think that it will be best to do the following:

  1. Allow the user to choose the default way to zoom-in and zoom-out with the mouse wheel: a) the current implementation with variable zoom target that follows the mouse pointer on the viewport; b) an alternative zooming where the target is locked to the center of the viewport OR uses the current camera target or rotation.

  2. Holding a key (Ctrl, Alt or Shift) should let the user to temporarily swap the way the camera zoom-in and zoom-out works with the mouse wheel.

Yes - I completely agree. Both would be great!

Regarding 2.) I made up my mind and now think that using the [ALT] key is probably not such a good idea since it toggles the menu, but using [SHIFT] or [STRG] should be good.

Don’t know how to propose that to the dev team. Or will they find this conversation automatically?

The “McNeel” team is actively taking part of the discussions here. What’s more, they are a great example of developers who actually listen to their customers and in many occasions consider and approve their requests for adding newly proposed features in future releases of the program. Open and friendly customer service is one of the several important reasons why I love Rhino so much.

In my opinion, it would be best to assign the swap function for the two versions of the zoom-in and zoom-out functionality to the Ctrl key, because it’s located at the very end of the keyboard (easy and convenient to reach); plus, it’s not actively used as a modifier during modeling or selection.

In comparison, the Shift key is less appropriate, because it’s commonly used, both, as a modifier for “Ortho” and to add objects to the selection. Alt is also less appropriate, because it’s used to temporarily enable or disable the “Osnap” function.

Hi Oliver - I’ll see what the developer thinks of this - as is, do not think it is implemented anywhere but I’ve forgotten about features before… My guess of the moment is that the way modifier keys are in Rhino it may not be possible to use one for this but it may be possible to toggle the behavior via a command or macro.
RH-62003 Dynamic Zoom: keep the current target
Meantime, in case it helps, I use Zoom > Target all the time in Rhino (replacing the built-in Zoom > Window macro for Z + Enter) to always reset the target as needed.

-Pascal

1 Like

You may also try the following script that @pascal did a while ago. Its goal is to straighten the view so that the object is always shown parallel to the horizontal axis X or Y. It’s very handy in situations were you need to make screenshots or renderings of cars, buildings, wooden furniture or other objects that need to be exactly parallel to the X or Y axis. I named the tooltip of the icon I use for it “Straighten view”, even though the script’s original name is “View setter”.
ViewSetter.rar (711 Bytes)

I don’t remember what fancy stuff that script might do but a macro is maybe good enough-

-_ViewportProperties _Rotation 0 _EnterEnd

-Pascal

Thank you for the tips and also for submitting the proposal to the feature wishlist.

Pascal, your script ViewSetter.py does wonders (with some minor bugs if the camera is too inclined vertically). Let me show you.

From this random angle I activate the script and it does its magic…

… and so the view gets perfectly straightened, while the center of the scene also shifts horizontally to the middle of the viewport.

Ah yes…

-Pascal

Just tried Rhino 7.4 and the newly introduced fixed zoom while holding the Ctrl key works wonderfully. :slight_smile:

what about view rotation @pascal? we need some love there to with the camera target. making an option to always have shift + ctrl + rmb rotation active would be awesome. :wink:

Thanks for letting me know - it seems it is already implemented in 7.3. - but I didn’t realize before.

I really like how it works now - hopefully others will love it as well.