Boost.Geometry doc updates and fixes

[SVN r76997]
This commit is contained in:
Barend Gehrels 2012-02-12 17:07:37 +00:00
parent 495597f8b9
commit 388feb89ae
19 changed files with 143 additions and 20 deletions

View File

@ -39,9 +39,11 @@ compilers:
* 9.0 (__msvc__ 2008) [/reported by Trunk report May 8, 2011]
* 8.0 (__msvc__ 2005) [/reported by Trunk report May 8, 2011]
* gcc
* gcc 4.7.0 [/reported by Trunk report February 12, 2012]
* gcc 4.6.2 [/reported by Trunk report February 12, 2012]
* gcc 4.6.1 [/reported by Trunk report May 8, 2011]
* gcc 4.6.0 (including C++0x) [/reported by Trunk report May 8, 2011]
* gcc 4.5.2 (including C++0x) [/reported by Trunk report May 8, 2011]
* gcc 4.6.0 [/reported by Trunk report May 8, 2011]
* gcc 4.5.2 [/reported by Trunk report May 8, 2011]
* gcc 4.4.0 [/reported by Trunk report May 8, 2011]
* gcc 4.3.4 [/reported by Trunk report March 26, 2011]
* gcc 4.2.1 [/reported by Trunk report May 8, 2011]

View File

@ -27,9 +27,19 @@ The Linestring Concept is defined as following:
* The type defined by the metafunction `range_value<...>::type` must fulfill
the [link geometry.reference.concepts.concept_point Point Concept]
[heading Rules]
Besides the Concepts, which are checks on compile-time, there are rules that
valid linestrings must fulfill. Most algorithms work on any linestring, so either
self-crossing or not. However, for correct results using the overlay algorithms
(intersection and difference algorithms in combination with a polygon)
self-intersections can disturb the process and result in incorrect results.
[heading Available Models]
* [link geometry.reference.models.model_linestring model::linestring]
* a std::vector (requires registration)
* a std::deque (requires registration)
[see_boost_range_sample Linestring]
[endsect]

View File

@ -41,5 +41,6 @@ on the rules a polygon (and also a ring) must fulfill.
* a std::vector (requires `#include boost/geometry/geometries/adapted/std_as_ring.hpp>`)
* a std::deque (requires `#include boost/geometry/geometries/adapted/std_as_ring.hpp>`)
[see_boost_range_sample Ring]
[endsect]

View File

@ -95,6 +95,13 @@ The function [function] implements function [ogc_function] from the __ogc_sf__.
The function [function] conforms to the [std_function] of the C++ std-library.
]
[template see_boost_range_sample[concept]
[note See also the sample in the [@../../../range/doc/html/range/reference/extending/method_2.html Boost.Range documentation]
showing how a type can be adapted to a Boost.Range to fulfill the concept of a [concept]
]
]
[heading Contributions]
Boost.Geometry contains contributions by:

View File

@ -33,7 +33,7 @@
</h3></div></div>
<div><p class="copyright">Copyright &#169; 2009 -2012 Barend Gehrels, Bruno Lalande, Mateusz Loskot</p></div>
<div><div class="legalnotice">
<a name="id857080"></a><p>
<a name="id876741"></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>
@ -74,7 +74,7 @@
</dl>
</div>
<a name="geometry.contributions"></a><h3>
<a name="id857099"></a>
<a name="id876760"></a>
<a class="link" href="index.html#geometry.contributions">Contributions</a>
</h3>
<p>
@ -88,24 +88,24 @@
Alfredo Correa (adaption of Boost.Array)
</li>
<li class="listitem">
Adam Wulkiewicz (spatial indexes) <sup>[<a name="id857137" href="#ftn.id857137" class="footnote">1</a>]</sup>
Adam Wulkiewicz (spatial indexes) <sup>[<a name="id876797" href="#ftn.id876797" class="footnote">1</a>]</sup>
</li>
<li class="listitem">
Federico Fern&#225;ndez (spatial indexes) <sup>[<a name="id857151" href="#ftn.id857151" class="footnote">2</a>]</sup>
Federico Fern&#225;ndez (spatial indexes) <sup>[<a name="id876812" href="#ftn.id876812" 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.id857137" href="#id857137" class="para">1</a>] </sup>
<div class="footnote"><p><sup>[<a name="ftn.id876797" href="#id876797" class="para">1</a>] </sup>
Currently an extension
</p></div>
<div class="footnote"><p><sup>[<a name="ftn.id857151" href="#id857151" class="para">2</a>] </sup>
<div class="footnote"><p><sup>[<a name="ftn.id876812" href="#id876812" 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: February 12, 2012 at 15:01:29 GMT</small></p></td>
<td align="left"><p><small>Last revised: February 12, 2012 at 17:00:38 GMT</small></p></td>
<td align="right"><div class="copyright-footer"></div></td>
</tr></table>
<hr>

View File

@ -0,0 +1,15 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[def __this_function__ disjoint]
[heading_conformance_ogc __this_function__..Disjoint]

View File

@ -0,0 +1,15 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[def __this_function__ envelope]
[heading_conformance_ogc __this_function__..Envelope]

View File

@ -0,0 +1,16 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[def __this_function__ for_each_point]
[heading_conformance_no_ogc __this_function__]
[conformance_std __this_function__..std::for_each function]

View File

@ -0,0 +1,16 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[def __this_function__ for_each_segment]
[heading_conformance_no_ogc __this_function__]
[conformance_std __this_function__..std::for_each function]

View File

@ -13,7 +13,7 @@
[def __this_function__ intersects]
[heading_conformance_ogc __this_function__..Intersects]
[note The one argument version is added for __boost_geometry__]
[? __one_parameter__ The version with one parameter is additional and not described in the OGC standard]
[heading Examples]
[intersects_linestring]

View File

@ -0,0 +1,15 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[def __this_function__ overlaps]
[heading_conformance_ogc __this_function__..Overlaps]

View File

@ -13,3 +13,6 @@
[heading Examples]
[point]
[point_output]
[include reference/geometries/point_assign_warning.qbk]

View File

@ -0,0 +1,16 @@
[/============================================================================
Boost.Geometry (aka GGL, Generic Geometry Library)
Copyright (c) 2009-2012 Barend Gehrels, Amsterdam, the Netherlands.
Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
Copyright (c) 2009-2012 Bruno Lalande, Paris, France.
Use, modification and distribution is subject to the Boost Software License,
Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
http://www.boost.org/LICENSE_1_0.txt)
=============================================================================/]
[heading Notes]
[note Coordinates are not initialized. If the constructor with parameters is not
called and points are not assigned using `set` or `assign` then the coordinate
values will contain garbage]

View File

@ -228,7 +228,9 @@ struct disjoint_reversed
\param geometry1 \param_geometry
\param geometry2 \param_geometry
\return \return_check2{are disjoint}
*/
\qbk{[include reference/algorithms/disjoint.qbk]}
*/
template <typename Geometry1, typename Geometry2>
inline bool disjoint(Geometry1 const& geometry1,
Geometry2 const& geometry2)

View File

@ -216,14 +216,7 @@ struct envelope
\param geometry \param_geometry
\param mbr \param_box \param_set{envelope}
\par Example:
Example showing envelope calculation, using point_ll latlong points
\dontinclude doxygen_1.cpp
\skip example_envelope_polygon
\line {
\until }
\qbk{[include reference/algorithms/envelope.qbk]}
\qbk{
[heading Example]
[envelope] [envelope_output]
@ -253,6 +246,7 @@ inline void envelope(Geometry const& geometry, Box& mbr)
\param geometry \param_geometry
\return \return_calc{envelope}
\qbk{[include reference/algorithms/envelope.qbk]}
\qbk{
[heading Example]
[return_envelope] [return_envelope_output]

View File

@ -250,6 +250,7 @@ struct for_each_segment<polygon_tag, Polygon, Functor, IsConst>
\tparam Functor \tparam_functor
\qbk{distinguish,const version}
\qbk{[include reference/algorithms/for_each_point.qbk]}
\qbk{[heading Example]}
\qbk{[for_each_point_const] [for_each_point_const_output]}
*/
@ -277,6 +278,7 @@ inline Functor for_each_point(Geometry const& geometry, Functor f)
\tparam Geometry \tparam_geometry
\tparam Functor \tparam_functor
\qbk{[include reference/algorithms/for_each_point.qbk]}
\qbk{[heading Example]}
\qbk{[for_each_point] [for_each_point_output]}
*/
@ -305,6 +307,7 @@ inline Functor for_each_point(Geometry& geometry, Functor f)
\tparam Functor \tparam_functor
\qbk{distinguish,const version}
\qbk{[include reference/algorithms/for_each_segment.qbk]}
\qbk{[heading Example]}
\qbk{[for_each_segment_const] [for_each_segment_const_output]}
*/
@ -331,6 +334,8 @@ inline Functor for_each_segment(Geometry const& geometry, Functor f)
\param f \par_for_each_f{segment}
\tparam Geometry \tparam_geometry
\tparam Functor \tparam_functor
\qbk{[include reference/algorithms/for_each_segment.qbk]}
*/
template<typename Geometry, typename Functor>
inline Functor for_each_segment(Geometry& geometry, Functor f)

View File

@ -35,6 +35,7 @@ namespace boost { namespace geometry
\return \return_check{is self-intersecting}
\qbk{distinguish,one geometry}
\qbk{[def __one_parameter__]}
\qbk{[include reference/algorithms/intersects.qbk]}
*/
template <typename Geometry>

View File

@ -179,7 +179,9 @@ struct overlaps<box_tag, box_tag, Box1, Box2>
\brief \brief_check2{overlap}
\ingroup overlaps
\return \return_check2{overlap}
*/
\qbk{[include reference/algorithms/overlaps.qbk]}
*/
template <typename Geometry1, typename Geometry2>
inline bool overlaps(Geometry1 const& geometry1, Geometry2 const& geometry2)
{

View File

@ -36,6 +36,9 @@ namespace model { namespace d2
[heading Model of]
[link geometry.reference.concepts.concept_point Point Concept]
}
\qbk{[include reference/geometries/point_assign_warning.qbk]}
*/
template<typename CoordinateType, typename CoordinateSystem = cs::cartesian>
class point_xy : public model::point<CoordinateType, 2, CoordinateSystem>