Sophie

Sophie

distrib > Mandriva > 10.0-com > i586 > by-pkgid > 06719cf03808e17ae6f0852ca1052dc2 > files > 937

libogre1-devel-0.13.0-1mdk.i586.rpm

<html>
<head>
<title>OgreOctreeSceneManager.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> &nbsp; <a class="qindex" href="namespaces.html">Namespace List</a> &nbsp; <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp; <a class="qindex" href="classes.html">Alphabetical List</a> &nbsp; <a class="qindex" href="annotated.html">Compound List</a> &nbsp; <a class="qindex" href="files.html">File List</a> &nbsp; <a class="qindex" href="namespacemembers.html">Namespace Members</a> &nbsp; <a class="qindex" href="functions.html">Compound Members</a> &nbsp; <a class="qindex" href="globals.html">File Members</a> &nbsp; <a class="qindex" href="pages.html">Related Pages</a> &nbsp; </center>
<hr><h1>OgreOctreeSceneManager.h</h1><a href="OgreOctreeSceneManager_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/***************************************************************************</font>
00002 <font class="comment">octreescenemanager.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 OCTREESCENEMANAGER_H</font>
00019 <font class="preprocessor"></font><font class="preprocessor">#define OCTREESCENEMANAGER_H</font>
00020 <font class="preprocessor"></font>
00021 <font class="preprocessor">#include &lt;<a class="code" href="OgreSceneManager_8h.html">OgreSceneManager.h</a>&gt;</font>
00022 <font class="preprocessor">#include &lt;<a class="code" href="OgreRenderOperation_8h.html">OgreRenderOperation.h</a>&gt;</font>
00023 <font class="preprocessor">#include &lt;<a class="code" href="OgreSphere_8h.html">OgreSphere.h</a>&gt;</font>
00024 
00025 <font class="preprocessor">#include &lt;list&gt;</font>
00026 <font class="preprocessor">#include &lt;algorithm&gt;</font>
00027 
00028 <font class="preprocessor">#include &lt;<a class="code" href="OgreOctree_8h.html">OgreOctree.h</a>&gt;</font>
00029 
00030 
00031 <font class="keyword">namespace </font>Ogre
00032 {
00033 
00034 <font class="keyword">class </font>OctreeNode;
00035 
00036 <font class="keyword">class </font>OctreeCamera;
00037 
00038 
<a name="l00039"></a><a class="code" href="namespaceOgre.html#a470">00039</a> <font class="keyword">typedef</font> std::list &lt; WireBoundingBox * &gt; <a class="code" href="namespaceOgre.html#a470">BoxList</a>;
<a name="l00040"></a><a class="code" href="namespaceOgre.html#a471">00040</a> <font class="keyword">typedef</font> std::list &lt; unsigned long &gt; <a class="code" href="namespaceOgre.html#a471">ColorList</a>;
00041 <font class="comment">//typedef std::list &lt; SceneNode * &gt; SceneNodeList;</font>
00042 
00043 
<a name="l00051"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html">00051</a> <font class="keyword">class </font><a class="code" href="classOgre_1_1OctreeSceneManager.html">OctreeSceneManager</a> : <font class="keyword">public</font> <a class="code" href="classOgre_1_1SceneManager.html">SceneManager</a>
00052 {
00053 <font class="keyword">public</font>:
00054     <font class="keyword">static</font> <font class="keywordtype">int</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagerp0">intersect_call</a>;
00056     <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1OctreeSceneManagera0">OctreeSceneManager</a>( );
00058     <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1OctreeSceneManagera0">OctreeSceneManager</a>( <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &amp;box, <font class="keywordtype">int</font> max_depth );
00060     <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1OctreeSceneManagera2">~OctreeSceneManager</a>();
00061 
00064     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera10">init</a>( <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &amp;box, <font class="keywordtype">int</font> d );
00065 
00067     <font class="keyword">virtual</font> <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> * <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera11">createSceneNode</a> ( <font class="keywordtype">void</font> );
00069     <font class="keyword">virtual</font> <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> * <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera11">createSceneNode</a> ( <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a> &amp;name );
00071     <font class="keyword">virtual</font> <a class="code" href="classOgre_1_1Camera.html">Camera</a> * <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera13">createCamera</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a> &amp;name );
00072 
00074     <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera14">destroySceneNode</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a> &amp;name );
00075 
00076 
00077 
00079     <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1OctreeSceneManagera8">_updateSceneGraph</a>( <a class="code" href="classOgre_1_1Camera.html">Camera</a> * cam );
00081     <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1OctreeSceneManagera9">_findVisibleObjects</a> ( <a class="code" href="classOgre_1_1Camera.html">Camera</a> * cam );
00082 
00087     <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera15">_alertVisibleObjects</a>( <font class="keywordtype">void</font> );
00088 
00094     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera16">walkOctree</a>( <a class="code" href="classOgre_1_1OctreeCamera.html">OctreeCamera</a> *, <a class="code" href="classOgre_1_1RenderQueue.html">RenderQueue</a> *, <a class="code" href="classOgre_1_1Octree.html">Octree</a> *, <font class="keywordtype">bool</font> foundvisible );
00095 
00099     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera17">_updateOctreeNode</a>( <a class="code" href="classOgre_1_1OctreeNode.html">OctreeNode</a> * );
00101     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera18">_removeOctreeNode</a>( <a class="code" href="classOgre_1_1OctreeNode.html">OctreeNode</a> * );
00104     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera19">_addOctreeNode</a>( <a class="code" href="classOgre_1_1OctreeNode.html">OctreeNode</a> *, <a class="code" href="classOgre_1_1Octree.html">Octree</a> *octree, <font class="keywordtype">int</font> depth = 0 );
00105 
00109     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera20">findNodesIn</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &amp;box, std::list &lt; SceneNode * &gt; &amp;list, <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> *exclude = 0 );
00110 
00114     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera20">findNodesIn</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1Sphere.html">Sphere</a> &amp;sphere, std::list &lt; SceneNode * &gt; &amp;list, <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> *exclude = 0 );
00115 
00116 
00120     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera22">_findNodes</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1AxisAlignedBox.html">AxisAlignedBox</a> &amp;box, std::list &lt; SceneNode * &gt; &amp;list, <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> *exclude = 0, <font class="keywordtype">bool</font> full = <font class="keyword">false</font>, <a class="code" href="classOgre_1_1Octree.html">Octree</a> *octant = 0 );
00121 
00125     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera22">_findNodes</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1Sphere.html">Sphere</a> &amp;sphere, std::list &lt; SceneNode * &gt; &amp;list, <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> *exclude = 0, <font class="keywordtype">bool</font> full = <font class="keyword">false</font>, <a class="code" href="classOgre_1_1Octree.html">Octree</a> *octant = 0 );
00126 
00127 
<a name="l00129"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera24">00129</a>     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera24">setShowBoxes</a>( <font class="keywordtype">bool</font> b )
00130     {
00131         <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern13">mShowBoxes</a> = b;
00132     };
00133 
<a name="l00135"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera25">00135</a>     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera25">setUseCullCamera</a>( <font class="keywordtype">bool</font> b )
00136     {
00137         <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern14">mCullCamera</a> = b;
00138     };
00139 
<a name="l00140"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera26">00140</a>     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera26">setLooseOctree</a>( <font class="keywordtype">bool</font> b )
00141     {
00142         <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern15">mLoose</a> = b;
00143     };
00144 
00145 
00147     <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera27">resize</a>( <font class="keyword">const</font> AxisAlignedBox &amp;box );
00148 
00158     <font class="keyword">virtual</font> <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera28">setOption</a>( <font class="keyword">const</font> String &amp;, <font class="keyword">const</font> <font class="keywordtype">void</font> * );
00163     <font class="keyword">virtual</font> <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera29">getOption</a>( <font class="keyword">const</font> String &amp;, <font class="keywordtype">void</font> * );
00164 
00165     <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera30">getOptionValues</a>( <font class="keyword">const</font> String &amp; key, std::list &lt; SDDataChunk &gt; &amp;refValueList );
00166     <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagera31">getOptionKeys</a>( std::list &lt; String &gt; &amp; refKeys );
00167 
00168 
00169 
00170 
00171 <font class="keyword">protected</font>:
00172 
00173 
<a name="l00174"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern7">00174</a>     <a class="code" href="namespaceOgre.html#a469">NodeList</a> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern7">mVisible</a>;
00175 
<a name="l00177"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern8">00177</a>     <font class="keywordtype">float</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern8">mWorldSize</a>;
00178 
<a name="l00180"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern9">00180</a>     <a class="code" href="classOgre_1_1Octree.html">Octree</a> *<a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern9">mOctree</a>;
00181 
<a name="l00183"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern10">00183</a>     <a class="code" href="namespaceOgre.html#a470">BoxList</a> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern10">mBoxes</a>;
00184 
<a name="l00186"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern11">00186</a>     <font class="keywordtype">int</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern11">mNumObjects</a>;
00187 
<a name="l00189"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern12">00189</a>     <font class="keywordtype">int</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern12">mMaxDepth</a>;
00190 
<a name="l00192"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern13">00192</a>     <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern13">mShowBoxes</a>;
00193 
<a name="l00195"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern14">00195</a>     <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern14">mCullCamera</a>;
00196 
00197 
<a name="l00198"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern15">00198</a>     <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern15">mLoose</a>;
00199 
<a name="l00200"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern16">00200</a>     <a class="code" href="namespaceOgre.html#a349">Real</a> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern16">mCorners</a>[ 24 ];
00201     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagerq0">mColors</a>[ 8 ];
00202     <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagerq1">mIndexes</a>[ 24 ];
00203 
<a name="l00204"></a><a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern17">00204</a>     <a class="code" href="classOgre_1_1Matrix4.html">Matrix4</a> <a class="code" href="classOgre_1_1OctreeSceneManager.html#Ogre_1_1TerrainSceneManagern17">mScaleFactor</a>;
00205 
00206 };
00207 
00208 }
00209 
00210 <font class="preprocessor">#endif</font>
00211 <font class="preprocessor"></font>
</pre></div><p>
Copyright &copy; 2002-2003 by The OGRE Team<br />
Last modified Wed Jan 21 00:10:19 2004
</p>
</body>
</html>