<html> <head> <title>OgreTerrainSceneManager.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>OgreTerrainSceneManager.h</h1><a href="OgreTerrainSceneManager_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <font class="comment">/***************************************************************************</font> 00002 <font class="comment"> terrainscenemanager.h - description</font> 00003 <font class="comment"> -------------------</font> 00004 <font class="comment"> begin : Mon Sep 23 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 published by *</font> 00013 <font class="comment"> * the Free Software Foundation; either version 2 of the License, or *</font> 00014 <font class="comment"> * (at your option) any later version. *</font> 00015 <font class="comment"> * *</font> 00016 <font class="comment"> ***************************************************************************/</font> 00017 00018 <font class="preprocessor">#ifndef TERRAINSCENEMANAGER_H</font> 00019 <font class="preprocessor"></font><font class="preprocessor">#define TERRAINSCENEMANAGER_H</font> 00020 <font class="preprocessor"></font> 00021 <font class="preprocessor">#include <<a class="code" href="OgreOctreeSceneManager_8h.html">OgreOctreeSceneManager.h</a>></font> 00022 <font class="preprocessor">#include <<a class="code" href="OgreTerrainRenderable_8h.html">OgreTerrainRenderable.h</a>></font> 00023 00024 00025 <font class="keyword">namespace </font>Ogre 00026 { 00027 00028 <font class="keyword">class </font>Image; 00029 <a name="l00030"></a><a class="code" href="namespaceOgre.html#a474">00030</a> <font class="keyword">typedef</font> std::vector < TerrainRenderable * > <a class="code" href="namespaceOgre.html#a474">TerrainRow</a>; <a name="l00031"></a><a class="code" href="namespaceOgre.html#a475">00031</a> <font class="keyword">typedef</font> std::vector < TerrainRow > <a class="code" href="namespaceOgre.html#a475">Terrain2D</a>; 00032 00033 <a name="l00039"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html">00039</a> <font class="keyword">class </font><a class="code" href="classOgre_1_1TerrainSceneManager.html">TerrainSceneManager</a> : <font class="keyword">public</font> <a class="code" href="classOgre_1_1OctreeSceneManager.html">OctreeSceneManager</a> 00040 { 00041 <font class="keyword">public</font>: 00042 <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera0">TerrainSceneManager</a>( ); 00043 <font class="keyword">virtual</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera1">~TerrainSceneManager</a>( ); 00044 00047 <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera2">setWorldGeometry</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1String.html">String</a>& filename ); 00048 00050 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera3">_updateSceneGraph</a>( <a class="code" href="classOgre_1_1Camera.html">Camera</a> * cam ); 00051 00053 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera4">_renderVisibleObjects</a>( <font class="keywordtype">void</font> ); 00054 00056 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera5">_findVisibleObjects</a> ( <a class="code" href="classOgre_1_1Camera.html">Camera</a> * cam ); 00057 00059 <font class="keywordtype">float</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera6">getHeightAt</a>( <font class="keywordtype">float</font> x, <font class="keywordtype">float</font> y ); 00060 00061 00062 <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera7">intersectSegment</a>( <font class="keyword">const</font> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> & start, <font class="keyword">const</font> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> & end, <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> * result ); 00063 00064 <a name="l00066"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera8">00066</a> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> & <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera8">getNormalAt</a>( <font class="keywordtype">float</font> x, <font class="keywordtype">float</font> y ) 00067 { 00068 <font class="keywordflow">return</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern2">mTempNormal</a>; 00069 }; 00070 00074 TerrainRenderable * <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagera9">getTerrainTile</a>( <font class="keyword">const</font> Vector3 & pt ); 00075 00076 00077 <font class="keyword">protected</font>: 00078 <a name="l00079"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagerb0">00079</a> <font class="keywordtype">bool</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagerb0">_checkSize</a>( <font class="keywordtype">int</font> s ) 00080 { 00081 <font class="keywordflow">for</font> ( <font class="keywordtype">int</font> i = 0; i < 16; i++ ) 00082 { 00083 printf( <font class="stringliteral">"Checking...%d\n"</font>, ( 1 << i ) + 1 ); 00084 00085 <font class="keywordflow">if</font> ( s == ( 1 << i ) + 1 ) 00086 <font class="keywordflow">return</font> <font class="keyword">true</font>; 00087 } 00088 00089 <font class="keywordflow">return</font> <font class="keyword">false</font>; 00090 00091 } 00092 00093 <a name="l00094"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern0">00094</a> <font class="keywordtype">int</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern0">mNumTiles</a>; 00095 <a name="l00096"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern1">00096</a> <font class="keywordtype">int</font> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern1">mTileSize</a>; 00097 <a name="l00098"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern2">00098</a> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern2">mTempNormal</a>; 00099 <a name="l00100"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern3">00100</a> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern3">mScale</a>; 00101 <a name="l00102"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern4">00102</a> <a class="code" href="classOgre_1_1Material.html">Material</a> *<a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern4">mTerrainMaterial</a>; 00103 <a name="l00104"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern5">00104</a> <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a> * <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern5">mTerrainRoot</a>; 00105 <a name="l00106"></a><a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern6">00106</a> <a class="code" href="namespaceOgre.html#a475">Terrain2D</a> <a class="code" href="classOgre_1_1TerrainSceneManager.html#Ogre_1_1TerrainSceneManagern6">mTiles</a>; 00107 00108 }; 00109 00110 } 00111 00112 <font class="preprocessor">#endif</font> </pre></div><p> Copyright © 2002-2003 by The OGRE Team<br /> Last modified Wed Jan 21 00:10:29 2004 </p> </body> </html>