geos_390_docs/classgeos_1_1precision_1_1C...

499 lines
27 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::CommonBitsOp 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_1CommonBitsOp.html">CommonBitsOp</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classgeos_1_1precision_1_1CommonBitsOp-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">geos::precision::CommonBitsOp Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Provides versions of Geometry spatial functions which use common bit removal to reduce the likelihood of robustness problems.
<a href="classgeos_1_1precision_1_1CommonBitsOp.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="CommonBitsOp_8h_source.html">CommonBitsOp.h</a>&gt;</code></p>
<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:ab8de6805f2438a8641605a0f6a27db00"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1CommonBitsOp.html#ab8de6805f2438a8641605a0f6a27db00">CommonBitsOp</a> ()</td></tr>
<tr class="memdesc:ab8de6805f2438a8641605a0f6a27db00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new instance of class, which reshifts result Geometry. <a href="#ab8de6805f2438a8641605a0f6a27db00">More...</a><br /></td></tr>
<tr class="separator:ab8de6805f2438a8641605a0f6a27db00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af98cc913ce7432dbc6d33b70aed411c5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1CommonBitsOp.html#af98cc913ce7432dbc6d33b70aed411c5">CommonBitsOp</a> (bool nReturnToOriginalPrecision)</td></tr>
<tr class="memdesc:af98cc913ce7432dbc6d33b70aed411c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new instance of class, specifying whether the result <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a>s should be reshifted. <a href="#af98cc913ce7432dbc6d33b70aed411c5">More...</a><br /></td></tr>
<tr class="separator:af98cc913ce7432dbc6d33b70aed411c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a605136f3dfe0cbaf9985c31a1444ec9e"><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_1CommonBitsOp.html#a605136f3dfe0cbaf9985c31a1444ec9e">intersection</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom1)</td></tr>
<tr class="memdesc:a605136f3dfe0cbaf9985c31a1444ec9e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the set-theoretic intersection of two Geometry, using enhanced precision. <a href="#a605136f3dfe0cbaf9985c31a1444ec9e">More...</a><br /></td></tr>
<tr class="separator:a605136f3dfe0cbaf9985c31a1444ec9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ef69dcb6415d3932ac118298b119de3"><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_1CommonBitsOp.html#a6ef69dcb6415d3932ac118298b119de3">Union</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom1)</td></tr>
<tr class="memdesc:a6ef69dcb6415d3932ac118298b119de3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the set-theoretic union of two Geometry, using enhanced precision. <a href="#a6ef69dcb6415d3932ac118298b119de3">More...</a><br /></td></tr>
<tr class="separator:a6ef69dcb6415d3932ac118298b119de3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2aab396150a9fc8c211dfa4a60512e40"><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_1CommonBitsOp.html#a2aab396150a9fc8c211dfa4a60512e40">difference</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom1)</td></tr>
<tr class="memdesc:a2aab396150a9fc8c211dfa4a60512e40"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the set-theoretic difference of two Geometry, using enhanced precision. <a href="#a2aab396150a9fc8c211dfa4a60512e40">More...</a><br /></td></tr>
<tr class="separator:a2aab396150a9fc8c211dfa4a60512e40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45fc07a3a0da36fed4be81cf24719c83"><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_1CommonBitsOp.html#a45fc07a3a0da36fed4be81cf24719c83">symDifference</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom1)</td></tr>
<tr class="memdesc:a45fc07a3a0da36fed4be81cf24719c83"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the set-theoretic symmetric difference of two geometries, using enhanced precision. <a href="#a45fc07a3a0da36fed4be81cf24719c83">More...</a><br /></td></tr>
<tr class="separator:a45fc07a3a0da36fed4be81cf24719c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8390bfa605eff59d0115ee15ebac325e"><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_1CommonBitsOp.html#a8390bfa605eff59d0115ee15ebac325e">buffer</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, double distance)</td></tr>
<tr class="memdesc:a8390bfa605eff59d0115ee15ebac325e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes the buffer a geometry, using enhanced precision. <a href="#a8390bfa605eff59d0115ee15ebac325e">More...</a><br /></td></tr>
<tr class="separator:a8390bfa605eff59d0115ee15ebac325e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4bf6280d2b4a800fbe758041aa462b0"><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_1CommonBitsOp.html#ad4bf6280d2b4a800fbe758041aa462b0">computeResultPrecision</a> (std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt; result)</td></tr>
<tr class="memdesc:ad4bf6280d2b4a800fbe758041aa462b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">If required, returning the result to the orginal precision if required. <a href="#ad4bf6280d2b4a800fbe758041aa462b0">More...</a><br /></td></tr>
<tr class="separator:ad4bf6280d2b4a800fbe758041aa462b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:a9aa0a05d3e6e41268388bab1bb3c4b5a"><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_1CommonBitsOp.html#a9aa0a05d3e6e41268388bab1bb3c4b5a">removeCommonBits</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0)</td></tr>
<tr class="memdesc:a9aa0a05d3e6e41268388bab1bb3c4b5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Computes a copy of the input Geometry with the calculated common bits removed from each coordinate. <a href="#a9aa0a05d3e6e41268388bab1bb3c4b5a">More...</a><br /></td></tr>
<tr class="separator:a9aa0a05d3e6e41268388bab1bb3c4b5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0f7b92b6b37e542878e17c6802052e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1CommonBitsOp.html#ad0f7b92b6b37e542878e17c6802052e7">removeCommonBits</a> (const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom0, const <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> *geom1, std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt; &amp;rgeom0, std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt; &amp;rgeom1)</td></tr>
<tr class="separator:ad0f7b92b6b37e542878e17c6802052e7"><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:a8498f214b0d1e6c53897eff8595e83ba"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1CommonBitsOp.html#a8498f214b0d1e6c53897eff8595e83ba">returnToOriginalPrecision</a></td></tr>
<tr class="separator:a8498f214b0d1e6c53897eff8595e83ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0621f08833a7d1d1d83f5283d3f541b8"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgeos_1_1precision_1_1CommonBitsRemover.html">CommonBitsRemover</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1precision_1_1CommonBitsOp.html#a0621f08833a7d1d1d83f5283d3f541b8">cbr</a></td></tr>
<tr class="separator:a0621f08833a7d1d1d83f5283d3f541b8"><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>Provides versions of Geometry spatial functions which use common bit removal to reduce the likelihood of robustness problems. </p>
<p>In the current implementation no rounding is performed on the reshifted result geometry, which means that it is possible that the returned Geometry is invalid. Client classes should check the validity of the returned result themselves. </p>
<p>Definition at line <a class="el" href="CommonBitsOp_8h_source.html#l00050">50</a> of file <a class="el" href="CommonBitsOp_8h_source.html">CommonBitsOp.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab8de6805f2438a8641605a0f6a27db00"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">geos::precision::CommonBitsOp::CommonBitsOp </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a new instance of class, which reshifts result Geometry. </p>
</div>
</div>
<a class="anchor" id="af98cc913ce7432dbc6d33b70aed411c5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">geos::precision::CommonBitsOp::CommonBitsOp </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>nReturnToOriginalPrecision</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a new instance of class, specifying whether the result <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a>s should be reshifted. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">nReturnToOriginalPrecision</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a8390bfa605eff59d0115ee15ebac325e"></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::CommonBitsOp::buffer </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>distance</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes the buffer a geometry, using enhanced precision. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the Geometry to buffer </td></tr>
<tr><td class="paramname">distance</td><td>the buffer distance </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the Geometry representing the buffer of the input Geometry. </dd></dl>
</div>
</div>
<a class="anchor" id="ad4bf6280d2b4a800fbe758041aa462b0"></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::CommonBitsOp::computeResultPrecision </td>
<td>(</td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt;&#160;</td>
<td class="paramname"><em>result</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>If required, returning the result to the orginal precision if required. </p>
<p>In this current implementation, no rounding is performed on the reshifted result geometry, which means that it is possible that the returned Geometry is invalid.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">result</td><td>the result Geometry to modify </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the result Geometry with the required precision </dd></dl>
</div>
</div>
<a class="anchor" id="a2aab396150a9fc8c211dfa4a60512e40"></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::CommonBitsOp::difference </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>geom1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes the set-theoretic difference of two Geometry, using enhanced precision. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the first Geometry </td></tr>
<tr><td class="paramname">geom1</td><td>the second Geometry, to be subtracted from the first </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the Geometry representing the set-theoretic difference of the input Geometries. </dd></dl>
</div>
</div>
<a class="anchor" id="a605136f3dfe0cbaf9985c31a1444ec9e"></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::CommonBitsOp::intersection </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>geom1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes the set-theoretic intersection of two Geometry, using enhanced precision. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the first Geometry </td></tr>
<tr><td class="paramname">geom1</td><td>the second Geometry </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the Geometry representing the set-theoretic intersection of the input Geometries. </dd></dl>
</div>
</div>
<a class="anchor" id="a9aa0a05d3e6e41268388bab1bb3c4b5a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<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::CommonBitsOp::removeCommonBits </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>geom0</em></td><td>)</td>
<td></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>Computes a copy of the input Geometry with the calculated common bits removed from each coordinate. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the Geometry to remove common bits from </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a copy of the input Geometry with common bits removed (caller takes responsibility of its deletion) </dd></dl>
</div>
</div>
<a class="anchor" id="ad0f7b92b6b37e542878e17c6802052e7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void geos::precision::CommonBitsOp::removeCommonBits </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>geom1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>rgeom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::unique_ptr&lt; <a class="el" href="classgeos_1_1geom_1_1Geometry.html">geom::Geometry</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>rgeom1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a45fc07a3a0da36fed4be81cf24719c83"></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::CommonBitsOp::symDifference </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>geom1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes the set-theoretic symmetric difference of two geometries, using enhanced precision. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the first Geometry </td></tr>
<tr><td class="paramname">geom1</td><td>the second Geometry </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the Geometry representing the set-theoretic symmetric difference of the input Geometries. </dd></dl>
</div>
</div>
<a class="anchor" id="a6ef69dcb6415d3932ac118298b119de3"></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::CommonBitsOp::Union </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>geom0</em>, </td>
</tr>
<tr>
<td class="paramkey"></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>geom1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Computes the set-theoretic union of two Geometry, using enhanced precision. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">geom0</td><td>the first Geometry </td></tr>
<tr><td class="paramname">geom1</td><td>the second Geometry </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the Geometry representing the set-theoretic union of the input Geometries. </dd></dl>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a0621f08833a7d1d1d83f5283d3f541b8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::unique_ptr&lt;<a class="el" href="classgeos_1_1precision_1_1CommonBitsRemover.html">CommonBitsRemover</a>&gt; geos::precision::CommonBitsOp::cbr</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="CommonBitsOp_8h_source.html#l00056">56</a> of file <a class="el" href="CommonBitsOp_8h_source.html">CommonBitsOp.h</a>.</p>
</div>
</div>
<a class="anchor" id="a8498f214b0d1e6c53897eff8595e83ba"></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::CommonBitsOp::returnToOriginalPrecision</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="CommonBitsOp_8h_source.html#l00054">54</a> of file <a class="el" href="CommonBitsOp_8h_source.html">CommonBitsOp.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="CommonBitsOp_8h_source.html">CommonBitsOp.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>