<!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::snapround::HotPixel 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="namespacegeos_1_1noding_1_1snapround.html">snapround</a> </li> <li><a class="el" href="classgeos_1_1noding_1_1snapround_1_1HotPixel.html">geos::noding::snapround::HotPixel</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <h1>geos::noding::snapround::HotPixel Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="geos::noding::snapround::HotPixel" --> <p>Implements a "hot pixel" as used in the Snap Rounding algorithm. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="HotPixel_8h_source.html">HotPixel.h</a>></code></p> <p><a href="classgeos_1_1noding_1_1snapround_1_1HotPixel-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="a8f866b1f7515702898072c02798d8b29"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::HotPixel" ref="a8f866b1f7515702898072c02798d8b29" args="(const geom::Coordinate &pt, double scaleFact, algorithm::LineIntersector &li)" --> </td><td class="memItemRight" valign="bottom"><b>HotPixel</b> (const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &pt, double scaleFact, <a class="el" href="classgeos_1_1algorithm_1_1LineIntersector.html">algorithm::LineIntersector</a> &li)</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad07c86000f662071ebc2ace9c43b318e"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::getCoordinate" ref="ad07c86000f662071ebc2ace9c43b318e" args="() const " --> const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1snapround_1_1HotPixel.html#ad07c86000f662071ebc2ace9c43b318e">getCoordinate</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return reference to original Coordinate (the one provided at construction time). <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a688f0c6290183c4781f1cdf3eb2bc6af"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::getSafeEnvelope" ref="a688f0c6290183c4781f1cdf3eb2bc6af" args="() const " --> const <a class="el" href="classgeos_1_1geom_1_1Envelope.html">geom::Envelope</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1snapround_1_1HotPixel.html#a688f0c6290183c4781f1cdf3eb2bc6af">getSafeEnvelope</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns a "safe" envelope that is guaranteed to contain the hot pixel. Keeps ownership of it. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aadc4af68cc54064145cb55585cebc0f3"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::intersectsScaled" ref="aadc4af68cc54064145cb55585cebc0f3" args="(const geom::Coordinate &p0, const geom::Coordinate &p1) const " --> bool </td><td class="memItemRight" valign="bottom"><b>intersectsScaled</b> (const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &p0, const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &p1) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6258371ef4eee2eac222ee9ca231502d"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::intersects" ref="a6258371ef4eee2eac222ee9ca231502d" args="(const geom::Coordinate &p0, const geom::Coordinate &p1) const " --> bool </td><td class="memItemRight" valign="bottom"><b>intersects</b> (const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &p0, const <a class="el" href="classgeos_1_1geom_1_1Coordinate.html">geom::Coordinate</a> &p1) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1noding_1_1snapround_1_1HotPixel.html#aee22b4b237f419906d3ee365fef22e85">addSnappedNode</a> (<a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html">NodedSegmentString</a> &segStr, size_t segIndex)</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>Implements a "hot pixel" as used in the Snap Rounding algorithm. </p> <p>A hot pixel contains the interior of the tolerance square and the boundary <b>minus</b> the top and right segments.</p> <p>The hot pixel operations are all computed in the integer domain to avoid rounding problems. </p> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="aee22b4b237f419906d3ee365fef22e85"></a><!-- doxytag: member="geos::noding::snapround::HotPixel::addSnappedNode" ref="aee22b4b237f419906d3ee365fef22e85" args="(NodedSegmentString &segStr, size_t segIndex)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool geos::noding::snapround::HotPixel::addSnappedNode </td> <td>(</td> <td class="paramtype"><a class="el" href="classgeos_1_1noding_1_1NodedSegmentString.html">NodedSegmentString</a> & </td> <td class="paramname"> <em>segStr</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>segIndex</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Adds a new node (equal to the snap pt) to the specified segment if the segment passes through the hot pixel</p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>segStr</em> </td><td></td></tr> <tr><td valign="top"></td><td valign="top"><em>segIndex</em> </td><td></td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>true if a node was added to the segment </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="HotPixel_8h_source.html">HotPixel.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>