How to rotate/flip camera view

Does anyone know how rotate a camera along it’s target axis (e.g. Cplane–>View)? I’ve tried pressing F6 and rotating the camera in the model, but it ended up off by a few degrees - it didn’t look like an accurate way to rotate it.


r

Hi Daniel - off hand I do not see a way to do this conveniently from any view in plain Rhino. I can make you something in Python I think.

@Daniel_Krajnik - see if this does the right thing -

FlipCamera.py (216 Bytes)

To use the Python script use RunPythonScript, or a macro:

_-RunPythonScript "Full path to py file inside double-quotes"

-Pascal

1 Like

@pascal thank you, if you could that would be tremendously helpful. I’m setting up sections and I couldn’t find a way to flip them other than SetView—>CPlane—>and setting an opposite view, which also requires resetting positon, scale, CPlane each time etc.

It works! Amazing, thank you - that was incredibly fast.

One, very minor issue I’ve found is that the camera didn’t stay on the same height, please see the dashed line at the bottom showing the 0 site level. But that’s an easy fix here really.

Before flipping:

After flipping:

hmmm - I’ll poke at it… you are using this in a parallel view, correct?

-Pascal

Yes, that’s correct. Please don’t feel necessitated to solve this, it has been already a tremendous help!

Hi Daniel - I do not see that here so far - if you like, send me an example and maybe I can figure it out.

-Pascal

Sure, I’ll send it within an hour or so.

Please see the .3dm file below. Shows the same (very minor) issue with the heights of the flipped cameras.


Untitled.3dm (165.3 KB)

@Daniel_Krajnik - it looks like your camera is not exactly horizontal -
image

-Pascal

1 Like

Of course, that explains it :sweat_smile:

Thanks again!

@pascal this should be a separate question, but I just discovered that moving these handles in the detail view rotates the view instead of panning it - do you know if there is any way to stop this behaviour? That’s why the view I’ve sent wasn’t parallel.

I think that it’s one of those tricky problems to find only until it’s too late…

EDIT: I’ve opened a separate thread for this issue: Make Camera Target follow Camera Position in Parallel Mode Detail View

I’ve done a few more tests and it seems to me that even though cameras’ target/position changes, the Parallel views in Rhino are still parallel - however when running FlipCamera.py script, which I saw calculates new vector based on these camera target/position values, it arrives at a non-parallel view.

Hi Daniel - not seeing this so far here…

-Pascal

Please see the sample file and screenshot below to illustrate an extreme case:
Flip-sample-distortion-test.3dm (149.3 KB)

To replicate:

  1. in layout create a detail view
  2. Set it to Parallel
  3. Stretch the viewport sideways, up and down (the more the more extreme effect)
  4. RunPythonScript FlipCamera.py
  5. In effect the new view will end up distorted even though the original was still parallel (to the camera).

Rhino 8 WIP (8.0.22291.12305, 2022-10-18)

I see - stretching the detail skews the frustum -

image

I’ll see if I can take that into account…

-Pascal

1 Like

Thanks, it seems like a complex task, so I’m also okay if it’s just not possible this time.