1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
4 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
5 <title>Boost.Geometry (aka GGL, Generic Geometry Library)</title>
6 <link href="doxygen.css" rel="stylesheet" type="text/css">
7 <link href="tabs.css" rel="stylesheet" type="text/css">
9 <table cellpadding="2" width="100%">
13 <img alt="Boost.Geometry" src="images/ggl-logo-big.png" height="80" width="200">
16 <td valign="top" align="right">
17 <a href="http://www.boost.org">
18 <img alt="Boost C++ Libraries" src="images/accepted_by_boost.png" height="80" width="230" border="0">
24 <!-- Generated by Doxygen 1.8.6 -->
25 <div id="navrow1" class="tabs">
27 <li><a href="index.html"><span>Main Page</span></a></li>
28 <li><a href="pages.html"><span>Related Pages</span></a></li>
29 <li><a href="modules.html"><span>Modules</span></a></li>
30 <li><a href="namespaces.html"><span>Namespaces</span></a></li>
31 <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
32 <li><a href="files.html"><span>Files</span></a></li>
33 <li><a href="examples.html"><span>Examples</span></a></li>
36 <div id="navrow2" class="tabs2">
38 <li><a href="annotated.html"><span>Class List</span></a></li>
39 <li><a href="classes.html"><span>Class Index</span></a></li>
40 <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
41 <li><a href="functions.html"><span>Class Members</span></a></li>
44 <div id="nav-path" class="navpath">
46 <li class="navelem"><a class="el" href="namespaceboost.html">boost</a></li><li class="navelem"><a class="el" href="namespaceboost_1_1geometry.html">geometry</a></li><li class="navelem"><a class="el" href="namespaceboost_1_1geometry_1_1strategy.html">strategy</a></li><li class="navelem"><a class="el" href="namespaceboost_1_1geometry_1_1strategy_1_1within.html">within</a></li><li class="navelem"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">oriented_winding</a></li> </ul>
51 <a href="#nested-classes">Classes</a> |
52 <a href="#pub-types">Public Types</a> |
53 <a href="#pub-static-methods">Static Public Member Functions</a> |
54 <a href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding-members.html">List of all members</a> </div>
55 <div class="headertitle">
56 <div class="title">boost::geometry::strategy::within::oriented_winding< Reverse, Point, PointOfSegment, CalculationType > Class Template Reference<div class="ingroups"><a class="el" href="group__strategies.html">strategies: strategies</a></div></div> </div>
58 <div class="contents">
60 <p>Within detection using winding rule, but checking if enclosing ring is counter clockwise and, if so, reverses the result.
61 <a href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#details">More...</a></p>
62 <table class="memberdecls">
63 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
64 Public Types</h2></td></tr>
65 <tr class="memitem:a1a9990ce7f34e7f9fb067ae787b70aaf"><td class="memItemLeft" align="right" valign="top">typedef Point </td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a1a9990ce7f34e7f9fb067ae787b70aaf">point_type</a></td></tr>
66 <tr class="separator:a1a9990ce7f34e7f9fb067ae787b70aaf"><td class="memSeparator" colspan="2"> </td></tr>
67 <tr class="memitem:a6d13eff63c68a31615cef239196ecfbd"><td class="memItemLeft" align="right" valign="top">typedef PointOfSegment </td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a6d13eff63c68a31615cef239196ecfbd">segment_point_type</a></td></tr>
68 <tr class="separator:a6d13eff63c68a31615cef239196ecfbd"><td class="memSeparator" colspan="2"> </td></tr>
69 <tr class="memitem:a907a009e6a246cb3a9354782c8fd4917"><td class="memItemLeft" align="right" valign="top">typedef counter </td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a907a009e6a246cb3a9354782c8fd4917">state_type</a></td></tr>
70 <tr class="separator:a907a009e6a246cb3a9354782c8fd4917"><td class="memSeparator" colspan="2"> </td></tr>
71 </table><table class="memberdecls">
72 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
73 Static Public Member Functions</h2></td></tr>
74 <tr class="memitem:a7dd9a2108e9f4794e619391c2745f44e"><td class="memItemLeft" align="right" valign="top">static bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a7dd9a2108e9f4794e619391c2745f44e">apply</a> (Point const &point, PointOfSegment const &s1, PointOfSegment const &s2, counter &state)</td></tr>
75 <tr class="separator:a7dd9a2108e9f4794e619391c2745f44e"><td class="memSeparator" colspan="2"> </td></tr>
76 <tr class="memitem:a974c60d5af7c7521b8d98e797ef9a1be"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a974c60d5af7c7521b8d98e797ef9a1be">result</a> (counter const &state)</td></tr>
77 <tr class="separator:a974c60d5af7c7521b8d98e797ef9a1be"><td class="memSeparator" colspan="2"> </td></tr>
79 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
80 <div class="textblock"><h3>template<bool Reverse, typename Point, typename PointOfSegment = Point, typename CalculationType = void><br/>
81 class boost::geometry::strategy::within::oriented_winding< Reverse, Point, PointOfSegment, CalculationType ></h3>
83 <p>Within detection using winding rule, but checking if enclosing ring is counter clockwise and, if so, reverses the result. </p>
84 <dl class="tparams"><dt>Template Parameters</dt><dd>
85 <table class="tparams">
86 <tr><td class="paramname">Point</td><td>Any type fulfilling a Point Concept </td></tr>
87 <tr><td class="paramname">Reverse</td><td>True if parameter should be reversed </td></tr>
88 <tr><td class="paramname">PointOfSegment</td><td>segment point type </td></tr>
89 <tr><td class="paramname">CalculationType</td><td>numeric type for calculation (e.g. high precision); if [*void] then it is extracted automatically from the coordinate type and (if necessary) promoted to floating point </td></tr>
93 <dl class="section author"><dt>Author</dt><dd>Barend Gehrels </dd></dl>
94 <dl class="section note"><dt>Note</dt><dd>The implementation is inspired by terralib <a href="http://www.terralib.org">http://www.terralib.org</a> (LGPL) </dd>
96 but totally revised afterwards, especially for cases on segments </dd>
98 Only dependant on "side", -> agnostic, suitable for spherical/latlong</dd></dl>
99 </div><h2 class="groupheader">Member Typedef Documentation</h2>
100 <a class="anchor" id="a1a9990ce7f34e7f9fb067ae787b70aaf"></a>
101 <div class="memitem">
102 <div class="memproto">
103 <div class="memtemplate">
104 template<bool Reverse, typename Point , typename PointOfSegment = Point, typename CalculationType = void> </div>
105 <table class="memname">
107 <td class="memname">typedef Point <a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">boost::geometry::strategy::within::oriented_winding</a>< Reverse, Point, PointOfSegment, CalculationType >::<a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a1a9990ce7f34e7f9fb067ae787b70aaf">point_type</a></td>
110 </div><div class="memdoc">
114 <a class="anchor" id="a6d13eff63c68a31615cef239196ecfbd"></a>
115 <div class="memitem">
116 <div class="memproto">
117 <div class="memtemplate">
118 template<bool Reverse, typename Point , typename PointOfSegment = Point, typename CalculationType = void> </div>
119 <table class="memname">
121 <td class="memname">typedef PointOfSegment <a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">boost::geometry::strategy::within::oriented_winding</a>< Reverse, Point, PointOfSegment, CalculationType >::<a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a6d13eff63c68a31615cef239196ecfbd">segment_point_type</a></td>
124 </div><div class="memdoc">
128 <a class="anchor" id="a907a009e6a246cb3a9354782c8fd4917"></a>
129 <div class="memitem">
130 <div class="memproto">
131 <div class="memtemplate">
132 template<bool Reverse, typename Point , typename PointOfSegment = Point, typename CalculationType = void> </div>
133 <table class="memname">
135 <td class="memname">typedef counter <a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">boost::geometry::strategy::within::oriented_winding</a>< Reverse, Point, PointOfSegment, CalculationType >::<a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html#a907a009e6a246cb3a9354782c8fd4917">state_type</a></td>
138 </div><div class="memdoc">
142 <h2 class="groupheader">Member Function Documentation</h2>
143 <a class="anchor" id="a7dd9a2108e9f4794e619391c2745f44e"></a>
144 <div class="memitem">
145 <div class="memproto">
146 <div class="memtemplate">
147 template<bool Reverse, typename Point , typename PointOfSegment = Point, typename CalculationType = void> </div>
148 <table class="mlabels">
150 <td class="mlabels-left">
151 <table class="memname">
153 <td class="memname">static bool <a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">boost::geometry::strategy::within::oriented_winding</a>< Reverse, Point, PointOfSegment, CalculationType >::apply </td>
155 <td class="paramtype">Point const & </td>
156 <td class="paramname"><em>point</em>, </td>
159 <td class="paramkey"></td>
161 <td class="paramtype">PointOfSegment const & </td>
162 <td class="paramname"><em>s1</em>, </td>
165 <td class="paramkey"></td>
167 <td class="paramtype">PointOfSegment const & </td>
168 <td class="paramname"><em>s2</em>, </td>
171 <td class="paramkey"></td>
173 <td class="paramtype">counter & </td>
174 <td class="paramname"><em>state</em> </td>
183 <td class="mlabels-right">
184 <span class="mlabels"><span class="mlabel">static</span></span> </td>
187 </div><div class="memdoc">
191 <a class="anchor" id="a974c60d5af7c7521b8d98e797ef9a1be"></a>
192 <div class="memitem">
193 <div class="memproto">
194 <div class="memtemplate">
195 template<bool Reverse, typename Point , typename PointOfSegment = Point, typename CalculationType = void> </div>
196 <table class="mlabels">
198 <td class="mlabels-left">
199 <table class="memname">
201 <td class="memname">static int <a class="el" href="classboost_1_1geometry_1_1strategy_1_1within_1_1oriented__winding.html">boost::geometry::strategy::within::oriented_winding</a>< Reverse, Point, PointOfSegment, CalculationType >::result </td>
203 <td class="paramtype">counter const & </td>
204 <td class="paramname"><em>state</em></td><td>)</td>
209 <td class="mlabels-right">
210 <span class="mlabels"><span class="mlabel">static</span></span> </td>
213 </div><div class="memdoc">
217 </div><!-- contents -->
222 <td align="left"><small>
227 Copyright © 2007-2011 Barend Gehrels, Amsterdam, the Netherlands<br>
228 Copyright © 2008-2011 Bruno Lalande, Paris, France<br>
229 Copyright © 2009-2010 Mateusz Loskot, London, UK<br>
235 <address style="text-align: right;"><small>
236 Documentation is generated by <a href="http://www.doxygen.org/index.html">Doxygen</a>