![]() |
OGRE
1.10.12
Object-Oriented Graphics Rendering Engine
|
Octree datastructure for managing scene nodes. More...
#include <OgreOctreeZoneOctree.h>
Inheritance diagram for Ogre::Octree:Public Types | |
| typedef vector< OctreeNode *>::type | NodeList |
Public Member Functions | |
| Octree (Octree *p) | |
| Octree (PCZone *zone, Octree *p) | |
| ~Octree () | |
| ~Octree () | |
| void | _addNode (OctreeNode *) |
| Adds an Octree scene node to this octree level. More... | |
| void | _addNode (PCZSceneNode *) |
| Adds an PCZscene node to this octree level. More... | |
| void | _findNodes (const AxisAlignedBox &t, PCZSceneNodeList &list, PCZSceneNode *exclude, bool includeVisitors, bool full) |
| void | _findNodes (const Ray &t, PCZSceneNodeList &list, PCZSceneNode *exclude, bool includeVisitors, bool full) |
| void | _findNodes (const Sphere &t, PCZSceneNodeList &list, PCZSceneNode *exclude, bool includeVisitors, bool full) |
| void | _findNodes (const PlaneBoundedVolume &t, PCZSceneNodeList &list, PCZSceneNode *exclude, bool includeVisitors, bool full) |
| void | _getChildIndexes (const AxisAlignedBox &, int *x, int *y, int *z) const |
| Returns the appropriate indexes for the child of this octree into which the box will fit. More... | |
| void | _getChildIndexes (const AxisAlignedBox &, int *x, int *y, int *z) const |
| Returns the appropriate indexes for the child of this octree into which the box will fit. More... | |
| void | _getCullBounds (AxisAlignedBox *) const |
| Creates the AxisAlignedBox used for culling this octree. More... | |
| void | _getCullBounds (AxisAlignedBox *) const |
| Creates the AxisAlignedBox used for culling this octree. More... | |
| bool | _isTwiceSize (const AxisAlignedBox &box) const |
| Determines if this octree is twice as big as the given box. More... | |
| bool | _isTwiceSize (const AxisAlignedBox &box) const |
| Determines if this octree is twice as big as the given box. More... | |
| void | _removeNode (OctreeNode *) |
| Removes an Octree scene node to this octree level. More... | |
| void | _removeNode (PCZSceneNode *) |
| Removes an PCZscene node to this octree level. More... | |
| WireBoundingBox * | getWireBoundingBox () |
| Creates the wire frame bounding box for this octant. More... | |
| WireBoundingBox * | getWireBoundingBox () |
| Creates the wire frame bounding box for this octant. More... | |
| int | numNodes () |
| Returns the number of scene nodes attached to this octree. More... | |
| int | numNodes () |
| Returns the number of scene nodes attached to this octree. More... | |
Public Attributes | |
| AxisAlignedBox | mBox |
| The bounding box of the octree. More... | |
| Octree * | mChildren [2][2][2] |
| 3D array of children of this octree. More... | |
| Vector3 | mHalfSize |
| Vector containing the dimensions of this octree / 2. More... | |
| NodeList | mNodes |
| Public list of SceneNodes attached to this particular octree. More... | |
| PCZSceneNodeList | mNodes |
| Public list of SceneNodes attached to this particular octree. More... | |
| WireBoundingBox * | mWireBoundingBox |
| PCZone * | mZone |
Octree datastructure for managing scene nodes.
| typedef vector< OctreeNode * >::type Ogre::Octree::NodeList |
| Ogre::Octree::Octree | ( | Octree * | p | ) |
| Ogre::Octree::~Octree | ( | ) |
| Ogre::Octree::~Octree | ( | ) |
| void Ogre::Octree::_addNode | ( | OctreeNode * | ) |
Adds an Octree scene node to this octree level.
| void Ogre::Octree::_removeNode | ( | OctreeNode * | ) |
Removes an Octree scene node to this octree level.
|
inline |
Returns the number of scene nodes attached to this octree.
| WireBoundingBox* Ogre::Octree::getWireBoundingBox | ( | ) |
Creates the wire frame bounding box for this octant.
Referenced by numNodes().
| bool Ogre::Octree::_isTwiceSize | ( | const AxisAlignedBox & | box | ) | const |
Determines if this octree is twice as big as the given box.
Referenced by numNodes().
| void Ogre::Octree::_getChildIndexes | ( | const AxisAlignedBox & | , |
| int * | x, | ||
| int * | y, | ||
| int * | z | ||
| ) | const |
Returns the appropriate indexes for the child of this octree into which the box will fit.
Referenced by numNodes().
| void Ogre::Octree::_getCullBounds | ( | AxisAlignedBox * | ) | const |
Creates the AxisAlignedBox used for culling this octree.
Referenced by numNodes().
| void Ogre::Octree::_addNode | ( | PCZSceneNode * | ) |
Adds an PCZscene node to this octree level.
| void Ogre::Octree::_removeNode | ( | PCZSceneNode * | ) |
Removes an PCZscene node to this octree level.
|
inline |
Returns the number of scene nodes attached to this octree.
References _findNodes(), _getChildIndexes(), _getCullBounds(), _isTwiceSize(), getWireBoundingBox(), mBox, mChildren, mHalfSize, and mWireBoundingBox.
| WireBoundingBox* Ogre::Octree::getWireBoundingBox | ( | ) |
Creates the wire frame bounding box for this octant.
| bool Ogre::Octree::_isTwiceSize | ( | const AxisAlignedBox & | box | ) | const |
Determines if this octree is twice as big as the given box.
| void Ogre::Octree::_getChildIndexes | ( | const AxisAlignedBox & | , |
| int * | x, | ||
| int * | y, | ||
| int * | z | ||
| ) | const |
Returns the appropriate indexes for the child of this octree into which the box will fit.
| void Ogre::Octree::_getCullBounds | ( | AxisAlignedBox * | ) | const |
Creates the AxisAlignedBox used for culling this octree.
| void Ogre::Octree::_findNodes | ( | const AxisAlignedBox & | t, |
| PCZSceneNodeList & | list, | ||
| PCZSceneNode * | exclude, | ||
| bool | includeVisitors, | ||
| bool | full | ||
| ) |
Referenced by numNodes().
| void Ogre::Octree::_findNodes | ( | const Ray & | t, |
| PCZSceneNodeList & | list, | ||
| PCZSceneNode * | exclude, | ||
| bool | includeVisitors, | ||
| bool | full | ||
| ) |
| void Ogre::Octree::_findNodes | ( | const Sphere & | t, |
| PCZSceneNodeList & | list, | ||
| PCZSceneNode * | exclude, | ||
| bool | includeVisitors, | ||
| bool | full | ||
| ) |
| void Ogre::Octree::_findNodes | ( | const PlaneBoundedVolume & | t, |
| PCZSceneNodeList & | list, | ||
| PCZSceneNode * | exclude, | ||
| bool | includeVisitors, | ||
| bool | full | ||
| ) |
| AxisAlignedBox Ogre::Octree::mBox |
The bounding box of the octree.
Referenced by numNodes().
| WireBoundingBox * Ogre::Octree::mWireBoundingBox |
Referenced by numNodes().
| Vector3 Ogre::Octree::mHalfSize |
Vector containing the dimensions of this octree / 2.
Referenced by numNodes().
| Octree * Ogre::Octree::mChildren |
3D array of children of this octree.
Referenced by numNodes().
| NodeList Ogre::Octree::mNodes |
Public list of SceneNodes attached to this particular octree.
| PCZSceneNodeList Ogre::Octree::mNodes |
Public list of SceneNodes attached to this particular octree.
| PCZone* Ogre::Octree::mZone |