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

nvtraverser::FrustumCullTraverser Class Reference

CullTraverser culling on frustum information. More...

#include <FrustumCullTraverser.h>

Inheritance diagram for nvtraverser::FrustumCullTraverser:

Inheritance graph
[legend]
Collaboration diagram for nvtraverser::FrustumCullTraverser:

Collaboration graph
[legend]
List of all members.

Public Member Functions

NVSG_API FrustumCullTraverser (void)
 Constructor.

Protected Member Functions

virtual NVSG_API ~FrustumCullTraverser (void)
 Destructor.
virtual NVSG_API bool preTraverseRoot (const nvsg::SimpleCamera *p, const nvsg::Node *root)
 Handles actions to take just before the scene is traversed.
virtual NVSG_API nvsg::CullCode cullCode (const nvsg::Drawable *p) const
 determine the CullCode of a Drawable.
virtual NVSG_API nvsg::CullCode cullCode (const nvsg::Node *p) const
 Determine the CullCode of a Node.
virtual NVSG_API bool preTraverseTransform (const nvsg::Transform *p)
 Handles actions to take between transform stack adjustment and traversal.
virtual NVSG_API void postTraverseTransform (const nvsg::Transform *p)
 Handles actions to take between traversal and transform stack adjustment.

Detailed Description

CullTraverser culling on frustum information.

This CullTraverser gathers information on all Node s in the tree whether it's inside, outside or partially within the current viewing frustum. All Node s (and potentially subtrees) that are completely outside are marked as such and can be skipped on subsequent traversals.


Constructor & Destructor Documentation

NVSG_API nvtraverser::FrustumCullTraverser::FrustumCullTraverser void   ) 
 

Constructor.

virtual NVSG_API nvtraverser::FrustumCullTraverser::~FrustumCullTraverser void   )  [protected, virtual]
 

Destructor.


Member Function Documentation

virtual NVSG_API bool nvtraverser::FrustumCullTraverser::preTraverseRoot const nvsg::SimpleCamera p,
const nvsg::Node root
[protected, virtual]
 

Handles actions to take just before the scene is traversed.

This initializes the camera related part of the transform stack (after traversal of the headlights).

Reimplemented from nvtraverser::ModelViewTraverser.

virtual NVSG_API nvsg::CullCode nvtraverser::FrustumCullTraverser::cullCode const nvsg::Drawable p  )  const [protected, virtual]
 

determine the CullCode of a Drawable.

The default implementation returns CC_IN.

Returns:
CullCode for Drawable p.

Reimplemented from nvtraverser::CullTraverser.

virtual NVSG_API nvsg::CullCode nvtraverser::FrustumCullTraverser::cullCode const nvsg::Node p  )  const [protected, virtual]
 

Determine the CullCode of a Node.

The default implementaion returns CC_IN.

Returns:
CullCode for Node p.

Reimplemented from nvtraverser::CullTraverser.

virtual NVSG_API bool nvtraverser::FrustumCullTraverser::preTraverseTransform const nvsg::Transform p  )  [protected, virtual]
 

Handles actions to take between transform stack adjustment and traversal.

In this base class, this is a NOP.

Parameters:
p  Transform node to traverse next

Reimplemented from nvtraverser::ModelViewTraverser.

virtual NVSG_API void nvtraverser::FrustumCullTraverser::postTraverseTransform const nvsg::Transform p  )  [protected, virtual]
 

Handles actions to take between traversal and transform stack adjustment.

When this function returns true, the subtree beneath is traversed. Otherwise it isn't.

Returns:
true
Parameters:
p  Transform node just traversed

Reimplemented from nvtraverser::ModelViewTraverser.


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