geos_390_docs/classgeos_1_1precision_1_1S...

241 lines
13 KiB
HTML

<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>GEOS: geos::precision::SimpleGeometryPrecisionReducer Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">GEOS
&#160;<span id="projectnumber">3.9.1dev</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;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 id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacegeos.html">geos</a></li><li class="navelem"><a class="el" href="namespacegeos_1_1precision.html">precision</a></li><li class="navelem"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html">SimpleGeometryPrecisionReducer</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">geos::precision::SimpleGeometryPrecisionReducer Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Reduces the precision of a <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> according to the supplied <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a>, without attempting to preserve valid topology.
<a href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html">SimpleGeometryPrecisionReducer.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for geos::precision::SimpleGeometryPrecisionReducer:</div>
<div class="dyncontent">
<div class="center"><iframe scrolling="no" frameborder="0" src="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer__coll__graph.svg" width="258" height="147"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8cc330ff70a3b91753ab40fad72f539b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#a8cc330ff70a3b91753ab40fad72f539b">SimpleGeometryPrecisionReducer</a> (const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a> *pm)</td></tr>
<tr class="separator:a8cc330ff70a3b91753ab40fad72f539b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa154ac28da01b349f18c45568906fd59"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#aa154ac28da01b349f18c45568906fd59">setRemoveCollapsedComponents</a> (bool nRemoveCollapsed)</td></tr>
<tr class="separator:aa154ac28da01b349f18c45568906fd59"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64752caf00c69fb34a5ffafdf2435c3d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#a64752caf00c69fb34a5ffafdf2435c3d">getPrecisionModel</a> ()</td></tr>
<tr class="separator:a64752caf00c69fb34a5ffafdf2435c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5527b9d8471f6d34c3c37320c42b4d8c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#a5527b9d8471f6d34c3c37320c42b4d8c">getRemoveCollapsed</a> ()</td></tr>
<tr class="separator:a5527b9d8471f6d34c3c37320c42b4d8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cb4c065c641a077014f9612757698ce"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#a2cb4c065c641a077014f9612757698ce">reduce</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom)</td></tr>
<tr class="separator:a2cb4c065c641a077014f9612757698ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ada2cbd9157a71ae883b88ff526aca144"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#ada2cbd9157a71ae883b88ff526aca144">newPrecisionModel</a></td></tr>
<tr class="separator:ada2cbd9157a71ae883b88ff526aca144"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a263ebbbe8f1987f5e8719bfcc88ebea2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1SimpleGeometryPrecisionReducer.html#a263ebbbe8f1987f5e8719bfcc88ebea2">removeCollapsed</a></td></tr>
<tr class="separator:a263ebbbe8f1987f5e8719bfcc88ebea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Reduces the precision of a <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> according to the supplied <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a>, without attempting to preserve valid topology. </p>
<p>The topology of the resulting geometry may be invalid if topological collapse occurs due to coordinates being shifted. It is up to the client to check this and handle it if necessary. Collapses may not matter for some uses. An example is simplifying the input to the buffer algorithm. The buffer algorithm does not depend on the validity of the input geometry. </p>
<p>Definition at line <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html#l00045">45</a> of file <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html">SimpleGeometryPrecisionReducer.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8cc330ff70a3b91753ab40fad72f539b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">geos::precision::SimpleGeometryPrecisionReducer::SimpleGeometryPrecisionReducer </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a> *&#160;</td>
<td class="paramname"><em>pm</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a64752caf00c69fb34a5ffafdf2435c3d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a>* geos::precision::SimpleGeometryPrecisionReducer::getPrecisionModel </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a5527b9d8471f6d34c3c37320c42b4d8c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool geos::precision::SimpleGeometryPrecisionReducer::getRemoveCollapsed </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a2cb4c065c641a077014f9612757698ce"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;<a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a>&gt; geos::precision::SimpleGeometryPrecisionReducer::reduce </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *&#160;</td>
<td class="paramname"><em>geom</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="aa154ac28da01b349f18c45568906fd59"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void geos::precision::SimpleGeometryPrecisionReducer::setRemoveCollapsedComponents </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>nRemoveCollapsed</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets whether the reduction will result in collapsed components being removed completely, or simply being collapsed to an (invalid) Geometry of the same type.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">nRemoveCollapsed</td><td>if <code>true</code> collapsed components will be removed </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="ada2cbd9157a71ae883b88ff526aca144"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classgeos_1_1geom_1_1PrecisionModel.html">geom::PrecisionModel</a>* geos::precision::SimpleGeometryPrecisionReducer::newPrecisionModel</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html#l00049">49</a> of file <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html">SimpleGeometryPrecisionReducer.h</a>.</p>
</div>
</div>
<a class="anchor" id="a263ebbbe8f1987f5e8719bfcc88ebea2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool geos::precision::SimpleGeometryPrecisionReducer::removeCollapsed</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html#l00051">51</a> of file <a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html">SimpleGeometryPrecisionReducer.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="SimpleGeometryPrecisionReducer_8h_source.html">SimpleGeometryPrecisionReducer.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
</html>