<html> <head> <title>Ogre::Octree class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link type="text/css" rel="stylesheet" href="style.css"> </head> <body> <!-- Generated by Doxygen 1.2.16 --> <center> <a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="namespaces.html">Namespace List</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="classes.html">Alphabetical List</a> <a class="qindex" href="annotated.html">Compound List</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="namespacemembers.html">Namespace Members</a> <a class="qindex" href="functions.html">Compound Members</a> <a class="qindex" href="globals.html">File Members</a> <a class="qindex" href="pages.html">Related Pages</a> </center> <hr><h1>Ogre::Octree Class Reference</h1><a class="el" href="classOgre_1_1Octree.html">Octree</a> datastructure for managing scene nodes. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>></code> <p> Collaboration diagram for Ogre::Octree:<p><center><img src="classOgre_1_1Octree__coll__graph.png" border="0" usemap="#Ogre_1_1Octree__coll__map" alt="Collaboration graph"></center> <map name="Ogre_1_1Octree__coll__map"> <area href="classOgre_1_1Vector3.html" shape="rect" coords="25,35,119,17" alt=""> <area href="classOgre_1_1AxisAlignedBox.html" shape="rect" coords="69,155,208,137" alt=""> <area href="classOgre_1_1SimpleRenderable.html" shape="rect" coords="176,246,331,227" alt=""> <area href="classOgre_1_1WireBoundingBox.html" shape="rect" coords="176,337,328,318" alt=""> </map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center><a href="classOgre_1_1Octree-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0> <tr><td colspan=2><br><h2>Public Methods</h2></td></tr> <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea0">Octree</a> (Octree *p)</td></tr> <tr><td nowrap align=right valign=top> </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea1">~Octree</a> ()</td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea2">_addNode</a> (<a class="el" href="classOgre_1_1OctreeNode.html">OctreeNode</a> *)</td></tr> <tr><td> </td><td><font size=-1><em>Adds an <a class="el" href="classOgre_1_1Octree.html">Octree</a> scene node to this octree level.</em> <a href="#Ogre_1_1Octreea2"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea3">_removeNode</a> (<a class="el" href="classOgre_1_1OctreeNode.html">OctreeNode</a> *)</td></tr> <tr><td> </td><td><font size=-1><em>Removes an <a class="el" href="classOgre_1_1Octree.html">Octree</a> scene node to this octree level.</em> <a href="#Ogre_1_1Octreea3"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea4">numNodes</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Returns the number of scene nodes attached to this octree.</em> <a href="#Ogre_1_1Octreea4"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="classOgre_1_1WireBoundingBox.html">WireBoundingBox</a> * </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea5">getWireBoundingBox</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Creats the wire frame bounding box for this octant.</em> <a href="#Ogre_1_1Octreea5"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>bool </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea6">_isTwiceSize</a> (<a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &box)</td></tr> <tr><td> </td><td><font size=-1><em>Returns true is the box will fit in a child.</em> <a href="#Ogre_1_1Octreea6"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea7">_getChildIndexes</a> (<a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &, int *x, int *y, int *z)</td></tr> <tr><td> </td><td><font size=-1><em>It's assumed the the given box has already been proven to fit into a child.</em> <a href="#Ogre_1_1Octreea7"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreea8">_getCullBounds</a> (<a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> *)</td></tr> <tr><td> </td><td><font size=-1><em>Creates the <a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> used for culling this octree.</em> <a href="#Ogre_1_1Octreea8"></a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Public Attributes</h2></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreem0">mBox</a></td></tr> <tr><td> </td><td><font size=-1><em>The bounding box of the octree.</em> <a href="#Ogre_1_1Octreem0"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="classOgre_1_1WireBoundingBox.html">WireBoundingBox</a> * </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreem1">mWireBoundingBox</a></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="classOgre_1_1Vector3.html">Vector3</a> </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreem2">mHalfSize</a></td></tr> <tr><td> </td><td><font size=-1><em>Vector containing the dimensions of this octree / 2.</em> <a href="#Ogre_1_1Octreem2"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>Octree * </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreem3">mChildren</a> [2][2][2]</td></tr> <tr><td> </td><td><font size=-1><em>3D array of children of this octree.</em> <a href="#Ogre_1_1Octreem3"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a469">NodeList</a> </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreem4">mNodes</a></td></tr> <tr><td> </td><td><font size=-1><em>Public list of SceneNodes attached to this particular octree.</em> <a href="#Ogre_1_1Octreem4"></a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Protected Methods</h2></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreeb0">_ref</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Increments the overall node count of this octree and all it's parents.</em> <a href="#Ogre_1_1Octreeb0"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>void </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreeb1">_unref</a> ()</td></tr> <tr><td> </td><td><font size=-1><em>Decrements the overall node count of this octree and all it's parents.</em> <a href="#Ogre_1_1Octreeb1"></a><em></em></font><br><br></td></tr> <tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr> <tr><td nowrap align=right valign=top>int </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreen0">mNumNodes</a></td></tr> <tr><td> </td><td><font size=-1><em>number of SceneNodes in this octree and all it's children.</em> <a href="#Ogre_1_1Octreen0"></a><em></em></font><br><br></td></tr> <tr><td nowrap align=right valign=top>Octree * </td><td valign=bottom><a class="el" href="classOgre_1_1Octree.html#Ogre_1_1Octreen1">mParent</a></td></tr> <tr><td> </td><td><font size=-1><em>parent octree</em> <a href="#Ogre_1_1Octreen1"></a><em></em></font><br><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> <a class="el" href="classOgre_1_1Octree.html">Octree</a> datastructure for managing scene nodes. <p> <dl compact><dt><b> Remarks: </b><dd> This is a loose octree implementation, meaning that each octant child of the octree actually overlaps it's siblings by a factor of .5. This guarantees that any thing that is half the size of the parent will fit completely into a child, with no splitting necessary. </dl> <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00042">42</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>.<hr><h2>Constructor & Destructor Documentation</h2> <a name="Ogre_1_1Octreea0" doxytag="Ogre::Octree::Octree"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> Ogre::Octree::Octree </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">Octree * </td> <td class="mdname1" valign="top" nowrap> <em>p</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00067">67</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00086">mChildren</a>, <a class="el" href="OgreOctree_8h-source.html#l00135">mNumNodes</a>, and <a class="el" href="OgreOctree_8h-source.html#l00138">mParent</a>. </td> </tr> </table> <a name="Ogre_1_1Octreea1" doxytag="Ogre::Octree::~Octree"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> Ogre::Octree::~Octree </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00087">87</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00086">mChildren</a>, <a class="el" href="OgreOctree_8h-source.html#l00138">mParent</a>, and <a class="el" href="OgreOctree_8h-source.html#l00071">mWireBoundingBox</a>. </td> </tr> </table> <hr><h2>Member Function Documentation</h2> <a name="Ogre_1_1Octreea2" doxytag="Ogre::Octree::_addNode"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_addNode </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1OctreeNode.html">OctreeNode</a> * </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Adds an <a class="el" href="classOgre_1_1Octree.html">Octree</a> scene node to this octree level. <p> <dl compact><dt><b> Remarks: </b><dd> This is called by the <a class="el" href="classOgre_1_1OctreeSceneManager.html">OctreeSceneManager</a> after it has determined the correct <a class="el" href="classOgre_1_1Octree.html">Octree</a> to insert the node into. </dl> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00108">108</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00118">_ref</a>(), and <a class="el" href="OgreOctree_8h-source.html#l00112">mNodes</a>. <p> Referenced by <a class="el" href="OgreOctreeSceneManager_8cpp-source.html#l00261">Ogre::OctreeSceneManager::_updateOctreeNode</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreea7" doxytag="Ogre::Octree::_getChildIndexes"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_getChildIndexes </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> & </td> <td class="mdname" nowrap> , </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>x</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>y</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>z</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> It's assumed the the given box has already been proven to fit into a child. <p> <dl compact><dt><b> Remarks: </b><dd> This is used by the OCtreeSceneManager to determine which child to traverse next when finding the appropriate octree to insert the box. Since it is a loose octree, only the center of the box is checked to determine the octant. </dl> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00041">41</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreAxisAlignedBox_8h-source.html#l00104">Ogre::AxisAlignedBox::getMaximum</a>(), <a class="el" href="OgreAxisAlignedBox_8h-source.html#l00097">Ogre::AxisAlignedBox::getMinimum</a>(), <a class="el" href="OgreOctree_8h-source.html#l00070">mBox</a>, <a class="el" href="OgreVector3_8h-source.html#l00356">Ogre::Vector3::midPoint</a>(), <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>. </td> </tr> </table> <a name="Ogre_1_1Octreea8" doxytag="Ogre::Octree::_getCullBounds"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_getCullBounds </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> * </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Creates the <a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> used for culling this octree. <p> <dl compact><dt><b> Remarks: </b><dd> Since it's a loose octree, the culling bounds can be different than the actual bounds of the octree. </dl> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00127">127</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreAxisAlignedBox_8h-source.html#l00195">Ogre::AxisAlignedBox::getAllCorners</a>(), <a class="el" href="OgreOctree_8h-source.html#l00070">mBox</a>, and <a class="el" href="OgreOctree_8h-source.html#l00079">mHalfSize</a>. </td> </tr> </table> <a name="Ogre_1_1Octreea6" doxytag="Ogre::Octree::_isTwiceSize"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> bool Ogre::Octree::_isTwiceSize </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> & </td> <td class="mdname1" valign="top" nowrap> <em>box</em> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns true is the box will fit in a child. <p> <dl compact><dt><b> Remarks: </b><dd> This method is used by the <a class="el" href="classOgre_1_1OctreeSceneManager.html">OctreeSceneManager</a> to determine if the given box will fit into a child of this octree. </dl> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00026">26</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreAxisAlignedBox_8h-source.html#l00195">Ogre::AxisAlignedBox::getAllCorners</a>(), <a class="el" href="OgreOctree_8h-source.html#l00070">mBox</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>. </td> </tr> </table> <a name="Ogre_1_1Octreeb0" doxytag="Ogre::Octree::_ref"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_ref </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Increments the overall node count of this octree and all it's parents. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00118">118</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00135">mNumNodes</a>, and <a class="el" href="OgreOctree_8h-source.html#l00138">mParent</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00108">_addNode</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreea3" doxytag="Ogre::Octree::_removeNode"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_removeNode </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1OctreeNode.html">OctreeNode</a> * </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Removes an <a class="el" href="classOgre_1_1Octree.html">Octree</a> scene node to this octree level. <p> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00118">118</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00127">_unref</a>(), and <a class="el" href="OgreOctree_8h-source.html#l00112">mNodes</a>. </td> </tr> </table> <a name="Ogre_1_1Octreeb1" doxytag="Ogre::Octree::_unref"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> void Ogre::Octree::_unref </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap><code> [protected]</code></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Decrements the overall node count of this octree and all it's parents. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00127">127</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00135">mNumNodes</a>, and <a class="el" href="OgreOctree_8h-source.html#l00138">mParent</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00118">_removeNode</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreea5" doxytag="Ogre::Octree::getWireBoundingBox"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1WireBoundingBox.html">WireBoundingBox</a> * Ogre::Octree::getWireBoundingBox </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Creats the wire frame bounding box for this octant. <p> <p> Definition at line <a class="el" href="OgreOctree_8cpp-source.html#l00133">133</a> of file <a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00070">mBox</a>, <a class="el" href="OgreOctree_8h-source.html#l00071">mWireBoundingBox</a>, and <a class="el" href="OgreWireBoundingBox_8cpp-source.html#l00072">Ogre::WireBoundingBox::setupBoundingBox</a>(). <p> Referenced by <a class="el" href="OgreOctreeSceneManager_8cpp-source.html#l00457">Ogre::OctreeSceneManager::walkOctree</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreea4" doxytag="Ogre::Octree::numNodes"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int Ogre::Octree::numNodes </td> <td class="md" valign="top">( </td> <td class="mdname1" valign="top" nowrap> </td> <td class="md" valign="top">) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Returns the number of scene nodes attached to this octree. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00061">61</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> References <a class="el" href="OgreOctree_8h-source.html#l00135">mNumNodes</a>. </td> </tr> </table> <hr><h2>Member Data Documentation</h2> <a name="Ogre_1_1Octreem0" doxytag="Ogre::Octree::mBox"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> Ogre::Octree::mBox </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> The bounding box of the octree. <p> <dl compact><dt><b> Remarks: </b><dd> This is used for octant index determination and rendering, but not culling </dl> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00070">70</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00041">_getChildIndexes</a>(), <a class="el" href="OgreOctree_8cpp-source.html#l00127">_getCullBounds</a>(), <a class="el" href="OgreOctree_8cpp-source.html#l00026">_isTwiceSize</a>(), <a class="el" href="OgreOctreeSceneManager_8cpp-source.html#l00749">Ogre::OctreeSceneManager::getOption</a>(), <a class="el" href="OgreOctree_8cpp-source.html#l00133">getWireBoundingBox</a>(), <a class="el" href="OgreOctreeSceneManager_8cpp-source.html#l00693">Ogre::OctreeSceneManager::resize</a>(), and <a class="el" href="OgreOctreeSceneManager_8cpp-source.html#l00717">Ogre::OctreeSceneManager::setOption</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreem3" doxytag="Ogre::Octree::mChildren"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> Octree* Ogre::Octree::mChildren[ 2 ][ 2 ][ 2 ] </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> 3D array of children of this octree. <p> <dl compact><dt><b> Remarks: </b><dd> Children are dynamically created as needed when nodes are inserted in the <a class="el" href="classOgre_1_1Octree.html">Octree</a>. If, later, the all the nodes are removed from the child, it is still kept arround. </dl> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00086">86</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00067">Octree</a>(), and <a class="el" href="OgreOctree_8cpp-source.html#l00087">~Octree</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreem2" doxytag="Ogre::Octree::mHalfSize"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> Ogre::Octree::mHalfSize </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Vector containing the dimensions of this octree / 2. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00079">79</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00127">_getCullBounds</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreem4" doxytag="Ogre::Octree::mNodes"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a469">NodeList</a> Ogre::Octree::mNodes </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> Public list of SceneNodes attached to this particular octree. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00112">112</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00108">_addNode</a>(), and <a class="el" href="OgreOctree_8cpp-source.html#l00118">_removeNode</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreen0" doxytag="Ogre::Octree::mNumNodes"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> int Ogre::Octree::mNumNodes<code> [protected]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> number of SceneNodes in this octree and all it's children. <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00135">135</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8h-source.html#l00118">_ref</a>(), <a class="el" href="OgreOctree_8h-source.html#l00127">_unref</a>(), <a class="el" href="OgreOctree_8h-source.html#l00061">numNodes</a>(), and <a class="el" href="OgreOctree_8cpp-source.html#l00067">Octree</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreen1" doxytag="Ogre::Octree::mParent"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> Octree* Ogre::Octree::mParent<code> [protected]</code> </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> parent octree <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00138">138</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8h-source.html#l00118">_ref</a>(), <a class="el" href="OgreOctree_8h-source.html#l00127">_unref</a>(), <a class="el" href="OgreOctree_8cpp-source.html#l00067">Octree</a>(), and <a class="el" href="OgreOctree_8cpp-source.html#l00087">~Octree</a>(). </td> </tr> </table> <a name="Ogre_1_1Octreem1" doxytag="Ogre::Octree::mWireBoundingBox"></a><p> <table width="100%" cellpadding="2" cellspacing="0" border="0"> <tr> <td class="md"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1WireBoundingBox.html">WireBoundingBox</a>* Ogre::Octree::mWireBoundingBox </table> </td> </tr> </table> <table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td> <p> <p> Definition at line <a class="el" href="OgreOctree_8h-source.html#l00071">71</a> of file <a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a>. <p> Referenced by <a class="el" href="OgreOctree_8cpp-source.html#l00133">getWireBoundingBox</a>(), and <a class="el" href="OgreOctree_8cpp-source.html#l00087">~Octree</a>(). </td> </tr> </table> <hr>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="OgreOctree_8h-source.html">OgreOctree.h</a><li><a class="el" href="OgreOctree_8cpp-source.html">OgreOctree.cpp</a></ul> <p> Copyright © 2002-2003 by The OGRE Team<br /> Last modified Wed Jan 21 00:13:15 2004 </p> </body> </html>