<html> <head> <title>OgreOctreeCamera.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>OgreOctreeCamera.h</h1><a href="OgreOctreeCamera_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/***************************************************************************</font> 00002 <font class="comment">octreecamera.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 OCTREECAMERA_H</font> 00019 <font class="preprocessor"></font><font class="preprocessor">#define OCTREECAMERA_H</font> 00020 <font class="preprocessor"></font> 00021 <font class="preprocessor">#include <<a class="code" href="OgreCamera_8h.html">OgreCamera.h</a>></font> 00022 <font class="preprocessor">#include <<a class="code" href="OgreHardwareBufferManager_8h.html">OgreHardwareBufferManager.h</a>></font> 00023 <font class="preprocessor">#include <<a class="code" href="OgreSimpleRenderable_8h.html">OgreSimpleRenderable.h</a>></font> 00024 00029 <font class="keyword">namespace </font>Ogre 00030 { 00031 00032 <font class="keyword">class </font>Octree; 00033 00034 <a name="l00043"></a><a class="code" href="classOgre_1_1OctreeCamera.html">00043</a> <font class="keyword">class </font><a class="code" href="classOgre_1_1OctreeCamera.html">OctreeCamera</a> : <font class="keyword">public</font> <a class="code" href="classOgre_1_1Camera.html">Camera</a>, <font class="keyword">public</font> <a class="code" href="classOgre_1_1Renderable.html">Renderable</a> 00044 { 00045 <font class="keyword">public</font>: 00046 <a name="l00048"></a><a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameras3">00048</a> <font class="keyword">enum</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameras3">Visibility</a> 00049 { 00050 <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameras3Ogre_1_1OctreeCameras0">NONE</a>, 00051 <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameras3Ogre_1_1OctreeCameras1">PARTIAL</a>, 00052 <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameras3Ogre_1_1OctreeCameras2">FULL</a> 00053 }; 00054 00055 <font class="comment">/* Standard Constructor */</font> 00056 <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa0">OctreeCamera</a>( <font class="keyword">const</font> String& name, SceneManager* sm ); 00057 <font class="comment">/* Standard destructor */</font> 00058 <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa1">~OctreeCamera</a>(); 00059 00062 OctreeCamera::Visibility <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa2">getVisibility</a>( <font class="keyword">const</font> AxisAlignedBox &bound ); 00063 00066 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa3">getRenderOperation</a>(RenderOperation& op); 00067 00068 <font class="keyword">virtual</font> Material* <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa4">getMaterial</a>(<font class="keywordtype">void</font>) <font class="keyword">const</font>; 00069 00070 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa5">getWorldTransforms</a>(Matrix4* xform) <font class="keyword">const</font>; 00071 <font class="keyword">virtual</font> <font class="keyword">const</font> Quaternion& <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa6">getWorldOrientation</a>(<font class="keywordtype">void</font>) <font class="keyword">const</font>; 00072 <font class="keyword">virtual</font> <font class="keyword">const</font> Vector3& <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa7">getWorldPosition</a>(<font class="keywordtype">void</font>) <font class="keyword">const</font>; 00073 00075 <font class="keyword">const</font> <a class="code" href="namespaceOgre.html#a56">LightList</a>& <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa8">getLights</a>(<font class="keywordtype">void</font>) <font class="keyword">const</font>; 00076 00077 <a class="code" href="namespaceOgre.html#a349">Real</a> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraa9">getSquaredViewDepth</a>(<font class="keyword">const</font> <a class="code" href="classOgre_1_1Camera.html#Ogre_1_1Cameraa0">Camera</a>* cam) <font class="keyword">const</font>; 00078 00079 <font class="keyword">protected</font>: 00082 <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCamerab0">_getCorner</a>( <a class="code" href="namespaceOgre.html#a349">Real</a> *r, <a class="code" href="namespaceOgre.html#a625">FrustumPlane</a> p1, <a class="code" href="namespaceOgre.html#a625">FrustumPlane</a> p2, <a class="code" href="namespaceOgre.html#a625">FrustumPlane</a> p3 ); 00083 <a name="l00084"></a><a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameran0">00084</a> <a class="code" href="namespaceOgre.html#a349">Real</a> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameran0">mCorners</a>[ 24 ]; 00086 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">short</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraq0">mIndexes</a>[ 24 ]; 00088 <font class="keyword">static</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameraq1">mColors</a>[ 8 ]; 00089 <a name="l00090"></a><a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameran1">00090</a> <a class="code" href="classOgre_1_1Material.html">Material</a>* <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCameran1">mMaterial</a>; 00091 00092 <font class="keyword">private</font>: <a name="l00093"></a><a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCamerao0">00093</a> <a class="code" href="classOgre_1_1VertexData.html">VertexData</a>* <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCamerao0">mVertexData</a>; <a name="l00094"></a><a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCamerao1">00094</a> <a class="code" href="classOgre_1_1IndexData.html">IndexData</a>* <a class="code" href="classOgre_1_1OctreeCamera.html#Ogre_1_1OctreeCamerao1">mIndexData</a>; 00095 }; 00096 00097 } 00098 00099 <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>