![]() |
VR-Forces 4.6.1 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, DtVrfObjectUniqueContainer &objects) |
| Set of functions used to get the relevant DtVrfObjects from the object manager. | |
| virtual bool | getVrfObjects (const DtExtent &extent, DtVrfConstObjectUniqueContainer &objects) const |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, const DtExtent &extent, DtVrfObjectUniqueContainer &objects) |
| virtual bool | getVrfObjects (DtVrfObjectPredicate &predicate, const DtExtent &extent, DtVrfConstObjectUniqueContainer &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 |
Public Member Functions inherited from DtSpatialVrfObjectManagerInterface | |
| virtual | ~DtSpatialVrfObjectManagerInterface () |
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) | |
| DtSpatialVrfObjectManagerOctree & | operator= (const DtSpatialVrfObjectManagerOctree &orig) |
Additional Inherited Members | |
Public Types inherited from DtSpatialVrfObjectManagerInterface | |
| typedef boost::unordered_set < DtVrfObject * > | DtVrfObjectUniqueContainer |
| Set of functions used to get the relevant DtVrfObjects from the object manager. | |
| typedef boost::unordered_set < const DtVrfObject * > | DtVrfConstObjectUniqueContainer |
| typedef std::list< DtVrfObject * > | DtVrfObjectContainer |
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.
|
private |
Not implemented.
|
private |
| DtSpatialVrfObjectManagerOctree::DtSpatialVrfObjectManagerOctree | ( | const DtManagedObjectListConstPtr & | vrfObjList | ) |
|
virtual |
|
private |
|
virtual |
Spatially sorts the vrfObjects associated in the vrfObjects.
Implements DtSpatialVrfObjectManagerInterface.
|
virtual |
Removes vrfObject from the set of vrfObjects we are maintaining.
| vrfObject | Pointer to the object to be removed. |
Implements DtSpatialVrfObjectManagerInterface.
|
virtual |
Doesn't do anything. Only here for interface compatibility.
Implements DtSpatialVrfObjectManagerInterface.
|
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 |
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 |
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 |
Implements DtSpatialVrfObjectManagerInterface.
|
protected |
The extent of the octree.
|
protected |
The octree being used to store the objects.