OGRE 2.1
Object-Oriented Graphics Rendering Engine
|
Octree datastructure for managing scene nodes. More...
#include <OgreOctreeZoneOctree.h>
Public Types | |
typedef list< 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. | |
void | _addNode (PCZSceneNode *) |
Adds an PCZscene node to this octree level. | |
void | _findNodes (const AxisAlignedBox &t, PCZSceneNodeList &list, PCZSceneNode *exclude, bool includeVisitors, bool full) |
void | _findNodes (const PlaneBoundedVolume &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 | _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 | _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 | _getCullBounds (AxisAlignedBox *) const |
Creates the AxisAlignedBox used for culling this octree. | |
void | _getCullBounds (AxisAlignedBox *) const |
Creates the AxisAlignedBox used for culling this octree. | |
bool | _isTwiceSize (const AxisAlignedBox &box) const |
Determines if this octree is twice as big as the given box. | |
bool | _isTwiceSize (const AxisAlignedBox &box) const |
Determines if this octree is twice as big as the given box. | |
void | _removeNode (OctreeNode *) |
Removes an Octree scene node to this octree level. | |
void | _removeNode (PCZSceneNode *) |
Removes an PCZscene node to this octree level. | |
WireBoundingBox * | getWireBoundingBox () |
Creates the wire frame bounding box for this octant. | |
WireBoundingBox * | getWireBoundingBox () |
Creates the wire frame bounding box for this octant. | |
int | numNodes () |
Returns the number of scene nodes attached to this octree. | |
int | numNodes () |
Returns the number of scene nodes attached to this octree. | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
Public Attributes | |
AxisAlignedBox | mBox |
The bounding box of the octree. | |
Octree * | mChildren [2][2][2] |
3D array of children of this octree. | |
Vector3 | mHalfSize |
Vector containing the dimensions of this octree / 2. | |
NodeList | mNodes |
Public list of SceneNodes attached to this particular octree. | |
PCZSceneNodeList | mNodes |
Public list of SceneNodes attached to this particular octree. | |
WireBoundingBox * | mWireBoundingBox |
PCZone * | mZone |
Octree datastructure for managing scene nodes.
typedef list<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::_addNode | ( | PCZSceneNode * | ) |
Adds an PCZscene node to this octree level.
void Ogre::Octree::_findNodes | ( | const AxisAlignedBox & | t, |
PCZSceneNodeList & | list, | ||
PCZSceneNode * | exclude, | ||
bool | includeVisitors, | ||
bool | full | ||
) |
void Ogre::Octree::_findNodes | ( | const PlaneBoundedVolume & | t, |
PCZSceneNodeList & | list, | ||
PCZSceneNode * | exclude, | ||
bool | includeVisitors, | ||
bool | full | ||
) |
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 | ||
) |
Returns the appropriate indexes for the child of this octree into which the box will fit.
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::_getCullBounds | ( | AxisAlignedBox * | ) | const |
Creates the AxisAlignedBox used for culling this octree.
bool Ogre::Octree::_isTwiceSize | ( | const AxisAlignedBox & | box | ) | const |
Determines if this octree is twice as big as the given box.
bool Ogre::Octree::_isTwiceSize | ( | const AxisAlignedBox & | box | ) | const |
Determines if this octree is twice as big as the given box.
void Ogre::Octree::_removeNode | ( | OctreeNode * | ) |
Removes an Octree scene node to this octree level.
void Ogre::Octree::_removeNode | ( | PCZSceneNode * | ) |
Removes an PCZscene node to this octree level.
WireBoundingBox * Ogre::Octree::getWireBoundingBox | ( | ) |
Creates the wire frame bounding box for this octant.
WireBoundingBox * Ogre::Octree::getWireBoundingBox | ( | ) |
Creates the wire frame bounding box for this octant.
|
inline |
Returns the number of scene nodes attached to this octree.
|
inline |
Returns the number of scene nodes attached to this octree.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
operator new, with debug line info
placement operator new
|
inlineinherited |
|
inlineinherited |
array operator new, with debug line info
AxisAlignedBox Ogre::Octree::mBox |
The bounding box of the octree.
Octree * Ogre::Octree::mChildren |
3D array of children of this octree.
Vector3 Ogre::Octree::mHalfSize |
Vector containing the dimensions of this octree / 2.
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.
WireBoundingBox * Ogre::Octree::mWireBoundingBox |
PCZone* Ogre::Octree::mZone |