Jump to content

Matching A Camera To Target Surface

Recommended Posts

I'm trying to create camera that match projection cones (frustum). I'm betting @JBenghiat has an idea for this (Josh: I'd use projection Viz for this but I'm importing a ton of projection cones from a previz application and matching projector positions is proving to be tricky). 


For the purposes of showing my needs here, I'm using a very simple use case. 16x10 projection screen, .5:1 lens throw ratio, 0 H/V shift. 


I have a 16x10' target surface:



The black pyramid represents the projector cone:



I want to create a camera with a 1.6 ratio that looks just at that 16x10 target.


So, from 8' away, I want the camera framing to look at just that 16x10.'


Unfortunately the best I can do is this:image.thumb.png.2d2987593a7222496b6f1d77cdf236b1.png



Link to comment

The trick is to set the camera to an orthogonal view, otherwise you will be seeing the screen in a perspective like in your illustration.



Screenshot 2020-06-04 at 13.03.50.png


Edit: If you then switch your camera back to Perspective, the crop marks will stay the same, but the view in front and behind will be in perspective. Actually quite cool. Every day is a school day!

Edited by markdd
  • Like 1
Link to comment

@markdd I had that thought too, but as soon as you switch to ortho you can no longer set the aspect of the camera. Found a work-around though. Set camera ratio to custom 1.6, then switch to Ortho, then suddenly the aspect is there. 


Though now the camera isn't at the frustum tip:


Link to comment

Mine is. Check out the Object Information Palette in the screen shot I sent.


In Top/Plan, I set the camera ratio after placing the Camera object (custom 1.6) and also changed the beam angle to 90° which is what it would be at that throw. Then Set the Camera to Ortho.


Then I activated the Camera View. After I was happy that the crop marks matched the target object, I changed the view to perspective. The Plane that the camera is focussed on remains constant and the objects before and after a "perspectived" to a vanishing point at the centre of the camera's "aperture".


Enclosed is the file:

Camera Perspective setup.vwx

Link to comment

Ah-ha I got lost on setting the Z height for the camera instead of setting the camera height and look to height at the projector position height. 


Here's another one:

100% shift

Some pan

Some tilt



My starting point:

  1. Set the target green box as the working plane and save that as "target WP" (so I can easily check it against camera view)
  2. Set camera height to projector height
  3. Set look to height to center of projection field

So far so good, but: how do I tilt the camera down and rotate it to match? And dumb question: what is the Throw Ratio to FOV calculation?





Edited by trashcan
adding image
Link to comment

@trashcan There isn't currently an automated conversion from a ProjectionViz object, but there is a fairly simple workflow.


1. Insert a ProjectionViz object and match the projection cone. (If you're saying that you're having trouble with this, I can advise on that too.) Note the Spread Angle value under Lens and Image.

2. Insert a RW camera anywhere in the drawing.

3. Set the aspect ratio for the Camera.

4. Set the Camera's Field of View to the Spread Angle from PV.

5. Select the PV object and click the View from Projector button towards the bottom of the OIP.

6. Open the Cameras tab of the Visualization Palette. Right-click on the camera you added and select Match Current View.

  • Like 1
Link to comment



In a simple config I could easily enough match the PV object to the frustum. Here's the target area:



View from projector looks like so - not quite what I expected:



After clicking match camera as you described - I couldn't see anything at first so turned my projector into a locus point:



This process gave the right results with the odd part being that the view from projector wasn't showing what I expected. Or maybe that's correct? Either way got to the results I wanted on that use case. 


I imagine there isn't a way to accommodate shift (I.e., -50% Horizontal)? My guess is no because cameras don't work that way. 



When I have a target surface that is rotated on all three axes, I'm finding it difficult to match:


Normally, I would use the target as a reference point / working plane but that doesn't seem to work because it's a hybrid symbol. 


I was going to ask you how to calculate Lens to Spread Angle - but it looks like it's built right in to the Projection Viz Tool. What's that formula? Can't find it anywhere and am curious. 


Any ideas?

Link to comment

You may be seeing some of the projector geometry, which you can toggle in the various display settings.


If you're matching to lens shift, this can be tricky, as the shift effectively translates the image away from the view center. If you look straight at the image, it appears keystone. In the design layers you can work with this by going into File>Document Settings>Document Preferences, and turning on Cropped Perspective. This lets you set the view rectangle by dragging the corners of the view finder rather than via navigation tools, allowing you to pan the page without affecting the view.


For the rotated image, you can use the control points in 3D to set the projector and focus points (set projector height and location to lock). Holding down the B key to invoke X-ray mode will prevent you from snapping to the surface of the projector cones. A lens shift does make things a bit tricker. Then use the OIP slider to match the rotation.


Off the top of my head, the spread angle is 2*tan(lens_ratio)

Link to comment
1 hour ago, trashcan said:

Re: Rotating the image - I'm having trouble following that workflow - are you saying to use the rotate tool or work off that dummy plane I've created? 


Use the Rotation parameter in the Projector Focus section. Again, this can be tricky with lens shift, as the rotation is around the axis of the projector, not the center of the screen.


1 hour ago, trashcan said:

Re: Spread angle 2*.5 = 1?


That's what I get for doing it from memory. The spread angle is:

arctan(.5 / lens_ratio)

If your calculator gives you radians, multiply by 57.295827909

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...