mirror of
https://github.com/boostorg/geometry.git
synced 2025-05-09 23:24:02 +00:00
Boost.Geometry doc updates and fixes. Including a new section Conformance instead of notes/tips defining that in previous version
[SVN r76993]
This commit is contained in:
parent
2bcbf859d0
commit
495597f8b9
@ -16,7 +16,7 @@
|
||||
[concept Linestring..linestring]
|
||||
|
||||
A linestring is ['a Curve with linear interpolation between Points].
|
||||
([@http://portal.opengeospatial.org/files/?artifact_id=25355 opengeospatial]).
|
||||
(__ogc_sf__).
|
||||
|
||||
[heading Concept Definition]
|
||||
|
||||
|
@ -16,7 +16,7 @@
|
||||
[concept Polygon..polygon]
|
||||
|
||||
A polygon is ['A polygon is a planar surface defined by one exterior boundary and zero or more interior boundaries]
|
||||
([@http://portal.opengeospatial.org/files/?artifact_id=25355 opengeospatial]).
|
||||
(__ogc_sf__).
|
||||
|
||||
So the definition of a Boost.Geometry polygon differs a bit from e.g. Wiki, where a polygon does not have holes. A
|
||||
polygon of Boost.Geometry is a polygon with or without holes.
|
||||
|
@ -1,3 +1,4 @@
|
||||
[/NOTE: adapted manually, multi-linestring/multi-polygon do compile but not run!]
|
||||
[heading Supported geometries]
|
||||
[table
|
||||
[[ ][Point][Range]]
|
||||
@ -8,6 +9,6 @@
|
||||
[[Ring][ [$img/ok.png] ][ [$img/ok.png] ]]
|
||||
[[Polygon][ [$img/ok.png] ][ [$img/ok.png] ]]
|
||||
[[MultiPoint][ [$img/ok.png] ][ [$img/ok.png] ]]
|
||||
[[MultiLinestring][ [$img/ok.png] ][ [$img/ok.png] ]]
|
||||
[[MultiPolygon][ [$img/ok.png] ][ [$img/ok.png] ]]
|
||||
[[MultiLinestring][ [$img/nyi.png] ][ [$img/nyi.png] ]]
|
||||
[[MultiPolygon][ [$img/nyi.png] ][ [$img/nyi.png] ]]
|
||||
]
|
||||
|
@ -12,7 +12,6 @@
|
||||
|
||||
[library Geometry
|
||||
[quickbook 1.5]
|
||||
[version 1.49]
|
||||
[authors [Gehrels, Barend], [Lalande, Bruno], [Loskot, Mateusz]]
|
||||
[copyright 2009-2012 Barend Gehrels, Bruno Lalande, Mateusz Loskot]
|
||||
[purpose Documentation of Boost.Geometry library]
|
||||
@ -61,10 +60,6 @@
|
||||
[template qbk_ret[what] Returns [what]]
|
||||
[template qbk_out[what] GeometryOut is a [what]]
|
||||
|
||||
[template concept[name type] The [name] Concept describes the requirements for a [type] type.
|
||||
All algorithms in Boost.Geometry will check any geometry arguments against the concept requirements.]
|
||||
|
||||
|
||||
[def __boost__ Boost]
|
||||
[def __boost_geometry__ Boost.Geometry]
|
||||
[def __boost_array__ Boost.Array]
|
||||
@ -78,6 +73,28 @@ All algorithms in Boost.Geometry will check any geometry arguments against the c
|
||||
[def __ttmath__ [@http://www.ttmath.org/ ttmath]]
|
||||
[def __ogc__ [@http://www.opengeospatial.org OGC]]
|
||||
|
||||
[def __ogc_sf__ [@http://www.opengeospatial.org/standards/sfa OGC Simple Feature Specification]]
|
||||
|
||||
[/Templates]
|
||||
[template concept[name type]
|
||||
The [name] Concept describes the requirements for a [type] type.
|
||||
All algorithms in Boost.Geometry will check any geometry arguments against the concept requirements.
|
||||
]
|
||||
|
||||
[template heading_conformance_no_ogc[function]
|
||||
[heading Conformance]
|
||||
The function [function] is not defined by OGC.
|
||||
]
|
||||
|
||||
[template heading_conformance_ogc[function ogc_function]
|
||||
[heading Conformance]
|
||||
The function [function] implements function [ogc_function] from the __ogc_sf__.
|
||||
]
|
||||
|
||||
[template conformance_std[function std_function]
|
||||
The function [function] conforms to the [std_function] of the C++ std-library.
|
||||
]
|
||||
|
||||
[heading Contributions]
|
||||
|
||||
Boost.Geometry contains contributions by:
|
||||
|
@ -1,10 +1,10 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Chapter 1. Geometry 1.0</title>
|
||||
<title>Chapter 1. Geometry</title>
|
||||
<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
|
||||
<link rel="home" href="index.html" title="Chapter 1. Geometry 1.0">
|
||||
<link rel="home" href="index.html" title="Chapter 1. Geometry">
|
||||
<link rel="next" href="geometry/introduction.html" title="Introduction">
|
||||
</head>
|
||||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||||
@ -21,7 +21,7 @@
|
||||
<div class="chapter">
|
||||
<div class="titlepage"><div>
|
||||
<div><h2 class="title">
|
||||
<a name="geometry"></a>Chapter 1. Geometry 1.0</h2></div>
|
||||
<a name="geometry"></a>Chapter 1. Geometry</h2></div>
|
||||
<div><div class="author"><h3 class="author">
|
||||
<span class="firstname">Barend</span> <span class="surname">Gehrels</span>
|
||||
</h3></div></div>
|
||||
@ -31,9 +31,9 @@
|
||||
<div><div class="author"><h3 class="author">
|
||||
<span class="firstname">Mateusz</span> <span class="surname">Loskot</span>
|
||||
</h3></div></div>
|
||||
<div><p class="copyright">Copyright © 2012 Barend Gehrels, Bruno Lalande, Mateusz Loskot</p></div>
|
||||
<div><p class="copyright">Copyright © 2009 -2012 Barend Gehrels, Bruno Lalande, Mateusz Loskot</p></div>
|
||||
<div><div class="legalnotice">
|
||||
<a name="id666441"></a><p>
|
||||
<a name="id857080"></a><p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
@ -43,37 +43,38 @@
|
||||
<p><b>Table of Contents</b></p>
|
||||
<dl>
|
||||
<dt><span class="section"><a href="geometry/introduction.html">Introduction</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/quickstart.html">Quick Start</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/design.html">Design Rationale</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/quickstart.html"> Quick Start</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/design.html"> Design Rationale</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/compilation.html">Compilation</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/indexes.html">Indexes</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="geometry/indexes/matrix.html">Reference matrix</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/indexes/matrix.html"> Reference matrix</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/indexes/alphabetical_index.html">Alphabetical Index</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="geometry/reference.html">Reference</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference.html"> Reference</a></span></dt>
|
||||
<dd><dl>
|
||||
<dt><span class="section"><a href="geometry/reference/access.html">Access Functions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/adapted.html">Adapted models</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/algorithms.html">Algorithms</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/arithmetic.html">Arithmetic</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/concepts.html">Concepts</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/constants.html">Constants</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/cs.html">Coordinate Systems</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/core.html">Core Metafunctions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/enumerations.html">Enumerations</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/exceptions.html">Exceptions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/iterators.html">Iterators</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/models.html">Models</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/strategies.html">Strategies</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/views.html">Views</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/access.html"> Access Functions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/adapted.html"> Adapted models</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/algorithms.html"> Algorithms</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/arithmetic.html"> Arithmetic</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/concepts.html"> Concepts</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/constants.html"> Constants</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/cs.html"> Coordinate Systems</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/core.html"> Core Metafunctions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/enumerations.html"> Enumerations</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/exceptions.html"> Exceptions</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/iterators.html"> Iterators</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/models.html"> Models</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/strategies.html"> Strategies</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/reference/views.html"> Views</a></span></dt>
|
||||
</dl></dd>
|
||||
<dt><span class="section"><a href="geometry/aboutdoc.html">About this documentation</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/release_notes.html"> Release Notes</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/aboutdoc.html"> About this documentation</a></span></dt>
|
||||
<dt><span class="section"><a href="geometry/acknowledgments.html">Acknowledgments</a></span></dt>
|
||||
</dl>
|
||||
</div>
|
||||
<a name="geometry.contributions"></a><h3>
|
||||
<a name="geometry.contributions-heading"></a>
|
||||
<a name="id857099"></a>
|
||||
<a class="link" href="index.html#geometry.contributions">Contributions</a>
|
||||
</h3>
|
||||
<p>
|
||||
@ -87,24 +88,24 @@
|
||||
Alfredo Correa (adaption of Boost.Array)
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Adam Wulkiewicz (spatial indexes) <sup>[<a name="id697753" href="#ftn.id697753" class="footnote">1</a>]</sup>
|
||||
Adam Wulkiewicz (spatial indexes) <sup>[<a name="id857137" href="#ftn.id857137" class="footnote">1</a>]</sup>
|
||||
</li>
|
||||
<li class="listitem">
|
||||
Federico Fernández (spatial indexes) <sup>[<a name="id697767" href="#ftn.id697767" class="footnote">2</a>]</sup>
|
||||
Federico Fernández (spatial indexes) <sup>[<a name="id857151" href="#ftn.id857151" class="footnote">2</a>]</sup>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="footnotes">
|
||||
<br><hr width="100" align="left">
|
||||
<div class="footnote"><p><sup>[<a name="ftn.id697753" href="#id697753" class="para">1</a>] </sup>
|
||||
<div class="footnote"><p><sup>[<a name="ftn.id857137" href="#id857137" class="para">1</a>] </sup>
|
||||
Currently an extension
|
||||
</p></div>
|
||||
<div class="footnote"><p><sup>[<a name="ftn.id697767" href="#id697767" class="para">2</a>] </sup>
|
||||
<div class="footnote"><p><sup>[<a name="ftn.id857151" href="#id857151" class="para">2</a>] </sup>
|
||||
Currently an extension
|
||||
</p></div>
|
||||
</div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"><p><small>Last revised: January 13, 2012 at 11:52:50 GMT</small></p></td>
|
||||
<td align="left"><p><small>Last revised: February 12, 2012 at 15:01:29 GMT</small></p></td>
|
||||
<td align="right"><div class="copyright-footer"></div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
|
@ -38,10 +38,9 @@ The library follows existing conventions:
|
||||
* conventions from boost
|
||||
* conventions from the std library
|
||||
* conventions and names from one of the __ogc__ standards on geometry and, more
|
||||
specificly, from the
|
||||
[@http://portal.opengeospatial.org/files/?artifact_id=25355 Simple Feature Specification]
|
||||
specificly, from the __ogc_sf__
|
||||
|
||||
The library was released with Boost 1.47.0 and from that point on it is
|
||||
The library was first released with Boost 1.47.0 and from that point on it is
|
||||
officially part of the Boost C++ Libraries.
|
||||
|
||||
Latest stable version of the source code is included in the
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -10,6 +10,12 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ append]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
[include generated/append_status.qbk]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ area]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Area]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,13 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ buffer]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Buffer]
|
||||
[note The current implemetation only enlarges a box, which is not defined by OGC.
|
||||
A next version of the library will contain a more complete implementation
|
||||
]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ centroid]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Centroid]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -11,6 +11,10 @@
|
||||
=============================================================================/]
|
||||
|
||||
[def __is_cleared__ is cleared]
|
||||
[def __this_function__ clear]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[conformance_std __this_function__..__this_function__() method]
|
||||
|
||||
[include generated/clear_status.qbk]
|
||||
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ comparable_distance]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
[heading Behaviour]
|
||||
There is no (not yet) version with a strategy.
|
||||
|
||||
|
@ -10,9 +10,9 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[note convert is not defined within OGC or ISO]
|
||||
[note convert is modelled as source -> target
|
||||
(where assign is modelled as target := source)]
|
||||
[def __this_function__ convert]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
[include generated/convert_status.qbk]
|
||||
[note In this status matrix above: columns are source types
|
||||
@ -29,4 +29,5 @@ Linear
|
||||
[heading See also]
|
||||
* [link geometry.reference.algorithms.assign.assign assign]
|
||||
|
||||
|
||||
[note convert is modelled as source -> target
|
||||
(where assign is modelled as target := source)]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ convex_hull]
|
||||
|
||||
[heading_conformance_ogc __this_function__..ConvexHull()]
|
||||
|
||||
[include generated/convex_hull_status.qbk]
|
||||
|
||||
[heading Complexity]
|
||||
|
@ -11,6 +11,11 @@
|
||||
=============================================================================/]
|
||||
|
||||
[def __corrected__ is corrected]
|
||||
[def __this_function__ correct]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
[include generated/correct_status.qbk]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
@ -22,8 +27,6 @@
|
||||
[[__other__][__does_nothing__]]
|
||||
]
|
||||
|
||||
[tip Correct is not defined within OGC or ISO]
|
||||
|
||||
[heading Complexity]
|
||||
Linear
|
||||
|
||||
|
@ -10,17 +10,20 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ covered_by]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[note Both PostGIS and Oracle contain an algorithm with the same name and the
|
||||
same functionality.
|
||||
See the [@http://www.postgis.org/docs/ST_CoveredBy.html PostGIS documentation].
|
||||
]
|
||||
|
||||
[include generated/covered_by_status.qbk]
|
||||
[note In this status matrix above: columns are types of first parameter
|
||||
and rows are types of second parameter. So a point can be checked to be
|
||||
covered by a polygon, but not vice versa.
|
||||
]
|
||||
|
||||
[note convert is not defined within OGC or ISO. However, both PostGIS
|
||||
and Oracle contain an algorithm with the same name and the same functionality.
|
||||
See the [@http://www.postgis.org/docs/ST_CoveredBy.html PostGIS documentation].
|
||||
]
|
||||
|
||||
[heading Complexity]
|
||||
Linear
|
||||
|
||||
|
@ -8,6 +8,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ difference]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Difference]
|
||||
|
||||
[include reference/algorithms/difference_behavior.qbk]
|
||||
|
||||
[include reference/algorithms/geometry_rules.qbk]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ distance]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Distance]
|
||||
|
||||
[include generated/distance_status.qbk]
|
||||
|
||||
[heading Complexity]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ equals]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Equals]
|
||||
|
||||
[include generated/equals_status.qbk]
|
||||
|
||||
[heading Complexity]
|
||||
|
@ -10,8 +10,12 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ expand]
|
||||
[def __apply_expand__ Box is expanded to include the specified]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
@ -20,7 +24,6 @@
|
||||
[[__box__ / __other__][__nyiversion__]]
|
||||
]
|
||||
|
||||
[tip Expand is not defined within OGC or ISO]
|
||||
[note To use expand with another geometry type then specified, use expand(make_envelope<box_type>(geometry)]
|
||||
|
||||
[heading Complexity]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ intersection]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Intersection]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,11 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ intersects]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Intersects]
|
||||
[note The one argument version is added for __boost_geometry__]
|
||||
|
||||
[heading Examples]
|
||||
[intersects_linestring]
|
||||
[intersects_linestring_output]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ length]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Length]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ num_geometries]
|
||||
|
||||
[heading_conformance_ogc __this_function__..NumGeometries]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,11 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ num_interior_ring]
|
||||
|
||||
[heading_conformance_ogc __this_function__..NumInteriorRing]
|
||||
[note __boost_geometry__ adds an "s"]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,12 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ num_points]
|
||||
|
||||
[heading_conformance_ogc __this_function__..NumPoints]
|
||||
[note __this_function__ can be called for any geometry and not just linestrings
|
||||
(as the standard describes)]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,14 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ perimeter]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[note PostGIS contains an algorithm with the same name and the
|
||||
same functionality.
|
||||
See the [@http://www.postgis.org/docs/ST_Perimeter.html PostGIS documentation].
|
||||
]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ reverse]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[conformance_std __this_function__..std::__this_function__ function]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
@ -27,8 +31,6 @@
|
||||
|
||||
[note The reverse of a (multi)polygon or ring might make a valid geometry invalid because the (counter)clockwise orientation reverses.]
|
||||
|
||||
[tip Conforms to std::reverse functionality. It is not defined within OGC or ISO]
|
||||
|
||||
[heading Complexity]
|
||||
Linear
|
||||
|
||||
|
@ -10,6 +10,23 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ simplify]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[note PostGIS contains an algorithm with the same name and the
|
||||
same functionality.
|
||||
See the [@http://www.postgis.org/docs/ST_Simplify.html PostGIS documentation].
|
||||
]
|
||||
[note SQL Server contains an algorithm Reduce() with the same functionality.
|
||||
See the [@http://msdn.microsoft.com/en-us/library/bb933814.aspx MSDN documentation].
|
||||
]
|
||||
|
||||
[heading Behavior]
|
||||
Simplification is done using [@http://en.wikipedia.org/wiki/Ramer%E2%80%93Douglas%E2%80%93Peucker_algorithm Douglas-Peucker] (if the default strategy is used).
|
||||
[note Geometries might become invalid by using simplify. The simplification
|
||||
process might create self-intersections.
|
||||
]
|
||||
|
||||
[heading Examples]
|
||||
[simplify]
|
||||
[simplify_output]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ sym_difference]
|
||||
|
||||
[heading_conformance_ogc __this_function__..SymDifference]
|
||||
|
||||
[include reference/algorithms/difference_behavior.qbk]
|
||||
|
||||
[include reference/algorithms/geometry_rules.qbk]
|
||||
|
@ -10,6 +10,10 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ transform]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -10,6 +10,11 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ union]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Union]
|
||||
[note __boost_geometry__ adds an underscore to avoid using the `union` keyword]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
[[Case] [Behavior] ]
|
||||
|
@ -11,6 +11,10 @@
|
||||
=============================================================================/]
|
||||
|
||||
[def __applies_unique__ Removes all consecutive duplicate points]
|
||||
[def __this_function__ unique]
|
||||
|
||||
[heading_conformance_no_ogc __this_function__]
|
||||
[conformance_std __this_function__..std::__this_function__ function]
|
||||
|
||||
[heading Behavior]
|
||||
[table
|
||||
@ -26,8 +30,6 @@
|
||||
[[__multi_polygon__][__applies_unique__ in all contained polygons (all rings)]]
|
||||
]
|
||||
|
||||
[tip Conforms to std::unique functionality. It is not defined within OGC or ISO]
|
||||
|
||||
[heading Complexity]
|
||||
Linear
|
||||
|
||||
|
@ -10,6 +10,11 @@
|
||||
http://www.boost.org/LICENSE_1_0.txt)
|
||||
=============================================================================/]
|
||||
|
||||
[def __this_function__ within]
|
||||
|
||||
[heading_conformance_ogc __this_function__..Within]
|
||||
[note OGC defines within as completely within and not on the border. See the notes for within / on the border]
|
||||
|
||||
[include generated/within_status.qbk]
|
||||
[note In this status matrix above: columns are types of first parameter
|
||||
and rows are types of second parameter. So a point can be checked to be
|
||||
|
@ -32,14 +32,14 @@ int main()
|
||||
|
||||
// Append a range
|
||||
append(poly, tuple_list_of(0, 0)(0, 10)(11, 11)(10, 0)); /*< tuple_list_of delivers a range and can therefore be used in boost::geometry::append >*/
|
||||
// Append a point (in this case the closing point
|
||||
// Append a point (in this case the closing point)
|
||||
append(poly, make_tuple(0, 0));
|
||||
|
||||
// Create an interior ring (append does not do this automatically)
|
||||
boost::geometry::interior_rings(poly).resize(1);
|
||||
|
||||
// Append a range to the interior ring
|
||||
append(poly, tuple_list_of(2, 2)(2, 5)(6, 6)(5, 2), 0);
|
||||
append(poly, tuple_list_of(2, 2)(2, 5)(6, 6)(5, 2), 0); /*< The last parameter ring_index 0 denotes the first interior ring >*/
|
||||
// Append a point to the first interior ring
|
||||
append(poly, make_tuple(2, 2), 0);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user