Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 96617cbbea5434e5cff4ccd67437c037 > files > 140

mercator-devel-0.2.7-3.fc12.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Mercator: Mercator::TileShader Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>Mercator</b>::<a class="el" href="classMercator_1_1TileShader.html">TileShader</a>
  </div>
</div>
<div class="contents">
<h1>Mercator::TileShader Class Reference</h1><!-- doxytag: class="Mercator::TileShader" --><!-- doxytag: inherits="Mercator::Shader" --><a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> agregating surface data.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="TileShader_8h_source.html">TileShader.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for Mercator::TileShader:</div>
<div class="dynsection">

<p><center><img src="classMercator_1_1TileShader.png" usemap="#Mercator::TileShader_map" border="0" alt=""></center>
<map name="Mercator::TileShader_map">
<area href="classMercator_1_1Shader.html" alt="Mercator::Shader" shape="rect" coords="0,0,131,24">
</map>
</div>

<p>
<a href="classMercator_1_1TileShader-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1ce547e611fde5576d949a0e6fc6eb06"></a><!-- doxytag: member="Mercator::TileShader::Shaderstore" ref="1ce547e611fde5576d949a0e6fc6eb06" args="" -->
typedef std::map&lt; int, <a class="el" href="classMercator_1_1Shader.html">Shader</a> * &gt;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMercator_1_1TileShader.html#1ce547e611fde5576d949a0e6fc6eb06">Shaderstore</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">STL map to store sparse array of <a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> pointers. <br></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="107634b523f5ab462e19c5ea748d6bff"></a><!-- doxytag: member="Mercator::TileShader::addShader" ref="107634b523f5ab462e19c5ea748d6bff" args="(Shader *t, int id)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMercator_1_1TileShader.html#107634b523f5ab462e19c5ea748d6bff">addShader</a> (<a class="el" href="classMercator_1_1Shader.html">Shader</a> *t, int id)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a shader to those agregated by the tile shader. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMercator_1_1TileShader.html#5cb9b0c15d7ff4804db74485fbbb00b9">checkIntersect</a> (const <a class="el" href="classMercator_1_1Segment.html">Segment</a> &amp;) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether this <a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> has any effect on the given <a class="el" href="classMercator_1_1Segment.html" title="Class storing heightfield and other data for a single fixed size square area of terrain...">Segment</a>.  <a href="#5cb9b0c15d7ff4804db74485fbbb00b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="bd0a5c09f9df1db089ad410f974a7deb"></a><!-- doxytag: member="Mercator::TileShader::shade" ref="bd0a5c09f9df1db089ad410f974a7deb" args="(Surface &amp;) const " -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMercator_1_1TileShader.html#bd0a5c09f9df1db089ad410f974a7deb">shade</a> (<a class="el" href="classMercator_1_1Surface.html">Surface</a> &amp;) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Populate a <a class="el" href="classMercator_1_1Surface.html" title="Data store for terrain surface data.">Surface</a> with data. <br></td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a3be6ff97532009c5db1e7f11983fe8d"></a><!-- doxytag: member="Mercator::TileShader::m_subShaders" ref="a3be6ff97532009c5db1e7f11983fe8d" args="" -->
<a class="el" href="classMercator_1_1TileShader.html#1ce547e611fde5576d949a0e6fc6eb06">Shaderstore</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classMercator_1_1TileShader.html#a3be6ff97532009c5db1e7f11983fe8d">m_subShaders</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Store of shaders which are agregated by this shader. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> agregating surface data. 
<p>
Some applications require the terrain surface data be stored in a single buffer so specific locations can be queried to determine the type. Typically this is used on a server, where lots of surface data optimised for rendering is not required, but fast cheap queries about the surface at a specific point are required. <hr><h2>Member Function Documentation</h2>
<a class="anchor" name="5cb9b0c15d7ff4804db74485fbbb00b9"></a><!-- doxytag: member="Mercator::TileShader::checkIntersect" ref="5cb9b0c15d7ff4804db74485fbbb00b9" args="(const Segment &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Mercator::TileShader::checkIntersect           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classMercator_1_1Segment.html">Segment</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check whether this <a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> has any effect on the given <a class="el" href="classMercator_1_1Segment.html" title="Class storing heightfield and other data for a single fixed size square area of terrain...">Segment</a>. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the given <a class="el" href="classMercator_1_1Segment.html" title="Class storing heightfield and other data for a single fixed size square area of terrain...">Segment</a> height range is within the range that this <a class="el" href="classMercator_1_1Shader.html" title="Base class for Shader objects which create surface data for use when rendering terrain...">Shader</a> uses. e.g. A high altitude snow shader will have no effect on low level terrain. </dd></dl>

<p>Implements <a class="el" href="classMercator_1_1Shader.html#6a69ca4a474c18f1038cc9a75a419855">Mercator::Shader</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="TileShader_8h_source.html">TileShader.h</a><li>TileShader.cpp</ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated for Mercator by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>