Functions
Set_Camera_Field

Functions

void Set_Camera_Field (double width, double height)
 After the viewing "camera" has been positioned, adjusts the width or height of the total field of view. More...
 
void DSet_Camera_Field (double width, double height)
 Similar to Set_Camera_Field(). This command should be used in conjunction with other double-precision Set_Camera functions. More...
 

Detailed Description

Function Documentation

void DSet_Camera_Field ( double  width,
double  height 
)

Similar to Set_Camera_Field(). This command should be used in conjunction with other double-precision Set_Camera functions.

Parameters
width- The width, in object coordinates, of the largest rectangle that should just fit on the screen or in the current Window.
height- The height, in object coordinates, of the largest rectangle that should just fit on the screen or in the current Window.

DETAILS

No additional details. See Set_Camera_Field()

void Set_Camera_Field ( double  width,
double  height 
)

After the viewing "camera" has been positioned, adjusts the width or height of the total field of view.

Parameters
width- The width, in object coordinates, of the largest rectangle that should just fit on the screen or in the current Window.
height- The height, in object coordinates, of the largest rectangle that should just fit on the screen or in the current Window.

DETAILS

Set_Camera_Field() should normally be called in conjunction with Set_Camera_Position() and Set_Camera_Target() . (An alternate method of determining what you're looking at is to call Set_Camera_By_Volume() .) Set_Camera_Field() determines how much of the area around the camera target will end up being visible on the screen. If you are working in 3-D, and if you have requested a perspective view, specifying a Camera Field can be thought of as deciding whether to use a wide-angle, normal, or zoom lens. Once you've "chosen a lens", relative adjustments can be made by calling Zoom_Camera() .

NOTES

If there is no Camera set up already in the segment, Set_Camera_Field() will create a default camera (-1 to +1, etc.) and then adjust the field. The owning segment's camera is ignored, so it's advisable to always do your camera work in the same segment.

The field is stored internally as an angular field-of-view immediately upon receipt, and held constant as an angle through subsequent camera movements. This keeps your lens from accidentally turning itself into a fish-eye as you walk up to your target.

If the screen window that the view is to appear in has a different aspect ratio than the camera field, you'll just see a bit more of your scene on the left and right or bottom and top than you would otherwise. The field of view is normally scaled symmetrically to fit on the screen. You can force the view to be warped to make an exact fit into the window by asking for a "stretched" Camera Projection.

Set_Camera_Position() and Set_Camera_Target() make automatic adjustments in the Camera Field. If you're using either of these routines together with Set_Camera_Field(), the Field request should placed after the others.

Set_Camera_Field() actually calls Set_Camera() to do its work.

RESTRICTIONS

See also
Set_Camera, Set_Camera_By_Volume, Set_Camera_Position, Set_Camera_Projection, Set_Camera_Target, Set_Camera_Up_Vector, Zoom_Camera, Orbit_Camera, Pan_Camera, Dolly_Camera, Roll_Camera, Set_Window, Translate_Object.