<!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::noding::SegmentNodeList 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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class 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_1noding.html">noding</a> </li> <li><a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html">geos::noding::SegmentNodeList</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#friends">Friends</a> </div> <div class="headertitle"> <h1>geos::noding::SegmentNodeList Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="geos::noding::SegmentNodeList" --> <p>A list of the <a class="el" href="classgeos_1_1noding_1_1SegmentNode.html" title="Represents an intersection point between two NodedSegmentString.">SegmentNode</a> present along a <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html" title="Represents a list of contiguous line segments, and supports noding the segments.">NodedSegmentString</a>. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="SegmentNodeList_8h_source.html">SegmentNodeList.h</a>></code></p> <p><a href="classgeos_1_1noding_1_1SegmentNodeList-members.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-types"></a> Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbcfa057a44097ab5f170e80ce414d0e"></a><!-- doxytag: member="geos::noding::SegmentNodeList::container" ref="acbcfa057a44097ab5f170e80ce414d0e" args="" --> typedef std::set< <a class="el" href="classgeos_1_1noding_1_1SegmentNode.html">SegmentNode</a> <br class="typebreak"/> *, SegmentNodeLT > </td><td class="memItemRight" valign="bottom"><b>container</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8bf8b01fe43cab2fdeb433c450e90f71"></a><!-- doxytag: member="geos::noding::SegmentNodeList::iterator" ref="a8bf8b01fe43cab2fdeb433c450e90f71" args="" --> typedef container::iterator </td><td class="memItemRight" valign="bottom"><b>iterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b587a56646fae882ff8c81351d5ddca"></a><!-- doxytag: member="geos::noding::SegmentNodeList::const_iterator" ref="a4b587a56646fae882ff8c81351d5ddca" args="" --> typedef container::const_iterator </td><td class="memItemRight" valign="bottom"><b>const_iterator</b></td></tr> <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="a5db48efe1f4abf3c7a84dce584bdd31c"></a><!-- doxytag: member="geos::noding::SegmentNodeList::SegmentNodeList" ref="a5db48efe1f4abf3c7a84dce584bdd31c" args="(const NodedSegmentString *newEdge)" --> </td><td class="memItemRight" valign="bottom"><b>SegmentNodeList</b> (const <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html">NodedSegmentString</a> *newEdge)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6aaf7b1535465068991cf2ca8ede988e"></a><!-- doxytag: member="geos::noding::SegmentNodeList::SegmentNodeList" ref="a6aaf7b1535465068991cf2ca8ede988e" args="(const NodedSegmentString &newEdge)" --> </td><td class="memItemRight" valign="bottom"><b>SegmentNodeList</b> (const <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html">NodedSegmentString</a> &newEdge)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaed436b9a36e16db726d84ab817db5d"></a><!-- doxytag: member="geos::noding::SegmentNodeList::getEdge" ref="adaed436b9a36e16db726d84ab817db5d" args="() const " --> const <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html">NodedSegmentString</a> & </td><td class="memItemRight" valign="bottom"><b>getEdge</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1noding_1_1SegmentNode.html">SegmentNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html#ae4084b8ba4dff203840f95198bd7a0c8">add</a> (const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &intPt, size_t segmentIndex)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8e0e2632d7844f3bf8bc9df4ba49dde"></a><!-- doxytag: member="geos::noding::SegmentNodeList::add" ref="aa8e0e2632d7844f3bf8bc9df4ba49dde" args="(const geom::Coordinate *intPt, size_t segmentIndex)" --> <a class="el" href="classgeos_1_1noding_1_1SegmentNode.html">SegmentNode</a> * </td><td class="memItemRight" valign="bottom"><b>add</b> (const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> *intPt, size_t segmentIndex)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92e30587a6884a1a1302cf2c91015966"></a><!-- doxytag: member="geos::noding::SegmentNodeList::getNodes" ref="a92e30587a6884a1a1302cf2c91015966" args="()" --> std::set< <a class="el" href="classgeos_1_1noding_1_1SegmentNode.html">SegmentNode</a> <br class="typebreak"/> *, SegmentNodeLT > * </td><td class="memItemRight" valign="bottom"><b>getNodes</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a8db669ae0980d3b9499bb9981639ca"></a><!-- doxytag: member="geos::noding::SegmentNodeList::size" ref="a6a8db669ae0980d3b9499bb9981639ca" args="() const " --> size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html#a6a8db669ae0980d3b9499bb9981639ca">size</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the number of nodes in this list. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaaa780b84d83a51c1cdc8eb3fbf9cbe2"></a><!-- doxytag: member="geos::noding::SegmentNodeList::begin" ref="aaaa780b84d83a51c1cdc8eb3fbf9cbe2" args="()" --> container::iterator </td><td class="memItemRight" valign="bottom"><b>begin</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06adefef6f521efed468cf9467e8525f"></a><!-- doxytag: member="geos::noding::SegmentNodeList::begin" ref="a06adefef6f521efed468cf9467e8525f" args="() const " --> container::const_iterator </td><td class="memItemRight" valign="bottom"><b>begin</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e21619741134a89bbb440979e53bce6"></a><!-- doxytag: member="geos::noding::SegmentNodeList::end" ref="a3e21619741134a89bbb440979e53bce6" args="()" --> container::iterator </td><td class="memItemRight" valign="bottom"><b>end</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a547860811c8d501df013d1a33c87a8a4"></a><!-- doxytag: member="geos::noding::SegmentNodeList::end" ref="a547860811c8d501df013d1a33c87a8a4" args="() const " --> container::const_iterator </td><td class="memItemRight" valign="bottom"><b>end</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html#ad16937490cfae2ba28066f293671d4da">addEndpoints</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html#a715a173abafcdcc9685ed3ceab7c81aa">addSplitEdges</a> (std::vector< <a class="el" href="classgeos_1_1noding_1_1SegmentString.html">SegmentString</a> * > &edgeList)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9d643eba2363cc81c481e684a8a02da"></a><!-- doxytag: member="geos::noding::SegmentNodeList::addSplitEdges" ref="ac9d643eba2363cc81c481e684a8a02da" args="(std::vector< SegmentString * > *edgeList)" --> void </td><td class="memItemRight" valign="bottom"><b>addSplitEdges</b> (std::vector< <a class="el" href="classgeos_1_1noding_1_1SegmentString.html">SegmentString</a> * > *edgeList)</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="a37f8887154298e0d37c51282ffe85081"></a><!-- doxytag: member="geos::noding::SegmentNodeList::operator<<" ref="a37f8887154298e0d37c51282ffe85081" args="(std::ostream &os, const SegmentNodeList &l)" --> std::ostream & </td><td class="memItemRight" valign="bottom"><b>operator<<</b> (std::ostream &os, const <a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html">SegmentNodeList</a> &l)</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>A list of the <a class="el" href="classgeos_1_1noding_1_1SegmentNode.html" title="Represents an intersection point between two NodedSegmentString.">SegmentNode</a> present along a <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html" title="Represents a list of contiguous line segments, and supports noding the segments.">NodedSegmentString</a>. </p> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="ae4084b8ba4dff203840f95198bd7a0c8"></a><!-- doxytag: member="geos::noding::SegmentNodeList::add" ref="ae4084b8ba4dff203840f95198bd7a0c8" args="(const geom::Coordinate &intPt, size_t segmentIndex)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classgeos_1_1noding_1_1SegmentNode.html">SegmentNode</a>* geos::noding::SegmentNodeList::add </td> <td>(</td> <td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> & </td> <td class="paramname"> <em>intPt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>segmentIndex</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Adds an intersection into the list, if it isn't already there. The input segmentIndex is expected to be normalized.</p> <dl class="return"><dt><b>Returns:</b></dt><dd>the SegmentIntersection found or added. It will be destroyed at <a class="el" href="classgeos_1_1noding_1_1SegmentNodeList.html" title="A list of the SegmentNode present along a NodedSegmentString.">SegmentNodeList</a> destruction time.</dd></dl> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>intPt</em> </td><td>the intersection Coordinate, will be copied </td></tr> <tr><td valign="top"></td><td valign="top"><em>segmentIndex</em> </td><td></td></tr> </table> </dd> </dl> <p>Referenced by <a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html#ac4a4cfb0eccf8e6d7a92d09035797612">geos::noding::NodedSegmentString::addIntersectionNode()</a>.</p> </div> </div> <a class="anchor" id="ad16937490cfae2ba28066f293671d4da"></a><!-- doxytag: member="geos::noding::SegmentNodeList::addEndpoints" ref="ad16937490cfae2ba28066f293671d4da" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void geos::noding::SegmentNodeList::addEndpoints </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Adds entries for the first and last points of the edge to the list </p> </div> </div> <a class="anchor" id="a715a173abafcdcc9685ed3ceab7c81aa"></a><!-- doxytag: member="geos::noding::SegmentNodeList::addSplitEdges" ref="a715a173abafcdcc9685ed3ceab7c81aa" args="(std::vector< SegmentString * > &edgeList)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void geos::noding::SegmentNodeList::addSplitEdges </td> <td>(</td> <td class="paramtype">std::vector< <a class="el" href="classgeos_1_1noding_1_1SegmentString.html">SegmentString</a> * > & </td> <td class="paramname"> <em>edgeList</em></td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Creates new edges for all the edges that the intersections in this list split the parent edge into. Adds the edges to the input list (this is so a single list can be used to accumulate all split edges for a Geometry). </p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="SegmentNodeList_8h_source.html">SegmentNodeList.h</a></li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Thu Jul 22 2010 for GEOS by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address> </body> </html>