SoPerspectiveCamera.3iv - Man Page

perspective camera node

Inherits from

SoBase > SoFieldContainer > SoNode > SoCamera > SoPerspectiveCamera


#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:


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


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.


SoSFFloat heightAngle
Vertical angle of the viewing volume.


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