geos_390_docs/classgeos_1_1operation_1_1i...

663 lines
35 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::operation::intersection::Rectangle 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_1operation.html">operation</a></li><li class="navelem"><a class="el" href="namespacegeos_1_1operation_1_1intersection.html">intersection</a></li><li class="navelem"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html">Rectangle</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static 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_1operation_1_1intersection_1_1Rectangle-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">geos::operation::intersection::Rectangle Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Clipping rectangle.
<a href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ac456ee3b1edf3996072d5b16d84150dc"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> { <br />
&#160;&#160;<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dca8185d72d66f5d3711a9d23698026d946">Inside</a> = 1,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dcaa148ee6984bc1c1e6cc06181fda1fc30">Outside</a> = 2,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dca2668870db162eb3cde51d81c2206df3f">Left</a> = 4,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dcaf95c00cc5c43ede820a6c2c78bee425e">Top</a> = 8,
<br />
&#160;&#160;<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dca3b34fed67bcc70298f39ee2c1c1767d1">Right</a> = 16,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dcaf94a581f67efe35c55977223b9ddde46">Bottom</a> = 32,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dca7fdbaad68e2a557d0efaf30a849b0ffb">TopLeft</a> = Top | Left,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dcab9399418277d6a7fc4e441f34b8ec199">TopRight</a> = Top | Right,
<br />
&#160;&#160;<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dca4b7bf9f4fb50aed073a1734886e09f9f">BottomLeft</a> = Bottom | Left,
<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dcadf8a0398e22a82f2f92ab76c812fe473">BottomRight</a> = Bottom | Right
<br />
}<tr class="memdesc:ac456ee3b1edf3996072d5b16d84150dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Position with respect to a clipping rectangle. <a href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">More...</a><br /></td></tr>
</td></tr>
<tr class="separator:ac456ee3b1edf3996072d5b16d84150dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a43ac4d604ff8b5b2a18cc061d845f1a2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a43ac4d604ff8b5b2a18cc061d845f1a2">Rectangle</a> (double x1, double y1, double x2, double y2)</td></tr>
<tr class="memdesc:a43ac4d604ff8b5b2a18cc061d845f1a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a clipping rectangle. <a href="#a43ac4d604ff8b5b2a18cc061d845f1a2">More...</a><br /></td></tr>
<tr class="separator:a43ac4d604ff8b5b2a18cc061d845f1a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5b87d939c6f5e1d580b828fdcfcdd8a"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#aa5b87d939c6f5e1d580b828fdcfcdd8a">xmin</a> () const </td></tr>
<tr class="separator:aa5b87d939c6f5e1d580b828fdcfcdd8a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5751bc8bd4ebfb979bf73211d59e02c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ae5751bc8bd4ebfb979bf73211d59e02c">ymin</a> () const </td></tr>
<tr class="separator:ae5751bc8bd4ebfb979bf73211d59e02c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7463dc82a25f081d33c91de7e937ce0"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ab7463dc82a25f081d33c91de7e937ce0">xmax</a> () const </td></tr>
<tr class="separator:ab7463dc82a25f081d33c91de7e937ce0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87d5674171357305fb2599e80b6c96fc"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a87d5674171357305fb2599e80b6c96fc">ymax</a> () const </td></tr>
<tr class="separator:a87d5674171357305fb2599e80b6c96fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abca8bcbb44cd94939b626e8c19a43af0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1geom_1_1Polygon.html">geom::Polygon</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#abca8bcbb44cd94939b626e8c19a43af0">toPolygon</a> (const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">geom::GeometryFactory</a> &amp;f) const </td></tr>
<tr class="separator:abca8bcbb44cd94939b626e8c19a43af0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab65df3bd2045471cec50bd940cc03810"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1geom_1_1LinearRing.html">geom::LinearRing</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ab65df3bd2045471cec50bd940cc03810">toLinearRing</a> (const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">geom::GeometryFactory</a> &amp;f) const </td></tr>
<tr class="separator:ab65df3bd2045471cec50bd940cc03810"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1189ddf34745aec6b1fc50a218dafe12"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a1189ddf34745aec6b1fc50a218dafe12">position</a> (double x, double y) const </td></tr>
<tr class="memdesc:a1189ddf34745aec6b1fc50a218dafe12"><td class="mdescLeft">&#160;</td><td class="mdescRight">Establish position of coordinate with respect to a <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a>. <a href="#a1189ddf34745aec6b1fc50a218dafe12">More...</a><br /></td></tr>
<tr class="separator:a1189ddf34745aec6b1fc50a218dafe12"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a77facc8dce2b41887d11f35e660fb463"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a77facc8dce2b41887d11f35e660fb463">onEdge</a> (<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> pos)</td></tr>
<tr class="memdesc:a77facc8dce2b41887d11f35e660fb463"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if the given position is on a <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a> edge. <a href="#a77facc8dce2b41887d11f35e660fb463">More...</a><br /></td></tr>
<tr class="separator:a77facc8dce2b41887d11f35e660fb463"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2b60d016a4153e8f5b2b9aca5ba8f1a"><td class="memItemLeft" align="right" valign="top">static bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#aa2b60d016a4153e8f5b2b9aca5ba8f1a">onSameEdge</a> (<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> pos1, <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> pos2)</td></tr>
<tr class="memdesc:aa2b60d016a4153e8f5b2b9aca5ba8f1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Test if the given positions are on the same <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a> edge. <a href="#aa2b60d016a4153e8f5b2b9aca5ba8f1a">More...</a><br /></td></tr>
<tr class="separator:aa2b60d016a4153e8f5b2b9aca5ba8f1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61f1bb4b9a8a31439d343e4e7bb807ae"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a61f1bb4b9a8a31439d343e4e7bb807ae">nextEdge</a> (<a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> pos)</td></tr>
<tr class="memdesc:a61f1bb4b9a8a31439d343e4e7bb807ae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Next edge in clock-wise direction. <a href="#a61f1bb4b9a8a31439d343e4e7bb807ae">More...</a><br /></td></tr>
<tr class="separator:a61f1bb4b9a8a31439d343e4e7bb807ae"><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:a84459f4249dc0b61537806a0eeefe0e7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a84459f4249dc0b61537806a0eeefe0e7">Rectangle</a> ()</td></tr>
<tr class="separator:a84459f4249dc0b61537806a0eeefe0e7"><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:a40a4b9b3586403272feb01c4fc2fdb8d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a40a4b9b3586403272feb01c4fc2fdb8d">xMin</a></td></tr>
<tr class="separator:a40a4b9b3586403272feb01c4fc2fdb8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77d9664db7d45ef3a8559ef3cb653042"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a77d9664db7d45ef3a8559ef3cb653042">yMin</a></td></tr>
<tr class="separator:a77d9664db7d45ef3a8559ef3cb653042"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58ded076e8a4b5c63c7a7bda9b341e85"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#a58ded076e8a4b5c63c7a7bda9b341e85">xMax</a></td></tr>
<tr class="separator:a58ded076e8a4b5c63c7a7bda9b341e85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab986e3d06cdda728e85751743b657fed"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ab986e3d06cdda728e85751743b657fed">yMax</a></td></tr>
<tr class="separator:ab986e3d06cdda728e85751743b657fed"><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>Clipping rectangle. </p>
<p>A clipping rectangle defines the boundaries of the rectangle by defining the limiting x- and y-coordinates. The clipping rectangle must be non-empty. In addition, methods are provided for specifying the location of a given coordinate with respect to the clipping rectangle similarly to the Cohen-Sutherland clipping algorithm. </p>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00051">51</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">geos::operation::intersection::Rectangle::Position</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Position with respect to a clipping rectangle. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dca8185d72d66f5d3711a9d23698026d946"></a>Inside&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dcaa148ee6984bc1c1e6cc06181fda1fc30"></a>Outside&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dca2668870db162eb3cde51d81c2206df3f"></a>Left&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dcaf95c00cc5c43ede820a6c2c78bee425e"></a>Top&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dca3b34fed67bcc70298f39ee2c1c1767d1"></a>Right&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dcaf94a581f67efe35c55977223b9ddde46"></a>Bottom&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dca7fdbaad68e2a557d0efaf30a849b0ffb"></a>TopLeft&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dcab9399418277d6a7fc4e441f34b8ec199"></a>TopRight&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dca4b7bf9f4fb50aed073a1734886e09f9f"></a>BottomLeft&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><a class="anchor" id="ac456ee3b1edf3996072d5b16d84150dcadf8a0398e22a82f2f92ab76c812fe473"></a>BottomRight&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00120">120</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a43ac4d604ff8b5b2a18cc061d845f1a2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">geos::operation::intersection::Rectangle::Rectangle </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>x1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>y1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>x2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>y2</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Construct a clipping rectangle. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x1</td><td>x-coordinate of the left edge </td></tr>
<tr><td class="paramname">y1</td><td>y-coordinate of the bottom edge </td></tr>
<tr><td class="paramname">x2</td><td>x-coordinate of the right edge </td></tr>
<tr><td class="paramname">y2</td><td>y-coordinate of the right edge </td></tr>
</table>
</dd>
</dl>
<dl class="exception"><dt>Exceptions</dt><dd>
<table class="exception">
<tr><td class="paramname">IllegalArgumentException</td><td>if the rectangle is empty </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a class="anchor" id="a84459f4249dc0b61537806a0eeefe0e7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">geos::operation::intersection::Rectangle::Rectangle </td>
<td>(</td>
<td class="paramname"></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 Function Documentation</h2>
<a class="anchor" id="a61f1bb4b9a8a31439d343e4e7bb807ae"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> geos::operation::intersection::Rectangle::nextEdge </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Next edge in clock-wise direction. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pos</td><td><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>next <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> in clock-wise direction </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00202">202</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="a77facc8dce2b41887d11f35e660fb463"></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::operation::intersection::Rectangle::onEdge </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Test if the given position is on a <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a> edge. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pos</td><td><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc" title="Position with respect to a clipping rectangle. ">Rectangle::Position</a> </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code>, if the position is on an edge </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00142">142</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="aa2b60d016a4153e8f5b2b9aca5ba8f1a"></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::operation::intersection::Rectangle::onSameEdge </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td>
<td class="paramname"><em>pos1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a>&#160;</td>
<td class="paramname"><em>pos2</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">inline</span><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Test if the given positions are on the same <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a> edge. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pos1</td><td><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> of first coordinate </td></tr>
<tr><td class="paramname">pos2</td><td><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> of second coordinate </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>true</code>, if the positions are on the same edge </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00155">155</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="a1189ddf34745aec6b1fc50a218dafe12"></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_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> geos::operation::intersection::Rectangle::position </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>y</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">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Establish position of coordinate with respect to a <a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html" title="Clipping rectangle. ">Rectangle</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>x-coordinate </td></tr>
<tr><td class="paramname">y</td><td>y-coordinate </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classgeos_1_1operation_1_1intersection_1_1Rectangle.html#ac456ee3b1edf3996072d5b16d84150dc">Position</a> of the coordinate </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00168">168</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="ab65df3bd2045471cec50bd940cc03810"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgeos_1_1geom_1_1LinearRing.html">geom::LinearRing</a>* geos::operation::intersection::Rectangle::toLinearRing </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">geom::GeometryFactory</a> &amp;&#160;</td>
<td class="paramname"><em>f</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="abca8bcbb44cd94939b626e8c19a43af0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classgeos_1_1geom_1_1Polygon.html">geom::Polygon</a>* geos::operation::intersection::Rectangle::toPolygon </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classgeos_1_1geom_1_1GeometryFactory.html">geom::GeometryFactory</a> &amp;&#160;</td>
<td class="paramname"><em>f</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the rectangle as a polygon geometry</dd></dl>
<dl class="section note"><dt>Note</dt><dd>Ownership transferred to caller </dd></dl>
</div>
</div>
<a class="anchor" id="ab7463dc82a25f081d33c91de7e937ce0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::xmax </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the maximum x-coordinate of the rectangle </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00091">91</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="aa5b87d939c6f5e1d580b828fdcfcdd8a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::xmin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the minimum x-coordinate of the rectangle </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00070">70</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="a87d5674171357305fb2599e80b6c96fc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::ymax </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the maximum y-coordinate of the rectangle </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00102">102</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="ae5751bc8bd4ebfb979bf73211d59e02c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::ymin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>the minimum y-coordinate of the rectangle </dd></dl>
<p>Definition at line <a class="el" href="Rectangle_8h_source.html#l00080">80</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a58ded076e8a4b5c63c7a7bda9b341e85"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::xMax</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="Rectangle_8h_source.html#l00228">228</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="a40a4b9b3586403272feb01c4fc2fdb8d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::xMin</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="Rectangle_8h_source.html#l00226">226</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="ab986e3d06cdda728e85751743b657fed"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::yMax</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="Rectangle_8h_source.html#l00229">229</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<a class="anchor" id="a77d9664db7d45ef3a8559ef3cb653042"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double geos::operation::intersection::Rectangle::yMin</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="Rectangle_8h_source.html#l00227">227</a> of file <a class="el" href="Rectangle_8h_source.html">Rectangle.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="Rectangle_8h_source.html">Rectangle.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>