geos_390_docs/classgeos_1_1simplify_1_1Ta...

722 lines
36 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::simplify::TaggedLineStringSimplifier 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_1simplify.html">simplify</a></li><li class="navelem"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html">TaggedLineStringSimplifier</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-static-methods">Static Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">geos::simplify::TaggedLineStringSimplifier Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Simplifies a <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html" title="Contains and owns a list of TaggedLineSegments. ">TaggedLineString</a>, preserving topology (in the sense that no new intersections are introduced). Uses the recursive Douglas-Peucker algorithm.
<a href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for geos::simplify::TaggedLineStringSimplifier:</div>
<div class="dyncontent">
<div class="center"><div class="zoom"><iframe scrolling="no" frameborder="0" src="classgeos_1_1simplify_1_1TaggedLineStringSimplifier__coll__graph.svg" width="100%" height="564"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</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:a07da7da48f9b0a37f63ae9f410741a45"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a07da7da48f9b0a37f63ae9f410741a45">TaggedLineStringSimplifier</a> (<a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *<a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a74a29b2236b3fb946f68e77c5efabb0a">inputIndex</a>, <a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *<a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a44bcca012d97eb591535540150f9939e">outputIndex</a>)</td></tr>
<tr class="separator:a07da7da48f9b0a37f63ae9f410741a45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab032e26b22038a618c076a626cc6bdb9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#ab032e26b22038a618c076a626cc6bdb9">setDistanceTolerance</a> (double d)</td></tr>
<tr class="memdesc:ab032e26b22038a618c076a626cc6bdb9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the distance tolerance for the simplification. <a href="#ab032e26b22038a618c076a626cc6bdb9">More...</a><br /></td></tr>
<tr class="separator:ab032e26b22038a618c076a626cc6bdb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41cb77a995ad3a6a5edbcd2aeb72267e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a41cb77a995ad3a6a5edbcd2aeb72267e">simplify</a> (<a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *<a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a1eb54b349463129293f24f2c5062f639">line</a>)</td></tr>
<tr class="separator:a41cb77a995ad3a6a5edbcd2aeb72267e"><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:a2332929ba596b4ae69fafb0110bfa82d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a2332929ba596b4ae69fafb0110bfa82d">simplifySection</a> (std::size_t i, std::size_t j, std::size_t depth)</td></tr>
<tr class="separator:a2332929ba596b4ae69fafb0110bfa82d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96cbefb1ee0f9598b93491808a880b33"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a96cbefb1ee0f9598b93491808a880b33">hasBadIntersection</a> (const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *parentLine, const std::pair&lt; std::size_t, std::size_t &gt; &amp;sectionIndex, const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;candidateSeg)</td></tr>
<tr class="separator:a96cbefb1ee0f9598b93491808a880b33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad81659969bb10d0e02f8e3ecf9e0790d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#ad81659969bb10d0e02f8e3ecf9e0790d">hasBadInputIntersection</a> (const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *parentLine, const std::pair&lt; std::size_t, std::size_t &gt; &amp;sectionIndex, const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;candidateSeg)</td></tr>
<tr class="separator:ad81659969bb10d0e02f8e3ecf9e0790d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9631f8e6734f2ed9b29ddae15ebfb4a8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a9631f8e6734f2ed9b29ddae15ebfb4a8">hasBadOutputIntersection</a> (const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;candidateSeg)</td></tr>
<tr class="separator:a9631f8e6734f2ed9b29ddae15ebfb4a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33643d1d9d9a3a876152aad11266094e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a33643d1d9d9a3a876152aad11266094e">hasInteriorIntersection</a> (const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;seg0, const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;seg1) const </td></tr>
<tr class="separator:a33643d1d9d9a3a876152aad11266094e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96eb8ad096e472cda04245550d79325c"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgeos_1_1simplify_1_1TaggedLineSegment.html">TaggedLineSegment</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a96eb8ad096e472cda04245550d79325c">flatten</a> (std::size_t start, std::size_t end)</td></tr>
<tr class="separator:a96eb8ad096e472cda04245550d79325c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac419eb8051c6e3e1f8693fcb5d8b7dcf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#ac419eb8051c6e3e1f8693fcb5d8b7dcf">remove</a> (const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *<a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a1eb54b349463129293f24f2c5062f639">line</a>, std::size_t start, std::size_t end)</td></tr>
<tr class="memdesc:ac419eb8051c6e3e1f8693fcb5d8b7dcf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove the segs in the section of the line. <a href="#ac419eb8051c6e3e1f8693fcb5d8b7dcf">More...</a><br /></td></tr>
<tr class="separator:ac419eb8051c6e3e1f8693fcb5d8b7dcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a>
Static Private Member Functions</h2></td></tr>
<tr class="memitem:ad83c2277ddc5c232fee4f21784b24cb3"><td class="memItemLeft" align="right" valign="top">static std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#ad83c2277ddc5c232fee4f21784b24cb3">findFurthestPoint</a> (const <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html">geom::CoordinateSequence</a> *pts, std::size_t i, std::size_t j, double &amp;maxDistance)</td></tr>
<tr class="separator:ad83c2277ddc5c232fee4f21784b24cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa73aff903a53af1d2c5ca34911c155b6"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#aa73aff903a53af1d2c5ca34911c155b6">isInLineSection</a> (const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *parentLine, const std::pair&lt; std::size_t, std::size_t &gt; &amp;sectionIndex, const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineSegment.html">TaggedLineSegment</a> *seg)</td></tr>
<tr class="memdesc:aa73aff903a53af1d2c5ca34911c155b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests whether a segment is in a section of a <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html" title="Contains and owns a list of TaggedLineSegments. ">TaggedLineString</a>. <a href="#aa73aff903a53af1d2c5ca34911c155b6">More...</a><br /></td></tr>
<tr class="separator:aa73aff903a53af1d2c5ca34911c155b6"><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:a74a29b2236b3fb946f68e77c5efabb0a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a74a29b2236b3fb946f68e77c5efabb0a">inputIndex</a></td></tr>
<tr class="separator:a74a29b2236b3fb946f68e77c5efabb0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44bcca012d97eb591535540150f9939e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a44bcca012d97eb591535540150f9939e">outputIndex</a></td></tr>
<tr class="separator:a44bcca012d97eb591535540150f9939e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac97bd17b22308506b064bed519fd3f2b"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgeos_1_1algorithm_1_1LineIntersector.html">algorithm::LineIntersector</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#ac97bd17b22308506b064bed519fd3f2b">li</a></td></tr>
<tr class="separator:ac97bd17b22308506b064bed519fd3f2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1eb54b349463129293f24f2c5062f639"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a1eb54b349463129293f24f2c5062f639">line</a></td></tr>
<tr class="memdesc:a1eb54b349463129293f24f2c5062f639"><td class="mdescLeft">&#160;</td><td class="mdescRight">non-const as segments are possibly added to it <a href="#a1eb54b349463129293f24f2c5062f639">More...</a><br /></td></tr>
<tr class="separator:a1eb54b349463129293f24f2c5062f639"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a152c7de96a81f3ab2bbfb8e76fb230d3"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html">geom::CoordinateSequence</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a152c7de96a81f3ab2bbfb8e76fb230d3">linePts</a></td></tr>
<tr class="separator:a152c7de96a81f3ab2bbfb8e76fb230d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14ded70907de7327996c88f6e22a2256"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineStringSimplifier.html#a14ded70907de7327996c88f6e22a2256">distanceTolerance</a></td></tr>
<tr class="separator:a14ded70907de7327996c88f6e22a2256"><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>Simplifies a <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html" title="Contains and owns a list of TaggedLineSegments. ">TaggedLineString</a>, preserving topology (in the sense that no new intersections are introduced). Uses the recursive Douglas-Peucker algorithm. </p>
<p>Definition at line <a class="el" href="TaggedLineStringSimplifier_8h_source.html#l00063">63</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a07da7da48f9b0a37f63ae9f410741a45"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">geos::simplify::TaggedLineStringSimplifier::TaggedLineStringSimplifier </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *&#160;</td>
<td class="paramname"><em>inputIndex</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a> *&#160;</td>
<td class="paramname"><em>outputIndex</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad83c2277ddc5c232fee4f21784b24cb3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static std::size_t geos::simplify::TaggedLineStringSimplifier::findFurthestPoint </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1CoordinateSequence.html">geom::CoordinateSequence</a> *&#160;</td>
<td class="paramname"><em>pts</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>i</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>j</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double &amp;&#160;</td>
<td class="paramname"><em>maxDistance</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">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a96eb8ad096e472cda04245550d79325c"></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_1simplify_1_1TaggedLineSegment.html">TaggedLineSegment</a>&gt; geos::simplify::TaggedLineStringSimplifier::flatten </td>
<td>(</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>start</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>end</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="ad81659969bb10d0e02f8e3ecf9e0790d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool geos::simplify::TaggedLineStringSimplifier::hasBadInputIntersection </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td>
<td class="paramname"><em>parentLine</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::pair&lt; std::size_t, std::size_t &gt; &amp;&#160;</td>
<td class="paramname"><em>sectionIndex</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;&#160;</td>
<td class="paramname"><em>candidateSeg</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="a96cbefb1ee0f9598b93491808a880b33"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool geos::simplify::TaggedLineStringSimplifier::hasBadIntersection </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td>
<td class="paramname"><em>parentLine</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::pair&lt; std::size_t, std::size_t &gt; &amp;&#160;</td>
<td class="paramname"><em>sectionIndex</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;&#160;</td>
<td class="paramname"><em>candidateSeg</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="a9631f8e6734f2ed9b29ddae15ebfb4a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool geos::simplify::TaggedLineStringSimplifier::hasBadOutputIntersection </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;&#160;</td>
<td class="paramname"><em>candidateSeg</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">
</div>
</div>
<a class="anchor" id="a33643d1d9d9a3a876152aad11266094e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool geos::simplify::TaggedLineStringSimplifier::hasInteriorIntersection </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;&#160;</td>
<td class="paramname"><em>seg0</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1LineSegment.html">geom::LineSegment</a> &amp;&#160;</td>
<td class="paramname"><em>seg1</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</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="aa73aff903a53af1d2c5ca34911c155b6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static bool geos::simplify::TaggedLineStringSimplifier::isInLineSection </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td>
<td class="paramname"><em>parentLine</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::pair&lt; std::size_t, std::size_t &gt; &amp;&#160;</td>
<td class="paramname"><em>sectionIndex</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineSegment.html">TaggedLineSegment</a> *&#160;</td>
<td class="paramname"><em>seg</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">static</span><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Tests whether a segment is in a section of a <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html" title="Contains and owns a list of TaggedLineSegments. ">TaggedLineString</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parentLine</td><td></td></tr>
<tr><td class="paramname">sectionIndex</td><td></td></tr>
<tr><td class="paramname">seg</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd></dd></dl>
</div>
</div>
<a class="anchor" id="ac419eb8051c6e3e1f8693fcb5d8b7dcf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void geos::simplify::TaggedLineStringSimplifier::remove </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td>
<td class="paramname"><em>line</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>start</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>end</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">
<p>Remove the segs in the section of the line. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">line</td><td></td></tr>
<tr><td class="paramname">start</td><td></td></tr>
<tr><td class="paramname">end</td><td></td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="ab032e26b22038a618c076a626cc6bdb9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void geos::simplify::TaggedLineStringSimplifier::setDistanceTolerance </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>d</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the distance tolerance for the simplification. </p>
<p>All vertices in the simplified geometry will be within this distance of the original geometry.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">d</td><td>the approximation tolerance to use </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="TaggedLineStringSimplifier_8h_source.html#l00157">157</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="a41cb77a995ad3a6a5edbcd2aeb72267e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void geos::simplify::TaggedLineStringSimplifier::simplify </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> *&#160;</td>
<td class="paramname"><em>line</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Simplifies the given <a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a> using the distance tolerance specified.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">line</td><td>the linestring to simplify </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a2332929ba596b4ae69fafb0110bfa82d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void geos::simplify::TaggedLineStringSimplifier::simplifySection </td>
<td>(</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>i</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>j</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>depth</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>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a14ded70907de7327996c88f6e22a2256"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::simplify::TaggedLineStringSimplifier::distanceTolerance</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="TaggedLineStringSimplifier_8h_source.html#l00104">104</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="a74a29b2236b3fb946f68e77c5efabb0a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a>* geos::simplify::TaggedLineStringSimplifier::inputIndex</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="TaggedLineStringSimplifier_8h_source.html#l00092">92</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="ac97bd17b22308506b064bed519fd3f2b"></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_1algorithm_1_1LineIntersector.html">algorithm::LineIntersector</a>&gt; geos::simplify::TaggedLineStringSimplifier::li</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="TaggedLineStringSimplifier_8h_source.html#l00097">97</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="a1eb54b349463129293f24f2c5062f639"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgeos_1_1simplify_1_1TaggedLineString.html">TaggedLineString</a>* geos::simplify::TaggedLineStringSimplifier::line</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>non-const as segments are possibly added to it </p>
<p>Definition at line <a class="el" href="TaggedLineStringSimplifier_8h_source.html#l00100">100</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="a152c7de96a81f3ab2bbfb8e76fb230d3"></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_1CoordinateSequence.html">geom::CoordinateSequence</a>* geos::simplify::TaggedLineStringSimplifier::linePts</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="TaggedLineStringSimplifier_8h_source.html#l00102">102</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<a class="anchor" id="a44bcca012d97eb591535540150f9939e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgeos_1_1simplify_1_1LineSegmentIndex.html">LineSegmentIndex</a>* geos::simplify::TaggedLineStringSimplifier::outputIndex</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="TaggedLineStringSimplifier_8h_source.html#l00095">95</a> of file <a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="TaggedLineStringSimplifier_8h_source.html">TaggedLineStringSimplifier.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>