SoReversePerspectiveCamera.3coin4 - Man Page

The SoReversePerspectiveCamera class defines a camera node with reverse perspective rendering.

Synopsis

#include <Inventor/nodes/SoReversePerspectiveCamera.h>

Inherits SoPerspectiveCamera.

Public Member Functions

virtual SoType getTypeId (void) const
Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and 'downward' casting.
SoReversePerspectiveCamera (void)

Static Public Member Functions

static SoType getClassTypeId (void)
static void initClass (void)

Protected Member Functions

virtual const SoFieldData * getFieldData (void) const
virtual ~SoReversePerspectiveCamera ()

Static Protected Member Functions

static const SoFieldData ** getFieldDataPtr (void)

Additional Inherited Members

Detailed Description

The SoReversePerspectiveCamera class defines a camera node with reverse perspective rendering.

For realistic looking 3D scene, the geometry should be rendered with perspective calculations. Use this camera type to accomplish this.

Reverse perspective rendering, a special case of perspective rendering, is where the projection rays do not converge in the eye of the observer, but instead at a point behind the scene. Thus objects farther away from the observer appear larger than closer objects. A reverse perspective projection is defined by

·

setting the perspective camera position to the projection point behind the scene

 ·

setting near / far distance to negative values

·

rotating the camera orientation by 180 degree around the camera z axis to compensate the image flip induced by the negative near / far values.

The view volume of the default reverse perspective camera is defined as shown below.

FILE FORMAT/DEFAULTS:

ReversePerspectiveCamera {
    viewportMapping ADJUST_CAMERA
    position 0 0 -10
    orientation 0 0 1 3.14159
    nearDistance -10
    farDistance -1
    aspectRatio 1
    focalDistance -6
    heightAngle 0.78539819
}

Constructor & Destructor Documentation

SoReversePerspectiveCamera::SoReversePerspectiveCamera (void)

Constructor.

SoReversePerspectiveCamera::~SoReversePerspectiveCamera () [protected], [virtual]

Destructor.

Member Function Documentation

SoType SoReversePerspectiveCamera::getTypeId (void) const [virtual]

Returns the type identification of an object derived from a class inheriting SoBase. This is used for run-time type checking and 'downward' casting. Usage example:

void foo(SoNode * node)
{
  if (node->getTypeId() == SoFile::getClassTypeId()) {
    SoFile * filenode = (SoFile *)node;  // safe downward cast, knows the type
  }
}

For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine.h (for engine classes) and so on.

For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups.

Reimplemented from SoPerspectiveCamera.

const SoFieldData * SoReversePerspectiveCamera::getFieldData (void) const [protected], [virtual]

Returns a pointer to the class-wide field data storage object for this instance. If no fields are present, returns NULL.

Reimplemented from SoPerspectiveCamera.

Author

Generated automatically by Doxygen for Coin from the source code.

Info

Sat Aug 1 2020 Version 4.0.0 Coin