Scroll to navigation

SoPerspectiveCamera(3IV)() SoPerspectiveCamera(3IV)()

NAME

SoPerspectiveCamera — perspective camera node

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoCamera > SoPerspectiveCamera

SYNOPSIS

#include <Inventor/nodes/SoPerspectiveCamera.h>


Fields from class SoPerspectiveCamera:


SoSFFloat heightAngle


Fields from class SoCamera:


SoSFEnum viewportMapping

SoSFVec3f position

SoSFRotation orientation

SoSFFloat aspectRatio

SoSFFloat nearDistance

SoSFFloat farDistance

SoSFFloat focalDistance


Methods from class SoPerspectiveCamera:


SoPerspectiveCamera()

static SoType getClassTypeId()


Methods from class SoCamera:


void pointAt(const SbVec3f &targetPoint)

virtual void scaleHeight(float scaleFactor)

virtual SbViewVolume getViewVolume(float useAspectRatio = 0.0) const

void viewAll(SoNode *sceneRoot, const SbViewportRegion &vpRegion, float slack = 1.0)

void viewAll(SoPath *path, const SbViewportRegion &vpRegion, float slack = 1.0)

SbViewportRegion getViewportBounds(const SbViewportRegion &region) const


Methods from class SoNode:


void setOverride(SbBool state)

SbBool isOverride() const

SoNode * copy(SbBool copyConnections = FALSE) const

virtual SbBool affectsState() const

static SoNode * getByName(const SbName &name)

static int getByName(const SbName &name, SoNodeList &list)


Methods from class SoFieldContainer:


void setToDefaults()

SbBool hasDefaultValues() const

SbBool fieldsAreEqual(const SoFieldContainer *fc) const

void copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)

SbBool set(const char *fieldDataString)

void get(SbString &fieldDataString)

virtual int getFields(SoFieldList &resultList) const

virtual SoField * getField(const SbName &fieldName) const

SbBool getFieldName(const SoField *field, SbName &fieldName) const

SbBool isNotifyEnabled() const

SbBool enableNotify(SbBool flag)


Methods from class SoBase:


void ref()

void unref() const

void unrefNoDelete() const

void touch()

virtual SoType getTypeId() const

SbBool isOfType(SoType type) const

virtual void setName(const SbName &name)

virtual SbName getName() const

DESCRIPTION

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.

FIELDS


SoSFFloat heightAngle

Vertical angle of the viewing volume.


METHODS


SoPerspectiveCamera()

Creates a perspective camera node with default settings.



static SoType getClassTypeId()

Returns type identifier for this class.


ACTION BEHAVIOR

SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoHandleEventAction, SoRayPickAction

Sets the viewport and camera information in the state.


FILE FORMAT/DEFAULTS

PerspectiveCamera {

viewportMapping ADJUST_CAMERA position 0 0 1 orientation 0 0 1 0 aspectRatio 1 nearDistance 1 farDistance 10 focalDistance 5 heightAngle 0.785398
}

SEE ALSO

SbViewVolume, SoOrthographicCamera