AI_SDB_SpatialVisitor Class Reference

#include <AI_SDB_VisitorBase.h>

List of all members.


Detailed Description

Visitor to collect all elements in a given region of space.

Public Types

typedef AI_Array
< AI_SDB_SpatialElement * > 
SpatialElements

Public Member Functions

 AI_SDB_SpatialVisitor ()
virtual ~AI_SDB_SpatialVisitor ()
virtual void Reset ()
virtual void Visit (AI_SDB_SpatialElement *visitee)=0
 Process an element. This adds the element to a list, draws it on the screen, etc.
virtual AI_SDB_VisitorFlags ContainmentTest (const AI_BBox &testbox, AI_SDB_VisitorFlags flags)=0
virtual AI_SDB_VisitorFlags ContainmentTest (const AI_Sphere &testsphere, AI_SDB_VisitorFlags flags)=0
virtual void EnterLocalSpace (AI_Matrix44 &warp)=0
virtual void LeaveLocalSpace ()=0
 leave a local space

Member Typedef Documentation


Constructor & Destructor Documentation

AI_SDB_SpatialVisitor::AI_SDB_SpatialVisitor (  )  [inline]

virtual AI_SDB_SpatialVisitor::~AI_SDB_SpatialVisitor (  )  [inline, virtual]


Member Function Documentation

void AI_SDB_SpatialVisitor::Reset (  )  [virtual]

virtual void AI_SDB_SpatialVisitor::Visit ( AI_SDB_SpatialElement visitee  )  [pure virtual]

Process an element. This adds the element to a list, draws it on the screen, etc.

virtual AI_SDB_VisitorFlags AI_SDB_SpatialVisitor::ContainmentTest ( const AI_BBox testbox,
AI_SDB_VisitorFlags  flags 
) [pure virtual]

Check if an element is in the region represented by this visitor. If the returned AI_SDB_VisitorFlags produces a TestResult() of true, the element is in the region. The returned AI_SDB_VisitorFlags can be used for more efficient visibility tests of primitives enclosed in this bounding box Mainly used by hierarchy elements.

Note that elements partially in the region may be rejected or accepted, depending on the visitor. Check the docs for that visitor!

virtual AI_SDB_VisitorFlags AI_SDB_SpatialVisitor::ContainmentTest ( const AI_Sphere testsphere,
AI_SDB_VisitorFlags  flags 
) [pure virtual]

virtual void AI_SDB_SpatialVisitor::EnterLocalSpace ( AI_Matrix44 warp  )  [pure virtual]

entering a new local space; the matrix given will transform from the current local system into the new space local coordinate system. This is used to possibly update a transform matrix or to transform the spatial region to a new coordinate system.

virtual void AI_SDB_SpatialVisitor::LeaveLocalSpace (  )  [pure virtual]

leave a local space


The documentation for this class was generated from the following files: