table of contents
| 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 ®ion) 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