Sophie

Sophie

distrib > Fedora > 14 > x86_64 > by-pkgid > 5035839f674c88dea1f7928a86fbdc64 > files > 1061

geos-devel-3.2.1-3.fc14.x86_64.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>GEOS: geos::operation::buffer::BufferSubgraph 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.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</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="tabs2">
    <ul class="tablist">
      <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">
    <ul>
      <li><a class="el" href="namespacegeos.html">geos</a>      </li>
      <li><a class="el" href="namespacegeos_1_1operation.html">operation</a>      </li>
      <li><a class="el" href="namespacegeos_1_1operation_1_1buffer.html">buffer</a>      </li>
      <li><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html">geos::operation::buffer::BufferSubgraph</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<h1>geos::operation::buffer::BufferSubgraph Class Reference</h1>  </div>
</div>
<div class="contents">
<!-- doxytag: class="geos::operation::buffer::BufferSubgraph" -->
<p>A connected subset of the graph of DirectedEdge and geomgraph::Node.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="BufferSubgraph_8h_source.html">BufferSubgraph.h</a>&gt;</code></p>

<p><a href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90183bfeff847ea53ee3c4ffc4247f92"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::getDirectedEdges" ref="a90183bfeff847ea53ee3c4ffc4247f92" args="()" -->
std::vector<br class="typebreak"/>
&lt; <a class="el" href="classgeos_1_1geomgraph_1_1DirectedEdge.html">geomgraph::DirectedEdge</a> * &gt; *&nbsp;</td><td class="memItemRight" valign="bottom"><b>getDirectedEdges</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d25d22554122e82673e960f3ce09024"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::getNodes" ref="a0d25d22554122e82673e960f3ce09024" args="()" -->
std::vector&lt; geomgraph::Node * &gt; *&nbsp;</td><td class="memItemRight" valign="bottom"><b>getNodes</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad538dc7d77bf1734154a72f1e5e70efd"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::getRightmostCoordinate" ref="ad538dc7d77bf1734154a72f1e5e70efd" args="()" -->
<a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html#ad538dc7d77bf1734154a72f1e5e70efd">getRightmostCoordinate</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the rightmost coordinate in the edges of the subgraph. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html#a8dc803819dd05363f4f07568f32d926b">create</a> (geomgraph::Node *node)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates the subgraph consisting of all edges reachable from this node.  <a href="#a8dc803819dd05363f4f07568f32d926b"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3dca5aa4bbf59c76663a109226115674"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::computeDepth" ref="a3dca5aa4bbf59c76663a109226115674" args="(int outsideDepth)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>computeDepth</b> (int outsideDepth)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html#a675417cc0401769dc15885568ebcafa3">findResultEdges</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Find all edges whose depths indicates that they are in the result area(s).  <a href="#a675417cc0401769dc15885568ebcafa3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html#a87da13f45282fca2f1974b7c3e8279b7">compareTo</a> (<a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html">BufferSubgraph</a> *)</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">BufferSubgraphs are compared on the x-value of their rightmost Coordinate.  <a href="#a87da13f45282fca2f1974b7c3e8279b7"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1geom_1_1Envelope.html">geom::Envelope</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html#ac70a77fe64bdc345a1a104255a23e9e0">getEnvelope</a> ()</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Computes the envelope of the edges in the subgraph. The envelope is cached after being computed.  <a href="#ac70a77fe64bdc345a1a104255a23e9e0"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a186c99f44e12e0053c44f9539dfe21a3"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::operator&lt;&lt;" ref="a186c99f44e12e0053c44f9539dfe21a3" args="(std::ostream &amp;os, const BufferSubgraph &amp;bs)" -->
std::ostream &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html">BufferSubgraph</a> &amp;bs)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>A connected subset of the graph of DirectedEdge and geomgraph::Node. </p>
<p>Its edges will generate either</p>
<ul>
<li>a single polygon in the complete buffer, with zero or more holes, or</li>
<li>ne or more connected holes </li>
</ul>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a87da13f45282fca2f1974b7c3e8279b7"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::compareTo" ref="a87da13f45282fca2f1974b7c3e8279b7" args="(BufferSubgraph *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int geos::operation::buffer::BufferSubgraph::compareTo </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgeos_1_1operation_1_1buffer_1_1BufferSubgraph.html">BufferSubgraph</a> *&nbsp;</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>BufferSubgraphs are compared on the x-value of their rightmost Coordinate. </p>
<p>This defines a partial ordering on the graphs such that:</p>
<p>g1 &gt;= g2 &lt;==&gt; Ring(g2) does not contain Ring(g1)</p>
<p>where Polygon(g) is the buffer polygon that is built from g.</p>
<p>This relationship is used to sort the BufferSubgraphs so that shells are guaranteed to be built before holes. </p>

</div>
</div>
<a class="anchor" id="a8dc803819dd05363f4f07568f32d926b"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::create" ref="a8dc803819dd05363f4f07568f32d926b" args="(geomgraph::Node *node)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void geos::operation::buffer::BufferSubgraph::create </td>
          <td>(</td>
          <td class="paramtype">geomgraph::Node *&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates the subgraph consisting of all edges reachable from this node. </p>
<p>Finds the edges in the graph and the rightmost coordinate.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>a node to start the graph traversal from </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a675417cc0401769dc15885568ebcafa3"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::findResultEdges" ref="a675417cc0401769dc15885568ebcafa3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void geos::operation::buffer::BufferSubgraph::findResultEdges </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Find all edges whose depths indicates that they are in the result area(s). </p>
<p>Since we want polygon shells to be oriented CW, choose dirEdges with the interior of the result on the RHS. Mark them as being in the result. Interior Area edges are the result of dimensional collapses. They do not form part of the result area boundary. </p>

</div>
</div>
<a class="anchor" id="ac70a77fe64bdc345a1a104255a23e9e0"></a><!-- doxytag: member="geos::operation::buffer::BufferSubgraph::getEnvelope" ref="ac70a77fe64bdc345a1a104255a23e9e0" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgeos_1_1geom_1_1Envelope.html">geom::Envelope</a>* geos::operation::buffer::BufferSubgraph::getEnvelope </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Computes the envelope of the edges in the subgraph. The envelope is cached after being computed. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the envelope of the graph. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="BufferSubgraph_8h_source.html">BufferSubgraph.h</a></li>
</ul>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Thu Jul 22 2010 for GEOS by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
</body>
</html>