![]() |
VR-Forces 4.0.4 Class Documentation
|
Spatial object manager which uses an octree. More...

Public Member Functions | |
| DtSpatialVrfObjectManagerOctree (const DtManagedObjectListConstPtr &vrfObjList) | |
| virtual | ~DtSpatialVrfObjectManagerOctree () |
| virtual void | addVrfObjects (const DtManagedObjectListConstPtr &vrfObjects) |
| Spatially sorts the vrfObjects associated in the vrfObjects. | |
| virtual void | removeVrfObject (DtVrfObject *vrfObject) |
| Removes vrfObject from the set of vrfObjects we are maintaining. | |
| virtual bool | setResolutions (unsigned int xRes, unsigned int yRes, unsigned int zRes) |
| Doesn't do anything. Only here for interface compatibility. | |
| virtual void | clearVrfObjects () |
| Clears all managed objects from the manager. | |
| virtual void | reset (const DtManagedObjectListConstPtr &vrfObjects) |
| Clears out the current subdivision, sets it to have the minimum extent, that contains all of the DtVrfObjects specified, and adds the specified DtVrfObjects. | |
| virtual bool | getVrfObjects (const DtExtent &extent, std::set< DtVrfObject * > &objects) |
| Set of functions used to get the relevant DtVrfObjects from the object manager. | |
| virtual bool | getVrfObjects (const DtExtent &extent, std::set< const DtVrfObject * > &objects) const |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, const DtExtent &extent, std::set< DtVrfObject * > &objects) |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, const DtExtent &extent, std::set< const DtVrfObject * > &objects) const |
| virtual bool | getVrfObjects (DtChord &chord, std::list< DtVrfObject * > &objects) |
| virtual bool | getVrfObjects (DtChord &chord, std::list< const DtVrfObject * > &objects) const |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, DtChord &chord, std::list< DtVrfObject * > &objects) |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, DtChord &chord, std::list< const DtVrfObject * > &objects) const |
| virtual void | visitVrfObjects (const DtExtent &extent, DtSpatialSelectionFunctor &callback) const |
| Functions that call the specified functor for every object intersecting the requested region (whether chord or extent). | |
| virtual void | visitVrfObjects (const DtChord &chord, DtSpatialSelectionFunctor &callback) const |
Protected Attributes | |
| DtExtent | myRootExtent |
| The extent of the octree. | |
| DtOctree< DtVrfObject > * | myOctree |
| The octree being used to store the objects. | |
Private Member Functions | |
| DtSpatialVrfObjectManagerOctree () | |
| Not implemented. | |
| DtSpatialVrfObjectManagerOctree (const DtSpatialVrfObjectManagerOctree &orig) | |
| Not implemented. | |
| DtSpatialVrfObjectManagerOctree & | operator= (const DtSpatialVrfObjectManagerOctree &orig) |
| Not implemented. | |
Spatial object manager which uses an octree.
This manager behaves better than the spatial subdivision-based manager for scenarios which have uneven distribution of their entities across the available terrain.
Not implemented.
| DtSpatialVrfObjectManagerOctree::DtSpatialVrfObjectManagerOctree | ( | const DtSpatialVrfObjectManagerOctree & | orig | ) | [private] |
Not implemented.
| DtSpatialVrfObjectManagerOctree::DtSpatialVrfObjectManagerOctree | ( | const DtManagedObjectListConstPtr & | vrfObjList | ) |
| virtual DtSpatialVrfObjectManagerOctree::~DtSpatialVrfObjectManagerOctree | ( | ) | [virtual] |
| DtSpatialVrfObjectManagerOctree& DtSpatialVrfObjectManagerOctree::operator= | ( | const DtSpatialVrfObjectManagerOctree & | orig | ) | [private] |
Not implemented.
| virtual void DtSpatialVrfObjectManagerOctree::addVrfObjects | ( | const DtManagedObjectListConstPtr & | vrfObjects | ) | [virtual] |
Spatially sorts the vrfObjects associated in the vrfObjects.
Implements DtSpatialVrfObjectManagerInterface.
| virtual void DtSpatialVrfObjectManagerOctree::removeVrfObject | ( | DtVrfObject * | vrfObject | ) | [virtual] |
Removes vrfObject from the set of vrfObjects we are maintaining.
| vrfObject | Pointer to the object to be removed. |
Implements DtSpatialVrfObjectManagerInterface.
| virtual bool DtSpatialVrfObjectManagerOctree::setResolutions | ( | unsigned int | xRes, |
| unsigned int | yRes, | ||
| unsigned int | zRes | ||
| ) | [virtual] |
Doesn't do anything. Only here for interface compatibility.
Implements DtSpatialVrfObjectManagerInterface.
| virtual void DtSpatialVrfObjectManagerOctree::clearVrfObjects | ( | ) | [virtual] |
Clears all managed objects from the manager.
Does not affect the spatial container, other than to empty its cells of any elements.
Implements DtSpatialVrfObjectManagerInterface.
| virtual void DtSpatialVrfObjectManagerOctree::reset | ( | const DtManagedObjectListConstPtr & | vrfObjects | ) | [virtual] |
Clears out the current subdivision, sets it to have the minimum extent, that contains all of the DtVrfObjects specified, and adds the specified DtVrfObjects.
Implements DtSpatialVrfObjectManagerInterface.
| virtual void DtSpatialVrfObjectManagerOctree::visitVrfObjects | ( | const DtExtent & | extent, |
| DtSpatialSelectionFunctor & | callback | ||
| ) | const [virtual] |
Functions that call the specified functor for every object intersecting the requested region (whether chord or extent).
The functor should return false while additional processing should be done, and true if processing is complete and visitVrfObjects() should return. Note that processing is not guaranteed to stop immediately when the functor returns true; it is only a recommendation that processing can stop at any time.
Implements DtSpatialVrfObjectManagerInterface.
| virtual void DtSpatialVrfObjectManagerOctree::visitVrfObjects | ( | const DtChord & | chord, |
| DtSpatialSelectionFunctor & | callback | ||
| ) | const [virtual] |
Implements DtSpatialVrfObjectManagerInterface.
The extent of the octree.
DtOctree<DtVrfObject>* DtSpatialVrfObjectManagerOctree::myOctree [protected] |
The octree being used to store the objects.