Class SoPerspectiveCamera

All Implemented Interfaces:
SafeDisposable
Direct Known Subclasses:
SoStereoCamera

public class SoPerspectiveCamera extends SoCamera
Perspective camera node. A perspective camera defines a perspective projection from a viewpoint. The viewing volume for a perspective camera is a truncated right pyramid.

By default, the camera is located at (0,0,1) and looks along the negative z-axis; the position and orientation fields can be used to change these values. The heightAngle field defines the total vertical angle of the viewing volume; this and the aspectRatio field determine the horizontal angle.

See the base class SoCamera for more information about the inherited fields.

Useful algorithms for manipulating a camera are provided in the SoCameraInteractor class.

File format/default:

PerspectiveCamera {

    viewportMapping ADJUST_CAMERA
    position 0 0 1
    orientation 0 0 1 0
    aspectRatio 1
    nearDistance 1
    farDistance 10
    focalDistance 5
    blur 0
    exposureMode LINEAR
    exposureCompensation 0
    heightAngle 0.785398
}

Action behavior:

SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoHandleEventAction, SoRayPickAction
Sets the viewport and camera information in the state. Sets: SoFocalDistanceElement, SoProjectionMatrixElement, SoViewportRegionElementSoViewVolumeElement, SoViewingMatrixElement

See Also:
  • Field Details

    • heightAngle

      public final SoSFFloat heightAngle
      Vertical angle of the viewing volume.
  • Constructor Details

    • SoPerspectiveCamera

      public SoPerspectiveCamera()
      Creates a perspective camera node with default settings.