Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

nvsg::PerspectiveCamera Class Reference

A perspective camera. More...

#include <PerspectiveCamera.h>

Inheritance diagram for nvsg::PerspectiveCamera:

Inheritance graph
[legend]
Collaboration diagram for nvsg::PerspectiveCamera:

Collaboration graph
[legend]
List of all members.

Public Methods

virtual NVSG_API const PerspectiveCamera * clone (void) const
 Create a clone of this PerspectiveCamera. More...

NVSG_API float getFieldOfView () const
 Get the field of view (fovy). More...

NVSG_API void setFieldOfView (float fov)
 Set the field of view (fovy). More...

virtual NVSG_API void setTargetDistance (float td)
 Set the distance to the target point. More...

virtual NVSG_API nvmath::Mat44f getProjection () const
 Get the projection matrix. More...

virtual NVSG_API nvmath::Mat44f getInverseProjection () const
 Get the inverse projection matrix. More...


Static Public Methods

NVSG_API const PerspectiveCamera * create (void)
 Create a PerspectiveCamera. More...

NVSG_API const PerspectiveCamera * createFromBase (const SimpleCamera &rhs)
 Create a PerspectiveCamera by copying from a SimpleCamera. More...


Protected Methods

NVSG_API PerspectiveCamera ()
 Constructor. More...

NVSG_API PerspectiveCamera (const SimpleCamera &rhs)
 Partial Constructor. More...

NVSG_API PerspectiveCamera (const PerspectiveCamera &rhs)
 Copy Constructor. More...

virtual NVSG_API ~PerspectiveCamera (void)
 Protected destructor to prevent explicit creation on stack. More...


Detailed Description

A perspective camera.

This is a SimpleCamera that represents a perspective camera.


Constructor & Destructor Documentation

NVSG_API nvsg::PerspectiveCamera::PerspectiveCamera   [protected]
 

Constructor.

NVSG_API nvsg::PerspectiveCamera::PerspectiveCamera const SimpleCamera   rhs [protected]
 

Partial Constructor.

NVSG_API nvsg::PerspectiveCamera::PerspectiveCamera const PerspectiveCamera &    rhs [protected]
 

Copy Constructor.

virtual NVSG_API nvsg::PerspectiveCamera::~PerspectiveCamera void    [protected, virtual]
 

Protected destructor to prevent explicit creation on stack.


Member Function Documentation

NVSG_API const PerspectiveCamera* nvsg::PerspectiveCamera::create void    [static]
 

Create a PerspectiveCamera.

Returns:
a constant pointer to a PerspectiveCamera.

NVSG_API const PerspectiveCamera* nvsg::PerspectiveCamera::createFromBase const SimpleCamera   rhs [static]
 

Create a PerspectiveCamera by copying from a SimpleCamera.

Returns:
a constant pointer to a PerspectiveCamera.
Parameters:
rhs  SimpleCamera to copy from

virtual NVSG_API const PerspectiveCamera* nvsg::PerspectiveCamera::clone void    const [virtual]
 

Create a clone of this PerspectiveCamera.

Returns:
a constant pointer to a PerspectiveCamera.

Implements nvsg::SimpleCamera.

float nvsg::PerspectiveCamera::getFieldOfView   const [inline]
 

Get the field of view (fovy).

The field of view is the view angle (in radians) in the y-direction.

Returns:
The field of view (in radians)

NVSG_API void nvsg::PerspectiveCamera::setFieldOfView float    fov
 

Set the field of view (fovy).

The field of view is the view angle (in radians) in the y-direction.

Parameters:
fov  field of view to set (in radians)

virtual NVSG_API void nvsg::PerspectiveCamera::setTargetDistance float    td [virtual]
 

Set the distance to the target point.

On perspective cameras, setting the target distance keeps the field of view constant. This means that the window size is adjusted accordingly.

Parameters:
td  distance to target point (or viewing plane)

Reimplemented from nvsg::SimpleCamera.

virtual NVSG_API nvmath::Mat44f nvsg::PerspectiveCamera::getProjection   const [virtual]
 

Get the projection matrix.

Returns:
The projection matrix

Implements nvsg::MonoCamera.

virtual NVSG_API nvmath::Mat44f nvsg::PerspectiveCamera::getInverseProjection   const [virtual]
 

Get the inverse projection matrix.

Returns:
The inverse projection matrix

Implements nvsg::MonoCamera.


The documentation for this class was generated from the following file:
Generated on Tue Mar 1 13:20:30 2005 for NVSGSDK by NVIDIA