<html> <head> <title>OgreOctreeNode.h Source File - 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>OgreOctreeNode.h</h1><a href="OgreOctreeNode_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/***************************************************************************</font> 00002 <font class="comment">octreenode.h - description</font> 00003 <font class="comment">-------------------</font> 00004 <font class="comment">begin : Fri Sep 27 2002</font> 00005 <font class="comment">copyright : (C) 2002 by Jon Anderson</font> 00006 <font class="comment">email : janders@users.sf.net</font> 00007 <font class="comment">***************************************************************************/</font> 00008 00009 <font class="comment">/***************************************************************************</font> 00010 <font class="comment">* *</font> 00011 <font class="comment">* This program is free software; you can redistribute it and/or modify *</font> 00012 <font class="comment">* it under the terms of the GNU Lesser General Public License as *</font> 00013 <font class="comment">* published by the Free Software Foundation; either version 2 of the * </font> 00014 <font class="comment">* License, or (at your option) any later version. *</font> 00015 <font class="comment">* *</font> 00016 <font class="comment">***************************************************************************/</font> 00017 00018 <font class="preprocessor">#ifndef OCTREENODE_H</font> 00019 <font class="preprocessor"></font><font class="preprocessor">#define OCTREENODE_H</font> 00020 <font class="preprocessor"></font> 00021 <font class="preprocessor">#include <<a class="code" href="OgreSceneNode_8h.html">OgreSceneNode.h</a>></font> 00022 00023 <font class="preprocessor">#include <<a class="code" href="OgreOctreeSceneManager_8h.html">OgreOctreeSceneManager.h</a>></font> 00024 00025 <font class="keyword">namespace </font>Ogre 00026 { 00027 <a name="l00033"></a><a class="code" href="classOgre_1_1OctreeNode.html">00033</a> <font class="keyword">class </font><a class="code" href="classOgre_1_1OctreeNode.html">OctreeNode</a> : <font class="keyword">public</font> <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> 00034 { 00035 <font class="keyword">public</font>: 00037 <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea0">OctreeNode</a>( <a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>* creator ); 00039 <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea0">OctreeNode</a>( <a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>* creator, <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a>& name ); 00041 <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea2">~OctreeNode</a>(); 00042 00044 <a class="code" href="classOgre_1_1Node.html">Node</a> * <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea3">removeChild</a>( <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> index ); 00045 00047 <a class="code" href="classOgre_1_1Node.html">Node</a> * <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea3">removeChild</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a> & name ); 00048 <a name="l00051"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea5">00051</a> <a class="code" href="classOgre_1_1Octree.html">Octree</a> * <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea5">getOctant</a>() 00052 { 00053 <font class="keywordflow">return</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden1">mOctant</a>; 00054 }; 00055 <a name="l00058"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea6">00058</a> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea6">setOctant</a>( <a class="code" href="classOgre_1_1Octree.html">Octree</a> *o ) 00059 { 00060 <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden1">mOctant</a> = o; 00061 }; 00062 00065 <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea7">_isIn</a>( AxisAlignedBox &box ); 00066 00069 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea8">_addToRenderQueue</a>( Camera* cam, RenderQueue * ); 00070 00075 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea9">getRenderOperation</a>( RenderOperation& op ); 00076 <a name="l00081"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea10">00081</a> <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> & <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodea10">_getLocalAABB</a>() 00082 { 00083 <font class="keywordflow">return</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden0">mLocalAABB</a>; 00084 }; 00085 00086 00087 00088 00089 <font class="keyword">protected</font>: 00090 00097 <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodeb0">_updateBounds</a>( <font class="keywordtype">void</font> ); 00098 00099 <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodeb1">_removeNodeAndChildren</a>( ); 00100 <a name="l00102"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden0">00102</a> <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden0">mLocalAABB</a>; 00103 <a name="l00105"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden1">00105</a> <a class="code" href="classOgre_1_1Octree.html">Octree</a> *<a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden1">mOctant</a>; 00106 <a name="l00108"></a><a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden2">00108</a> <a class="code" href="namespaceOgre.html#a349">Real</a> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNoden2">mCorners</a>[ 24 ]; 00110 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodeq0">mColors</a>[ 8 ]; 00112 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> <a class="code" href="classOgre_1_1OctreeNode.html#Ogre_1_1OctreeNodeq1">mIndexes</a>[ 24 ]; 00113 00114 00115 }; 00116 00117 } 00118 00119 00120 <font class="preprocessor">#endif</font> </pre></div><p> Copyright © 2002-2003 by The OGRE Team<br /> Last modified Wed Jan 21 00:10:19 2004 </p> </body> </html>