Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r67540 - in trunk/libs/geometry/doc: . doxy/doxygen_input/groups reference src/docutils/tools/doxygen_xml2qbk src/docutils/tools/doxygen_xml2qbk/contrib
From: barend.gehrels_at_[hidden]
Date: 2011-01-01 11:22:51


Author: barendgehrels
Date: 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
New Revision: 67540
URL: http://svn.boost.org/trac/boost/changeset/67540

Log:
Doc update, enhanced converter, added many groups, fixed many endpoints

Added:
   trunk/libs/geometry/doc/doxy/doxygen_input/groups/groups.hpp (contents, props changed)
   trunk/libs/geometry/doc/reference/append.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/arithmetic.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/assign.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/box.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/clear.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/exterior_ring.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/get.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/interior_rings.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/linestring.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/make.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/multi_linestring.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/multi_point.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/multi_polygon.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/polygon.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/referring_segment.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/ring.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/segment.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/set.qbk (contents, props changed)
   trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/boost.vsprops (contents, props changed)
   trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/contrib/readme.txt (contents, props changed)
   trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/deployment_path.vsprops (contents, props changed)
Removed:
   trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_geometries.hpp
   trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_interior_rings.hpp
   trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_points.hpp
Text files modified:
   trunk/libs/geometry/doc/geometry.qbk | 22 ++-
   trunk/libs/geometry/doc/make_qbk.py | 34 ++++-
   trunk/libs/geometry/doc/quickref.xml | 210 ++++++++++++++++++++-------------------
   trunk/libs/geometry/doc/reference.qbk | 60 ++++++++++
   trunk/libs/geometry/doc/reference/area.qbk | 14 ++
   trunk/libs/geometry/doc/reference/buffer.qbk | 12 ++
   trunk/libs/geometry/doc/reference/centroid.qbk | 28 ++++
   trunk/libs/geometry/doc/reference/convert.qbk | 6 +
   trunk/libs/geometry/doc/reference/convex_hull.qbk | 12 ++
   trunk/libs/geometry/doc/reference/difference.qbk | 6 +
   trunk/libs/geometry/doc/reference/distance.qbk | 14 ++
   trunk/libs/geometry/doc/reference/envelope.qbk | 12 ++
   trunk/libs/geometry/doc/reference/for_each.qbk | 24 ++++
   trunk/libs/geometry/doc/reference/intersection.qbk | 8 +
   trunk/libs/geometry/doc/reference/intersects.qbk | 16 ++
   trunk/libs/geometry/doc/reference/length.qbk | 14 ++
   trunk/libs/geometry/doc/reference/num_geometries.qbk | 6 +
   trunk/libs/geometry/doc/reference/num_interior_rings.qbk | 6 +
   trunk/libs/geometry/doc/reference/num_points.qbk | 6 +
   trunk/libs/geometry/doc/reference/perimeter.qbk | 14 ++
   trunk/libs/geometry/doc/reference/point.qbk | 84 +++++++++++++++
   trunk/libs/geometry/doc/reference/point_xy.qbk | 85 ++++++++++++++++
   trunk/libs/geometry/doc/reference/register.qbk | 12 +-
   trunk/libs/geometry/doc/reference/reverse.qbk | 6 +
   trunk/libs/geometry/doc/reference/simplify.qbk | 28 ++++
   trunk/libs/geometry/doc/reference/sym_difference.qbk | 6 +
   trunk/libs/geometry/doc/reference/transform.qbk | 12 ++
   trunk/libs/geometry/doc/reference/union.qbk | 18 +++
   trunk/libs/geometry/doc/reference/unique.qbk | 6 +
   trunk/libs/geometry/doc/reference/within.qbk | 14 ++
   trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.cpp | 30 ++++-
   trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.vcproj | 9 +
   32 files changed, 678 insertions(+), 156 deletions(-)

Added: trunk/libs/geometry/doc/doxy/doxygen_input/groups/groups.hpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/doxy/doxygen_input/groups/groups.hpp 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,46 @@
+// File defining groups for Doxygen.
+// Note that group descriptions are (currently) not used.
+
+/*!
+\defgroup append append: append points to geometries
+*/
+
+/*!
+\defgroup make make: construct geometries
+*/
+
+/*!
+\defgroup assign assign: assign values to geometries
+*/
+
+/*!
+\defgroup clear clear: clear geometries
+*/
+
+/*!
+\defgroup get get: get geometries
+*/
+
+/*!
+\defgroup set set: set geometries
+*/
+
+/*!
+\defgroup num_geometries number of geometries: calculate the number of geometries in a multi-geometry
+*/
+
+/*!
+\defgroup num_interior_rings number of interior rings: calculate the number of interior rings
+*/
+
+/*!
+\defgroup num_points number of points: calculate number of points of a geometry
+*/
+
+/*!
+\defgroup exterior_ring exterior_ring: exterior_ring
+*/
+
+/*!
+\defgroup interior_rings interior_rings: interior_rings
+*/

Deleted: trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_geometries.hpp
==============================================================================
--- trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_geometries.hpp 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
+++ (empty file)
@@ -1,4 +0,0 @@
-/*!
-\defgroup num_geometries number of geometries: calculate the number of geometries in a multi-geometry
-
-*/

Deleted: trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_interior_rings.hpp
==============================================================================
--- trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_interior_rings.hpp 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
+++ (empty file)
@@ -1,5 +0,0 @@
-/*!
-\defgroup num_interior_rings number of interior rings: calculate the number of interior rings
-
-
-*/

Deleted: trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_points.hpp
==============================================================================
--- trunk/libs/geometry/doc/doxy/doxygen_input/groups/num_points.hpp 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
+++ (empty file)
@@ -1,4 +0,0 @@
-/*!
-\defgroup num_points number of points: calculate number of points of a geometry
-
-*/

Modified: trunk/libs/geometry/doc/geometry.qbk
==============================================================================
--- trunk/libs/geometry/doc/geometry.qbk (original)
+++ trunk/libs/geometry/doc/geometry.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,18 +1,20 @@
-[/==============================================================================
- Copyright (c) 1995-2010 Barend Gehrels, Geodan, Amsterdam, the Netherlands.
- Copyright (c) 2008-2010 Bruno Lalande, Paris, France.
- Copyright (c) 2009-2010 Mateusz Loskot (mateusz_at_[hidden]), London, UK
-
- 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)
-===============================================================================/]
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2009-2011 Barend Gehrels, Geodan, Amsterdam, the Netherlands.
+ Copyright (c) 2009-2011 Mateusz Loskot (mateusz_at_[hidden])
+ Copyright (c) 2009-2011 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)
+=============================================================================/]
 
 [library Geometry
     [quickbook 1.5]
     [version 1.0]
     [authors [Gehrels, Barend], [Lalande, Bruno], [Loskot, Mateusz]]
- [copyright 2010 Barend Gehrels, Bruno Lalande, Mateusz Loskot]
+ [copyright 2011 Barend Gehrels, Bruno Lalande, Mateusz Loskot]
     [purpose Documentation of Boost.Geometry library]
     [license
         Distributed under the Boost Software License, Version 1.0.

Modified: trunk/libs/geometry/doc/make_qbk.py
==============================================================================
--- trunk/libs/geometry/doc/make_qbk.py (original)
+++ trunk/libs/geometry/doc/make_qbk.py 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -22,31 +22,47 @@
         os.chdir("..")
 
 def group_to_quickbook(section):
- os.system(cmd % ("group__" + section, section))
+ os.system(cmd % ("group__" + section.replace("_", "__"), section))
 
-def xml_to_quickbook(xml, section):
- os.system(cmd % (xml, section))
+def model_to_quickbook(classname, section):
+ os.system(cmd % ("classboost_1_1geometry_1_1model_1_1" + classname, section))
 
 
 call_doxygen()
 
-algorithms = ["area", "buffer", "centroid", "combine", "convert"
+algorithms = ["append", "assign", "make", "clear"
+ , "area", "buffer", "centroid", "combine", "convert"
         , "convex_hull", "difference", "disjoint", "dissolve", "distance"
         , "envelope", "equals", "for_each", "intersection", "intersects"
         , "length", "num_geometries", "num_interior_rings", "num_points"
         , "overlaps", "perimeter", "reverse", "simplify", "sym_difference"
         , "transform", "union", "unique", "within"]
+access_functions = ["get", "set", "exterior_ring", "interior_rings"
+ , "num_points", "num_interior_rings", "num_geometries"]
 
 for a in algorithms:
         group_to_quickbook(a)
+
+for a in access_functions:
+ group_to_quickbook(a)
 
+group_to_quickbook("arithmetic")
 group_to_quickbook("register")
 
-xml_to_quickbook("classboost_1_1geometry_1_1model_1_1point", "point")
-xml_to_quickbook("classboost_1_1geometry_1_1model_1_1d2_1_1point__xy", "point_xy")
-xml_to_quickbook("classboost_1_1geometry_1_1model_1_1linestring", "linestring")
-xml_to_quickbook("classboost_1_1geometry_1_1model_1_1box", "box")
+model_to_quickbook("point", "point")
+model_to_quickbook("d2_1_1point__xy", "point_xy")
+model_to_quickbook("linestring", "linestring")
+model_to_quickbook("box", "box")
+model_to_quickbook("polygon", "polygon")
+model_to_quickbook("segment", "segment")
+model_to_quickbook("multi__linestring", "multi_linestring")
+model_to_quickbook("multi__point", "multi_point")
+model_to_quickbook("multi__polygon", "multi_polygon")
+model_to_quickbook("linear__ring", "ring")
+model_to_quickbook("referring__segment", "referring_segment")
+
+
 
-xml_to_quickbook("structboost_1_1geometry_1_1closing__iterator", "closing_iterator")
+#model_to_quickbook("structboost_1_1geometry_1_1closing__iterator", "closing_iterator")
 
 os.system("bjam")

Modified: trunk/libs/geometry/doc/quickref.xml
==============================================================================
--- trunk/libs/geometry/doc/quickref.xml (original)
+++ trunk/libs/geometry/doc/quickref.xml 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -44,7 +44,7 @@
    <entry valign="top">
     <bridgehead renderas="sect3">2-dimensional</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.concept.concept_box">Box</link></member>
+ <member><link linkend="geometry.reference.concepts.concept_box">Box</link></member>
      <member><link linkend="geometry.reference.concepts.concept_ring">Ring</link></member>
      <member><link linkend="geometry.reference.concepts.concept_polygon">Polygon</link></member>
      <member><link linkend="geometry.reference.concepts.concept_multi_polygon">MultiPolygon</link></member>
@@ -71,25 +71,26 @@
    <entry valign="top">
     <bridgehead renderas="sect3">0-dimensional</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.models.point">point</link></member>
- <member><link linkend="geometry.reference.models.point_xy">point_xy</link></member>
+ <member><link linkend="geometry.reference.models.model_point">point</link></member>
+ <member><link linkend="geometry.reference.models.model_d2_point_xy">point_xy</link></member>
+ <member><link linkend="geometry.reference.models.model_multi_point">multi_point</link></member>
       </simplelist>
     </entry>
     <entry valign="top">
     <bridgehead renderas="sect3">1-dimensional</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.models.segment">segment</link></member>
- <member><link linkend="geometry.reference.models.segment_2d">segment_2d</link></member>
- <member><link linkend="geometry.reference.models.linestring">linestring</link></member>
+ <member><link linkend="geometry.reference.models.model_segment">segment</link></member>
+ <member><link linkend="geometry.reference.models.model_linestring">linestring</link></member>
+ <member><link linkend="geometry.reference.models.model_multi_linestring">multi_linestring</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">2-dimensional</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.models.box">box</link></member>
- <member><link linkend="geometry.reference.models.box">box</link></member>
- <member><link linkend="geometry.reference.models.linear_ring">linear_ring</link></member>
- <member><link linkend="geometry.reference.models.polygon">polygon</link></member>
+ <member><link linkend="geometry.reference.models.model_box">box</link></member>
+ <member><link linkend="geometry.reference.models.model_linear_ring">linear_ring</link></member>
+ <member><link linkend="geometry.reference.models.model_polygon">polygon</link></member>
+ <member><link linkend="geometry.reference.models.model_multi_polygon">multi_polygon</link></member>
     </simplelist>
    </entry>
   </row>
@@ -97,7 +98,12 @@
    <entry valign="top" namest="a" nameend="c">
     <bridgehead renderas="sect3">Macros</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.models.register.BOOST_GEOMETRY_REGISTER_POINT_2D_5">BOOST_GEOMETRY_REGISTER_POINT_2D</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_2d">BOOST_GEOMETRY_REGISTER_POINT_2D</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_2d_const">BOOST_GEOMETRY_REGISTER_POINT_2D_CONST</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_2d_get_set">BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_3d">BOOST_GEOMETRY_REGISTER_POINT_3D</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_3d_const">BOOST_GEOMETRY_REGISTER_POINT_3D_CONST</link></member>
+ <member><link linkend="geometry.reference.register.boost_geometry_register_point_3d_get_set">BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET</link></member>
     
     </simplelist>
    </entry>
@@ -121,40 +127,40 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Metafunctions</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.cs_tag">cs_tag</link></member>
- <member><link linkend="boost_geometry.reference.coordinate_type">coordinate_type</link></member>
- <member><link linkend="boost_geometry.reference.coordinate_system">coordinate_system</link></member>
- <member><link linkend="boost_geometry.reference.dimension">dimension</link></member>
- <member><link linkend="boost_geometry.reference.geometry_id">geometry_id</link></member>
- <member><link linkend="boost_geometry.reference.interior_type">interior_type</link></member>
- <member><link linkend="boost_geometry.reference.is_linear">is_linear</link></member>
- <member><link linkend="boost_geometry.reference.is_multi">is_multi</link></member>
- <member><link linkend="boost_geometry.reference.is_radian">is_radian</link></member>
- <member><link linkend="boost_geometry.reference.point_order">point_order</link></member>
- <member><link linkend="boost_geometry.reference.point_type">point_type</link></member>
- <member><link linkend="boost_geometry.reference.ring_type">ring_type</link></member>
- <member><link linkend="boost_geometry.reference.replace_point_type">replace_point_type</link></member>
- <member><link linkend="boost_geometry.reference.reverse_dispatch">reverse_dispatch</link></member>
- <member><link linkend="boost_geometry.reference.tag">tag</link></member>
- <member><link linkend="boost_geometry.reference.topological_dimension">topological_dimension</link></member>
+ <member><link linkend="geometry.reference.cs_tag">cs_tag</link></member>
+ <member><link linkend="geometry.reference.coordinate_type">coordinate_type</link></member>
+ <member><link linkend="geometry.reference.coordinate_system">coordinate_system</link></member>
+ <member><link linkend="geometry.reference.dimension">dimension</link></member>
+ <member><link linkend="geometry.reference.geometry_id">geometry_id</link></member>
+ <member><link linkend="geometry.reference.interior_type">interior_type</link></member>
+ <member><link linkend="geometry.reference.is_linear">is_linear</link></member>
+ <member><link linkend="geometry.reference.is_multi">is_multi</link></member>
+ <member><link linkend="geometry.reference.is_radian">is_radian</link></member>
+ <member><link linkend="geometry.reference.point_order">point_order</link></member>
+ <member><link linkend="geometry.reference.point_type">point_type</link></member>
+ <member><link linkend="geometry.reference.ring_type">ring_type</link></member>
+ <member><link linkend="geometry.reference.replace_point_type">replace_point_type</link></member>
+ <member><link linkend="geometry.reference.reverse_dispatch">reverse_dispatch</link></member>
+ <member><link linkend="geometry.reference.tag">tag</link></member>
+ <member><link linkend="geometry.reference.topological_dimension">topological_dimension</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Access Functions</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.exterior_ring">exterior_ring</link></member>
- <member><link linkend="boost_geometry.reference.get">get</link></member>
- <member><link linkend="boost_geometry.reference.get_as_radian">get_as_radian</link></member>
- <member><link linkend="boost_geometry.reference.interior_rings">interior_rings</link></member>
- <member><link linkend="boost_geometry.reference.num_interior_rings">num_interior_rings</link></member>
- <member><link linkend="boost_geometry.reference.num_points">num_points</link></member>
- <member><link linkend="boost_geometry.reference.set">set</link></member>
- <member><link linkend="boost_geometry.reference.set_from_radian">set_from_radian</link></member>
+ <member><link linkend="geometry.reference.access.exterior_ring">exterior_ring</link></member>
+ <member><link linkend="geometry.reference.access.get">get</link></member>
+ <member><link linkend="geometry.reference.access.get_as_radian">get_as_radian</link></member>
+ <member><link linkend="geometry.reference.access.interior_rings">interior_rings</link></member>
+ <member><link linkend="geometry.reference.access.num_interior_rings">num_interior_rings</link></member>
+ <member><link linkend="geometry.reference.access.num_points">num_points</link></member>
+ <member><link linkend="geometry.reference.access.set">set</link></member>
+ <member><link linkend="geometry.reference.access.set_from_radian">set_from_radian</link></member>
     </simplelist>
     <bridgehead renderas="sect3">Classes</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.exception">exception</link></member>
- <member> <link linkend="boost_geometry.reference.centroid_exception">centroid_exception</link></member>
+ <member><link linkend="geometry.reference.exception">exception</link></member>
+ <member> <link linkend="geometry.reference.centroid_exception">centroid_exception</link></member>
     </simplelist>
    </entry>
   </row>
@@ -177,16 +183,16 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Numeric</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.max_corner">max_corner</link></member>
- <member><link linkend="boost_geometry.reference.min_corner">min_corner</link></member>
- <member><link linkend="boost_geometry.reference.order_selector">order_selector</link></member>
+ <member><link linkend="geometry.reference.max_corner">max_corner</link></member>
+ <member><link linkend="geometry.reference.min_corner">min_corner</link></member>
+ <member><link linkend="geometry.reference.order_selector">order_selector</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Types</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.degree">degree</link></member>
- <member><link linkend="boost_geometry.reference.radian">radian</link></member>
+ <member><link linkend="geometry.reference.degree">degree</link></member>
+ <member><link linkend="geometry.reference.radian">radian</link></member>
     </simplelist>
    </entry>
   </row>
@@ -213,30 +219,30 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Classes</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.cs__cartesian">cs::cartesian</link></member>
- <member><link linkend="boost_geometry.reference.cs__geographic">cs::geographic</link></member>
- <member><link linkend="boost_geometry.reference.cs__polar">cs::polar</link></member>
- <member><link linkend="boost_geometry.reference.cs__spherical">cs::spherical</link></member>
+ <member><link linkend="geometry.reference.cs__cartesian">cs::cartesian</link></member>
+ <member><link linkend="geometry.reference.cs__geographic">cs::geographic</link></member>
+ <member><link linkend="geometry.reference.cs__polar">cs::polar</link></member>
+ <member><link linkend="geometry.reference.cs__spherical">cs::spherical</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Metafunctions</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.range_type">range_type</link></member>
+ <member><link linkend="geometry.reference.range_type">range_type</link></member>
     </simplelist>
     <bridgehead renderas="sect3">Classes</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.circular_iterator">circular_iterator</link></member>
- <member><link linkend="boost_geometry.reference.ever_circling_iterator">ever_circling_iterator</link></member>
- <member><link linkend="boost_geometry.reference.one_section_segment_iterator">one_section_segment_iterator</link></member>
- <member><link linkend="boost_geometry.reference.section_iterator">section_iterator</link></member>
- <member><link linkend="boost_geometry.reference.segment_iterator">segment_iterator</link></member>
+ <member><link linkend="geometry.reference.circular_iterator">circular_iterator</link></member>
+ <member><link linkend="geometry.reference.ever_circling_iterator">ever_circling_iterator</link></member>
+ <member><link linkend="geometry.reference.one_section_segment_iterator">one_section_segment_iterator</link></member>
+ <member><link linkend="geometry.reference.section_iterator">section_iterator</link></member>
+ <member><link linkend="geometry.reference.segment_iterator">segment_iterator</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Functions</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.make_segment_iterator">make_segment_iterator</link></member>
+ <member><link linkend="geometry.reference.make_segment_iterator">make_segment_iterator</link></member>
     </simplelist>
    </entry>
   </row>
@@ -261,8 +267,8 @@
     <bridgehead renderas="sect3">Geometry Constructors</bridgehead>
     <simplelist type="vert" columns="1">
      <member><link linkend="geometry.reference.algorithms.make">make</link></member>
- <member><link linkend="geometry.reference.algorithms.make_inverse">make_inverse</link></member>
- <member><link linkend="geometry.reference.algorithms.make_zero">make_zero</link></member>
+ <member><link linkend="geometry.reference.algorithms.make.make_inverse">make_inverse</link></member>
+ <member><link linkend="geometry.reference.algorithms.make.make_zero">make_zero</link></member>
     </simplelist>
     <bridgehead renderas="sect3">Predicates</bridgehead>
     <simplelist type="vert" columns="1">
@@ -285,11 +291,11 @@
     <bridgehead renderas="sect3">Assign</bridgehead>
     <simplelist type="vert" columns="1">
      <member><link linkend="geometry.reference.algorithms.assign">assign</link></member>
- <member><link linkend="geometry.reference.algorithms.assign_box_corners">assign_box_corners</link></member>
- <member><link linkend="geometry.reference.algorithms.assign_inverse">assign_inverse</link></member>
- <member><link linkend="geometry.reference.algorithms.assign_point_from_index">assign_point_from_index</link></member>
- <member><link linkend="geometry.reference.algorithms.assign_point_to_index">assign_point_to_index</link></member>
- <member><link linkend="geometry.reference.algorithms.assign_zero">assign_zero</link></member>
+ <member><link linkend="geometry.reference.algorithms.assign.assign_box_corners">assign_box_corners</link></member>
+ <member><link linkend="geometry.reference.algorithms.assign.assign_inverse">assign_inverse</link></member>
+ <member><link linkend="geometry.reference.algorithms.assign.assign_point_from_index">assign_point_from_index</link></member>
+ <member><link linkend="geometry.reference.algorithms.assign.assign_point_to_index">assign_point_to_index</link></member>
+ <member><link linkend="geometry.reference.algorithms.assign.assign_zero">assign_zero</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
@@ -395,19 +401,19 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Compare</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.equal_to">equal_to</link></member>
- <member><link linkend="boost_geometry.reference.greater">greater</link></member>
- <member><link linkend="boost_geometry.reference.less">less</link></member>
+ <member><link linkend="geometry.reference.equal_to">equal_to</link></member>
+ <member><link linkend="geometry.reference.greater">greater</link></member>
+ <member><link linkend="geometry.reference.less">less</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Relate</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.policies__relate__direction_type">policies::relate::direction_type</link></member>
- <member><link linkend="boost_geometry.reference.policies__relate__segments_de9im">policies::relate::segments_de9im</link></member>
- <member><link linkend="boost_geometry.reference.policies__relate__segments_direction">policies::relate::segments_direction</link></member>
- <member><link linkend="boost_geometry.reference.policies__relate__segments_intersection_points">policies::relate::segments_intersection_points</link></member>
- <member><link linkend="boost_geometry.reference.policies__relate__segments_tupled">policies::relate::segments_tupled</link></member>
+ <member><link linkend="geometry.reference.policies__relate__direction_type">policies::relate::direction_type</link></member>
+ <member><link linkend="geometry.reference.policies__relate__segments_de9im">policies::relate::segments_de9im</link></member>
+ <member><link linkend="geometry.reference.policies__relate__segments_direction">policies::relate::segments_direction</link></member>
+ <member><link linkend="geometry.reference.policies__relate__segments_intersection_points">policies::relate::segments_intersection_points</link></member>
+ <member><link linkend="geometry.reference.policies__relate__segments_tupled">policies::relate::segments_tupled</link></member>
     </simplelist>
    </entry>
   </row>
@@ -432,18 +438,18 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Area</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy_area">strategy_area</link></member>
- <member><link linkend="boost_geometry.reference.area_result">area_result</link></member>
- <member><link linkend="boost_geometry.reference.strategy__area__by_triangles">strategy::area::by_triangles</link></member>
- <member><link linkend="boost_geometry.reference.strategy__area__huiller">strategy::area::huiller</link></member>
+ <member><link linkend="geometry.reference.strategy_area">strategy_area</link></member>
+ <member><link linkend="geometry.reference.area_result">area_result</link></member>
+ <member><link linkend="geometry.reference.strategy__area__by_triangles">strategy::area::by_triangles</link></member>
+ <member><link linkend="geometry.reference.strategy__area__huiller">strategy::area::huiller</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Centroid</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy_centroid">strategy_centroid</link></member>
- <member><link linkend="boost_geometry.reference.strategy__centroid___bashein_detmer">strategy::centroid_::bashein_detmer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__centroid___centroid_average">strategy::centroid_::centroid_average</link></member>
+ <member><link linkend="geometry.reference.strategy_centroid">strategy_centroid</link></member>
+ <member><link linkend="geometry.reference.strategy__centroid___bashein_detmer">strategy::centroid_::bashein_detmer</link></member>
+ <member><link linkend="geometry.reference.strategy__centroid___centroid_average">strategy::centroid_::centroid_average</link></member>
     </simplelist>
    </entry>
   </row>
@@ -451,10 +457,10 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Distance</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy__distance__projected_point">strategy::distance::projected_point</link></member>
- <member><link linkend="boost_geometry.reference.strategy__distance__pythagoras">strategy::distance::pythagoras</link></member>
- <member><link linkend="boost_geometry.reference.strategy__distance__cross_track">strategy::distance::cross_track</link></member>
- <member><link linkend="boost_geometry.reference.strategy__distance__haversine">strategy::distance::haversine</link></member>
+ <member><link linkend="geometry.reference.strategy__distance__projected_point">strategy::distance::projected_point</link></member>
+ <member><link linkend="geometry.reference.strategy__distance__pythagoras">strategy::distance::pythagoras</link></member>
+ <member><link linkend="geometry.reference.strategy__distance__cross_track">strategy::distance::cross_track</link></member>
+ <member><link linkend="geometry.reference.strategy__distance__haversine">strategy::distance::haversine</link></member>
     </simplelist>
    </entry>
   </row>
@@ -462,15 +468,15 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Side</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy__side__course">strategy::side::course</link></member>
- <member><link linkend="boost_geometry.reference.strategy__side__side_by_triangle">strategy::side::side_by_triangle</link></member>
- <member><link linkend="boost_geometry.reference.strategy__side__side_by_cross_track">strategy::side::side_by_cross_track</link></member>
+ <member><link linkend="geometry.reference.strategy__side__course">strategy::side::course</link></member>
+ <member><link linkend="geometry.reference.strategy__side__side_by_triangle">strategy::side::side_by_triangle</link></member>
+ <member><link linkend="geometry.reference.strategy__side__side_by_cross_track">strategy::side::side_by_cross_track</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Simplify</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy__simplify__douglas_peucker">strategy::simplify::douglas_peucker</link></member>
+ <member><link linkend="geometry.reference.strategy__simplify__douglas_peucker">strategy::simplify::douglas_peucker</link></member>
     </simplelist>
    </entry>
   </row>
@@ -478,20 +484,20 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Transform</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy__transform__inverse_transformer">strategy::inverse_transformer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__transform__map_transformer">strategy::map_transformer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__transform__ublas_transformer">strategy::ublas_transformer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__transform__translate_transformer">strategy::translate_transformer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__transform__scale_transformer">strategy::scale_transformer</link></member>
- <member><link linkend="boost_geometry.reference.strategy__transform__rotate_transformer">strategy::rotate_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__inverse_transformer">strategy::inverse_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__map_transformer">strategy::map_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__ublas_transformer">strategy::ublas_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__translate_transformer">strategy::translate_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__scale_transformer">strategy::scale_transformer</link></member>
+ <member><link linkend="geometry.reference.strategy__transform__rotate_transformer">strategy::rotate_transformer</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Within</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.strategy__within__winding">strategy::winding</link></member>
- <member><link linkend="boost_geometry.reference.strategy__within__crossings_multiply">strategy::crossings_multiply</link></member>
- <member><link linkend="boost_geometry.reference.strategy__within__franklin">strategy::franklin</link></member>
+ <member><link linkend="geometry.reference.strategy__within__winding">strategy::winding</link></member>
+ <member><link linkend="geometry.reference.strategy__within__crossings_multiply">strategy::crossings_multiply</link></member>
+ <member><link linkend="geometry.reference.strategy__within__franklin">strategy::franklin</link></member>
     </simplelist>
    </entry>
   </row>
@@ -518,29 +524,29 @@
    <entry valign="top">
     <bridgehead renderas="sect3">Add</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.add_point">add_point</link></member>
- <member><link linkend="boost_geometry.reference.add_value">add_value</link></member>
+ <member><link linkend="geometry.reference.arithmetic.add_point">add_point</link></member>
+ <member><link linkend="geometry.reference.arithmetic.add_value">add_value</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Subtract</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.subtract_point">subtract_point</link></member>
- <member><link linkend="boost_geometry.reference.subtract_value">subtract_value</link></member>
+ <member><link linkend="geometry.reference.arithmetic.subtract_point">subtract_point</link></member>
+ <member><link linkend="geometry.reference.arithmetic.subtract_value">subtract_value</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Multiply</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.multiply_point">multiply_point</link></member>
- <member><link linkend="boost_geometry.reference.multiply_value">multiply_value</link></member>
+ <member><link linkend="geometry.reference.arithmetic.multiply_point">multiply_point</link></member>
+ <member><link linkend="geometry.reference.arithmetic.multiply_value">multiply_value</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
     <bridgehead renderas="sect3">Divide</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.divide_point">divide_point</link></member>
- <member><link linkend="boost_geometry.reference.divide_value">divide_value</link></member>
+ <member><link linkend="geometry.reference.arithmetic.divide_point">divide_point</link></member>
+ <member><link linkend="geometry.reference.arithmetic.divide_value">divide_value</link></member>
     </simplelist>
    </entry>
   </row>
@@ -548,8 +554,8 @@
    <entry valign="center" namest="a" nameend="d">
     <bridgehead renderas="sect3">Products</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="boost_geometry.reference.cross_product">cross_product</link></member>
- <member><link linkend="boost_geometry.reference.dot_product">dot_product</link></member>
+ <member><link linkend="geometry.reference.arithmetic.cross_product">cross_product</link></member>
+ <member><link linkend="geometry.reference.arithmetic.dot_product">dot_product</link></member>
     </simplelist>
    </entry>
   </row>

Modified: trunk/libs/geometry/doc/reference.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference.qbk (original)
+++ trunk/libs/geometry/doc/reference.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -6,6 +6,14 @@
 [include reference/area.qbk]
 [endsect]
 
+[section:assign assign]
+[include reference/assign.qbk]
+[endsect]
+[section:append append]
+[include reference/append.qbk]
+[endsect]
+
+
 [section:buffer buffer]
 [include reference/buffer.qbk]
 [endsect]
@@ -14,6 +22,10 @@
 [include reference/centroid.qbk]
 [endsect]
 
+[section:clear clear]
+[include reference/clear.qbk]
+[endsect]
+
 [section:combine combine]
 [include reference/combine.qbk]
 [endsect]
@@ -67,6 +79,10 @@
 [include reference/length.qbk]
 [endsect]
 
+[section:make make]
+[include reference/make.qbk]
+[endsect]
+
 [include reference/num_points.qbk]
 
 [section:overlaps overlaps]
@@ -102,14 +118,38 @@
 [include reference/within.qbk]
 [endsect]
 
-
 [endsect] [/algorithms]
 
+[section:access Access Functions]
+
+[section:exterior_ring exterior_ring]
+[include reference/exterior_ring.qbk]
+[endsect]
+
+[include reference/get.qbk]
+
+[section:interior_rings interior_rings]
+[include reference/interior_rings.qbk]
+[endsect]
+
+[include reference/num_points.qbk]
+[include reference/num_interior_rings.qbk]
+[include reference/set.qbk]
+
+
+[endsect] [/access functions]
 
 
 [section:concepts Concepts]
 [include concept/point.qbk]
+[include concept/linestring.qbk]
+[include concept/polygon.qbk]
+[include concept/multi_point.qbk]
+[include concept/multi_linestring.qbk]
+[include concept/multi_polygon.qbk]
 [include concept/box.qbk]
+[include concept/ring.qbk]
+[include concept/segment.qbk]
 [endsect]
 
 
@@ -117,19 +157,29 @@
 
 [include reference/point.qbk]
 [include reference/point_xy.qbk]
+[include reference/linestring.qbk]
+[include reference/polygon.qbk]
+[include reference/multi_point.qbk]
+[include reference/multi_linestring.qbk]
+[include reference/multi_polygon.qbk]
+[include reference/box.qbk]
+[include reference/ring.qbk]
+[include reference/segment.qbk]
+[endsect]
 
-[section:register register (adaptation)]
+[section:register Adaption and adapted models]
 [include reference/register.qbk]
 [endsect]
 
-[endsect]
 
 
 [section:iterators Iterators]
-
 [include reference/closing_iterator.qbk]
+[endsect]
 
-
+[section:arithmetic Arithmetic]
+[include reference/arithmetic.qbk]
 [endsect]
 
+
 [endsect] [/reference]

Added: trunk/libs/geometry/doc/reference/append.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/append.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,33 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__append.xml]
+[section:append append]
+
+Appends one or more points to a linestring, ring, polygon, multi.
+
+[heading Synopsis]
+``template<typename Geometry, typename RoP>
+void append (Geometry &geometry, RoP const &range_or_point, int ring_index=-1, int multi_index=0)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] [a geometry ]]
+[[RoP const &] [] [range_or_point] [the point or range to add ]]
+[[int] [] [ring_index] [the index of the ring in case of a polygon: exterior ring (-1, the default) or interior ring index ]]
+[[int] [] [multi_index] [reserved for multi polygons ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/append.hpp>`
+
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/area.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/area.qbk (original)
+++ trunk/libs/geometry/doc/reference/area.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__area.xml]
-[section:area_2 area (with strategy)]
+[section:area_2_with_strategy area (with strategy)]
 
 Calculates the area of a geometry using the specified strategy.
 
@@ -24,6 +24,12 @@
 The calculated area
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/area.hpp>`
 
 [heading Behavior]
@@ -74,6 +80,12 @@
 The calculated area
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/area.hpp>`
 
 [heading Behavior]

Added: trunk/libs/geometry/doc/reference/arithmetic.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/arithmetic.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,307 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__arithmetic.xml]
+[section:add_point add_point]
+
+Adds a point to another.
+
+[heading Description]
+The coordinates of the second point will be added to those of the first point. The second point is not modified.
+
+[heading Synopsis]
+``template<typename Point1, typename Point2>
+void add_point (Point1 &p1, Point2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point1 &] [] [p1] [first point ]]
+[[Point2 const &] [] [p2] [second point ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:add_value add_value]
+
+Adds a value to each coordinate of a point.
+
+[heading Synopsis]
+``template<typename Point>
+void add_value (Point &p, typename detail::param< Point >::type value)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point &] [] [p] [point ]]
+[[typename detail::param< Point >::type] [] [value] [value to add ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:cross_product cross_product]
+
+Computes the cross product of two vector.
+
+[heading Description]
+Both vectors shall be of the same type. This type also determines type of result vector.
+
+[heading Synopsis]
+``template<typename P1, typename P2>
+P1 cross_product (P1 const &p1, P2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[P1 const &] [] [p1] [first vector ]]
+[[P2 const &] [] [p2] [second vector ]]
+]
+
+
+[heading Returns]
+the cross product vector
+
+[heading Header]
+`#include <boost/geometry/arithmetic/cross_product.hpp>`
+
+
+[endsect]
+
+[section:divide_point divide_point]
+
+Divides a point by another.
+
+[heading Description]
+The coordinates of the second point will be divided by those of the first point. The second point is not modified.
+
+[heading Synopsis]
+``template<typename Point1, typename Point2>
+void divide_point (Point1 &p1, Point2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point1 &] [] [p1] [first point ]]
+[[Point2 const &] [] [p2] [second point ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:divide_value divide_value]
+
+Divides each coordinate of a point by a value.
+
+[heading Synopsis]
+``template<typename Point>
+void divide_value (Point &p, typename detail::param< Point >::type value)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point &] [] [p] [point ]]
+[[typename detail::param< Point >::type] [] [value] [value to divide by ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:dot_product dot_product]
+
+Computes the dot product (or scalar product) of 2 vectors (points).
+
+[heading Synopsis]
+``template<typename P1, typename P2>
+select_coordinate_type<P1, P2>::type dot_product (P1 const &p1, P2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[P1 const &] [] [p1] [first point ]]
+[[P2 const &] [] [p2] [second point ]]
+]
+
+
+[heading Returns]
+the dot product
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/dot_product.hpp>`
+
+
+[endsect]
+
+[section:multiply_point multiply_point]
+
+Multiplies a point by another.
+
+[heading Description]
+The coordinates of the second point will be multiplied by those of the first point. The second point is not modified.
+
+[heading Synopsis]
+``template<typename Point1, typename Point2>
+void multiply_point (Point1 &p1, Point2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point1 &] [] [p1] [first point ]]
+[[Point2 const &] [] [p2] [second point ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:multiply_value multiply_value]
+
+Multiplies each coordinate of a point by a value.
+
+[heading Synopsis]
+``template<typename Point>
+void multiply_value (Point &p, typename detail::param< Point >::type value)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point &] [] [p] [point ]]
+[[typename detail::param< Point >::type] [] [value] [value to multiply by ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:subtract_point subtract_point]
+
+Subtracts a point to another.
+
+[heading Description]
+The coordinates of the second point will be subtracted to those of the first point. The second point is not modified.
+
+[heading Synopsis]
+``template<typename Point1, typename Point2>
+void subtract_point (Point1 &p1, Point2 const &p2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point1 &] [] [p1] [first point ]]
+[[Point2 const &] [] [p2] [second point ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+
+[section:subtract_value subtract_value]
+
+Subtracts a value to each coordinate of a point.
+
+[heading Synopsis]
+``template<typename Point>
+void subtract_value (Point &p, typename detail::param< Point >::type value)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Point &] [] [p] [point ]]
+[[typename detail::param< Point >::type] [] [value] [value to subtract ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/arithmetic/arithmetic.hpp>`
+
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/assign.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/assign.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,310 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__assign.xml]
+[section:assign_2 assign]
+
+assign a range of points to a linestring, ring or polygon
+
+[heading Synopsis]
+``template<typename Geometry, typename Range>
+void assign (Geometry &geometry, Range const &range)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+[[Range const &] [] [range] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_5 assign]
+
+assign center + radius to a sphere [for extension]
+
+[heading Synopsis]
+``template<typename Geometry, typename Type>
+void assign (Geometry &geometry, Type const &c1, Type const &c2, Type const &c3, Type const &c4)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+[[Type const &] [] [c1] []]
+[[Type const &] [] [c2] []]
+[[Type const &] [] [c3] []]
+[[Type const &] [] [c4] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_4 assign]
+
+assign three values to a 3D point [or the center + radius to a circle]
+
+[heading Synopsis]
+``template<typename Geometry, typename Type>
+void assign (Geometry &geometry, Type const &c1, Type const &c2, Type const &c3)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+[[Type const &] [] [c1] []]
+[[Type const &] [] [c2] []]
+[[Type const &] [] [c3] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_3 assign]
+
+assign two values to a 2D point
+
+[heading Synopsis]
+``template<typename Geometry, typename Type>
+void assign (Geometry &geometry, Type const &c1, Type const &c2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+[[Type const &] [] [c1] []]
+[[Type const &] [] [c2] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_box_corners assign_box_corners]
+
+Assign the 4 points of a 2D box.
+
+[heading Synopsis]
+``template<typename Box, typename Point>
+void assign_box_corners (Box const &box, Point &lower_left, Point &lower_right, Point &upper_left, Point &upper_right)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Box const &] [] [box] []]
+[[Point &] [] [lower_left] []]
+[[Point &] [] [lower_right] []]
+[[Point &] [] [upper_left] []]
+[[Point &] [] [upper_right] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_inverse assign_inverse]
+
+assign to a box inverse infinite
+
+[heading Description]
+The assign_inverse function initialize a 2D or 3D box with large coordinates, the min corner is very large, the max corner is very small. This is a convenient starting point to collect the minimum bounding box of a geometry.
+
+[heading Synopsis]
+``template<typename Geometry>
+void assign_inverse (Geometry &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_point_from_index assign_point_from_index]
+
+Assign a point with a point of a box or segment.
+
+[heading Synopsis]
+``template<std::size_t Index, typename Point, typename Geometry>
+void assign_point_from_index (Geometry const &geometry, Point &point)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Index] [indicates which box-corner, min_corner (0) or max_corner (1) or which point of segment (0/1) ] [ - ] [Must be specified]]
+[[Geometry const &] [] [geometry] []]
+[[Point &] [] [point] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_point_to_index assign_point_to_index]
+
+Assign a box or segment with the value of a point.
+
+[heading Synopsis]
+``template<std::size_t Index, typename Geometry, typename Point>
+void assign_point_to_index (Point const &point, Geometry &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Index] [indicates which box-corner, min_corner (0) or max_corner (1) or which point of segment (0/1) ] [ - ] [Must be specified]]
+[[Point const &] [] [point] []]
+[[Geometry &] [] [geometry] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:assign_zero assign_zero]
+
+assign zero values to a box, point
+
+[heading Description]
+The assign_zero function initializes a 2D or 3D point or box with coordinates of zero
+
+[heading Synopsis]
+``template<typename Geometry>
+void assign_zero (Geometry &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [the geometry type ] [geometry] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/assign.hpp>`
+
+
+[endsect]
+
+[section:copy_coordinates copy_coordinates]
+
+Copies coordinates from source to destination point.
+
+[heading Description]
+The function copy_coordinates copies coordinates from one point to another point. Source point and destination point might be of different types.
+
+[heading Synopsis]
+``template<typename Src, typename Dst>
+void copy_coordinates (Src const &source, Dst &dest)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Src const &] [] [source] [Source point ]]
+[[Dst &] [] [dest] [Destination point ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/util/copy.hpp>`
+
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/box.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/box.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,82 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1box.xml]
+[section:model_box model::box]
+
+[heading Description]
+Box is always described by a
+
+[heading Synopsis]
+``template<typename Point>
+class model::box
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename Point] [point type. The box takes a point type as template parameter. The point type can be any point type. It can be 2D but can also be 3D or more dimensional. The box can also take a latlong point type as template parameter. ]]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``box ()``
+
+] [] [
+
+
+]]
+[[``box (Point const &min_corner, Point const &max_corner)``
+
+] [Constructor taking the minimum corner point and the maximum corner point. ] [[* Point const &]: ['min_corner]:
+
+[* Point const &]: ['max_corner]:
+
+
+
+
+]]
+]
+
+[heading Member Function(s)]
+[table
+[[Function] [Description] [Parameters] [Returns] ]
+[[``Point const & min_corner () const ``
+
+] [] [
+
+
+]]
+[[``Point const & max_corner () const ``
+
+] [] [
+
+
+]]
+[[``Point & min_corner ()``
+
+] [] [
+
+
+]]
+[[``Point & max_corner ()``
+
+] [] [
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/box.hpp>`
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/buffer.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/buffer.qbk (original)
+++ trunk/libs/geometry/doc/reference/buffer.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -23,6 +23,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/buffer.hpp>`
 
 [heading Behavior]
@@ -62,6 +68,12 @@
 The calculated buffer
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/buffer.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/centroid.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/centroid.qbk (original)
+++ trunk/libs/geometry/doc/reference/centroid.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/centroid.hpp>`
 
 [heading Behavior]
@@ -39,7 +45,7 @@
 
 [endsect]
 
-[section:centroid_3 centroid (with strategy)]
+[section:centroid_3_with_strategy centroid (with strategy)]
 
 Calculates the centroid of a geometry using the specified strategy.
 
@@ -61,12 +67,18 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/centroid.hpp>`
 
 
 [endsect]
 
-[section:make_centroid_2 make_centroid (with strategy)]
+[section:make_centroid_2_with_strategy make_centroid (with strategy)]
 
 Calculates the centroid of a geometry using the specified strategy.
 
@@ -91,6 +103,12 @@
 The calculated centroid
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/centroid.hpp>`
 
 
@@ -120,6 +138,12 @@
 The calculated centroid
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/centroid.hpp>`
 
 

Added: trunk/libs/geometry/doc/reference/clear.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/clear.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,33 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__clear.xml]
+[section:clear clear]
+
+Clears a linestring, linear ring or polygon (exterior+interiors) or multi*.
+
+[heading Description]
+Generic function to clear a geometry
+
+[heading Synopsis]
+``template<typename Geometry>
+void clear (Geometry &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry &] [] [geometry] []]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/clear.hpp>`
+
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/convert.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/convert.qbk (original)
+++ trunk/libs/geometry/doc/reference/convert.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/convert.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/convex_hull.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/convex_hull.qbk (original)
+++ trunk/libs/geometry/doc/reference/convex_hull.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/convex_hull.hpp>`
 
 
@@ -45,6 +51,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/convex_hull.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/difference.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/difference.qbk (original)
+++ trunk/libs/geometry/doc/reference/difference.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -22,6 +22,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/difference.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/distance.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/distance.qbk (original)
+++ trunk/libs/geometry/doc/reference/distance.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -53,12 +53,18 @@
 The calculated distance
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/distance.hpp>`
 
 
 [endsect]
 
-[section:distance_3 distance (with strategy)]
+[section:distance_3_with_strategy distance (with strategy)]
 
 Calculate the distance of two geometries using the specified strategy.
 
@@ -83,6 +89,12 @@
 The calculated distance
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/distance.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/envelope.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/envelope.qbk (original)
+++ trunk/libs/geometry/doc/reference/envelope.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/envelope.hpp>`
 
 
@@ -50,6 +56,12 @@
 The calculated envelope
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/envelope.hpp>`
 
 

Added: trunk/libs/geometry/doc/reference/exterior_ring.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/exterior_ring.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,65 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__exterior__ring.xml]
+[section:exterior_ring_1_const_version exterior_ring (const version)]
+
+Function to get the exterior ring of a polygon (const version).
+
+[heading Synopsis]
+``template<typename Polygon>
+ring_return_type<Polygon const>::type exterior_ring (Polygon const &polygon)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Polygon const &] [polygon type ] [polygon] [the polygon to get the exterior ring from ]]
+]
+
+
+[heading Returns]
+a const reference to the exterior ring
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/exterior_ring.hpp>`
+
+
+[endsect]
+
+[section:exterior_ring_1 exterior_ring]
+
+Function to get the exterior_ring ring of a polygon.
+
+[heading Synopsis]
+``template<typename Polygon, >
+ring_return_type<Polygon>::type exterior_ring (Polygon &polygon)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[P] [polygon type ] [ - ] [Must be specified]]
+[[Polygon &] [] [polygon] [the polygon to get the exterior ring from ]]
+]
+
+
+[heading Returns]
+a reference to the exterior ring
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/exterior_ring.hpp>`
+
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/for_each.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/for_each.qbk (original)
+++ trunk/libs/geometry/doc/reference/for_each.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/for_each.hpp>`
 
 
@@ -47,6 +53,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/for_each.hpp>`
 
 
@@ -73,6 +85,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/for_each.hpp>`
 
 
@@ -99,6 +117,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/for_each.hpp>`
 
 

Added: trunk/libs/geometry/doc/reference/get.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/get.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,34 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__get.xml]
+[section:get get]
+
+get coordinate value of a Point ( / Sphere)
+
+[heading Synopsis]
+``template<std::size_t Dimension, typename Geometry>
+coordinate_type<Geometry>::type get (Geometry const &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Dimension] [dimension ] [ - ] [Must be specified]]
+[[Geometry const &] [geometry ] [geometry] [geometry to query coordinate value from ]]
+]
+
+
+[heading Returns]
+coordinate value
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/access.hpp>`
+
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/interior_rings.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/interior_rings.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,64 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__interior__rings.xml]
+[section:interior_rings_1_const_version interior_rings (const version)]
+
+Function to get the interior rings of a polygon (const version).
+
+[heading Synopsis]
+``template<typename Polygon>
+interior_return_type<Polygon const>::type interior_rings (Polygon const &polygon)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Polygon const &] [polygon type ] [polygon] [the polygon to get the interior rings from ]]
+]
+
+
+[heading Returns]
+the interior rings (possibly a const reference)
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/interior_rings.hpp>`
+
+
+[endsect]
+
+[section:interior_rings_1 interior_rings]
+
+Function to get the interior rings of a polygon (non const version).
+
+[heading Synopsis]
+``template<typename Polygon>
+interior_return_type<Polygon>::type interior_rings (Polygon &polygon)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Polygon &] [polygon type ] [polygon] [the polygon to get the interior rings from ]]
+]
+
+
+[heading Returns]
+the interior rings (possibly a reference)
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/interior_rings.hpp>`
+
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/intersection.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/intersection.qbk (original)
+++ trunk/libs/geometry/doc/reference/intersection.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -23,6 +23,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/intersection.hpp>`
 
 [heading Behavior]
@@ -84,7 +90,7 @@
 
 [endsect]
 
-[section:intersection_inserter_4 intersection_inserter (with strategy)]
+[section:intersection_inserter_4_with_strategy intersection_inserter (with strategy)]
 
 Calculate the intersection of two geometries using the specified strategy.
 

Modified: trunk/libs/geometry/doc/reference/intersects.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/intersects.qbk (original)
+++ trunk/libs/geometry/doc/reference/intersects.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__intersects.xml]
-[section:intersects_2 intersects (two geometries)]
+[section:intersects_2_two_geometries intersects (two geometries)]
 
 Checks if two geometries have at least one intersection.
 
@@ -21,6 +21,12 @@
 Returns true if two geometries intersect each other
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/intersects.hpp>`
 
 [heading Examples]
@@ -30,7 +36,7 @@
 
 [endsect]
 
-[section:intersects_1 intersects (one geometry)]
+[section:intersects_1_one_geometry intersects (one geometry)]
 
 Checks if a geometry has at least one intersection (crossing or self-tangency).
 
@@ -50,6 +56,12 @@
 Returns true if the geometry is self-intersecting
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/intersects.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/length.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/length.qbk (original)
+++ trunk/libs/geometry/doc/reference/length.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__length.xml]
-[section:length_2 length (with strategy)]
+[section:length_2_with_strategy length (with strategy)]
 
 Calculates the length of a geometry using the specified strategy.
 
@@ -24,6 +24,12 @@
 The calculated length
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/length.hpp>`
 
 [heading Behavior]
@@ -67,6 +73,12 @@
 The calculated length
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/length.hpp>`
 
 [heading Behavior]

Added: trunk/libs/geometry/doc/reference/linestring.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/linestring.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,31 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1linestring.xml]
+[section:model_linestring model::linestring]
+
+[heading Synopsis]
+``template<typename P, template< typename, typename > class V, template< typename > class A>
+class model::linestring
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename P] [point type ]]
+[[template< typename, typename > class V] [optional container type, for example std::vector, std::list, std::deque ]]
+[[template< typename > class A] [optional container-allocator-type (see ]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/linestring.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/make.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/make.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,141 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__make.xml]
+[section:make_3 make]
+
+Make a geometry.
+
+[heading Synopsis]
+``template<typename Geometry, typename T>
+Geometry make (T const &c1, T const &c2, T const &c3)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [] [ - ] [Must be specified]]
+[[T const &] [] [c1] []]
+[[T const &] [] [c2] []]
+[[T const &] [] [c3] []]
+]
+
+
+[heading Returns]
+a 3D point
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/make.hpp>`
+
+
+[endsect]
+
+[section:make_2 make]
+
+Make a geometry.
+
+[heading Description]
+the Generic Geometry Library uses concepts for all its geometries. Therefore it does not rely on constructors. The "make" functions are object generators creating geometries. There are overloads with two, three, four or six values, which are implemented depending on the geometry specified.
+
+[heading Synopsis]
+``template<typename Geometry, typename T, >
+Geometry make (T const &c1, T const &c2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [] [ - ] [Must be specified]]
+[[G] [the geometry type ] [ - ] [Must be specified]]
+[[T const &] [the coordinate type ] [c1] []]
+[[T const &] [the coordinate type ] [c2] []]
+]
+
+
+[heading Returns]
+the geometry
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/make.hpp>`
+
+
+[endsect]
+
+[section:make_inverse make_inverse]
+
+Create a box with inverse infinite coordinates.
+
+[heading Description]
+The make_inverse function initialize a 2D or 3D box with large coordinates, the min corner is very large, the max corner is very small
+
+[heading Synopsis]
+``template<typename Geometry>
+Geometry make_inverse ()``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [the geometry type ] [ - ] [Must be specified]]
+]
+
+
+[heading Returns]
+the box
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/make.hpp>`
+
+
+[endsect]
+
+[section:make_zero make_zero]
+
+Create a geometry with "zero" coordinates.
+
+[heading Description]
+The make_zero function initializes a 2D or 3D point or box with coordinates of zero
+
+[heading Synopsis]
+``template<typename Geometry>
+Geometry make_zero ()``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [the geometry type ] [ - ] [Must be specified]]
+]
+
+
+[heading Returns]
+the geometry
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/algorithms/make.hpp>`
+
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/multi_linestring.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/multi_linestring.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,34 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1multi__linestring.xml]
+[section:model_multi_linestring model::multi_linestring]
+
+[heading Description]
+Multi-linestring can be used to group lines belonging to each other, e.g. a highway (with interruptions)
+
+[heading Synopsis]
+``template<typename L, template< typename, typename > class V, template< typename > class A>
+class model::multi_linestring
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename L] []]
+[[template< typename, typename > class V] []]
+[[template< typename > class A] []]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/multi/multi.hpp>`
+
+Or
+
+`#include <boost/geometry/multi/geometries/multi_linestring.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/multi_point.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/multi_point.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,34 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1multi__point.xml]
+[section:model_multi_point model::multi_point]
+
+[heading Description]
+Multipoint can be used to group points belonging to each other, e.g. a constellation
+
+[heading Synopsis]
+``template<typename P, template< typename, typename > class V, template< typename > class A>
+class model::multi_point
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename P] []]
+[[template< typename, typename > class V] []]
+[[template< typename > class A] []]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/multi/multi.hpp>`
+
+Or
+
+`#include <boost/geometry/multi/geometries/multi_point.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/multi_polygon.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/multi_polygon.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,34 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1multi__polygon.xml]
+[section:model_multi_polygon model::multi_polygon]
+
+[heading Description]
+Multi-polygon can be used to group polygons belonging to each other, e.g. Hawaii
+
+[heading Synopsis]
+``template<typename P, template< typename, typename > class V, template< typename > class A>
+class model::multi_polygon
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename P] []]
+[[template< typename, typename > class V] []]
+[[template< typename > class A] []]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/multi/multi.hpp>`
+
+Or
+
+`#include <boost/geometry/multi/geometries/multi_polygon.hpp>`
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/num_geometries.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/num_geometries.qbk (original)
+++ trunk/libs/geometry/doc/reference/num_geometries.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -23,6 +23,12 @@
 The calculated number of geometries
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/core/num_geometries.hpp>`
 
 [heading Behavior]

Modified: trunk/libs/geometry/doc/reference/num_interior_rings.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/num_interior_rings.qbk (original)
+++ trunk/libs/geometry/doc/reference/num_interior_rings.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -23,6 +23,12 @@
 The calculated number of interior rings
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/core/interior_rings.hpp>`
 
 [heading Behavior]

Modified: trunk/libs/geometry/doc/reference/num_points.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/num_points.qbk (original)
+++ trunk/libs/geometry/doc/reference/num_points.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -24,6 +24,12 @@
 The calculated number of points
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/num_points.hpp>`
 
 [heading Behavior]

Modified: trunk/libs/geometry/doc/reference/perimeter.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/perimeter.qbk (original)
+++ trunk/libs/geometry/doc/reference/perimeter.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__perimeter.xml]
-[section:perimeter_2 perimeter (with strategy)]
+[section:perimeter_2_with_strategy perimeter (with strategy)]
 
 Calculates the perimeter of a geometry using the specified strategy.
 
@@ -24,6 +24,12 @@
 The calculated perimeter
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/perimeter.hpp>`
 
 [heading Behavior]
@@ -64,6 +70,12 @@
 The calculated perimeter
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/perimeter.hpp>`
 
 [heading Behavior]

Modified: trunk/libs/geometry/doc/reference/point.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/point.qbk (original)
+++ trunk/libs/geometry/doc/reference/point.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,2 +1,84 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
-[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1point.xml]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1point.xml]
+[section:model_point model::point]
+
+[heading Description]
+Defines a neutral point class, fulfilling the Point Concept. Library users can use this point class, or use their own point classes. This point class is used in most of the samples and tests of Boost.Geometry This point class is used occasionally within the library, where a temporary point class is necessary.
+
+[heading Synopsis]
+``template<typename CoordinateType, std::size_t DimensionCount, typename CoordinateSystem>
+class model::point
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename CoordinateType] [Numerical type (int, double, ttmath, ...) ]]
+[[std::size_t DimensionCount] [number of coordinates, usually 2 or 3 ]]
+[[typename CoordinateSystem] [coordinate system, for example ]]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``point ()``
+
+] [Default constructor, no initialization. ] [
+
+
+]]
+[[``point (CoordinateType const &v0, CoordinateType const &v1=0, CoordinateType const &v2=0)``
+
+] [Constructor to set one, two or three values. ] [[* CoordinateType const &]: ['v0]:
+
+[* CoordinateType const &]: ['v1]:
+
+[* CoordinateType const &]: ['v2]:
+
+
+
+
+]]
+]
+
+[heading Member Function(s)]
+[table
+[[Function] [Description] [Parameters] [Returns] ]
+[[``template<std::size_t K>
+CoordinateType const & get () const ``
+
+] [Get a coordinate. ] [
+
+][
+the coordinate
+
+
+]]
+[[``template<std::size_t K>
+void set (CoordinateType const &value)``
+
+] [Set a coordinate. ] [[* CoordinateType const &]: ['value]: value to set
+
+
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/point.hpp>`
+
+[heading Examples]
+[point]
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/point_xy.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/point_xy.qbk (original)
+++ trunk/libs/geometry/doc/reference/point_xy.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,2 +1,85 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
-[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1point__xy.xml]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1d2_1_1point__xy.xml]
+[section:model_d2_point_xy model::d2::point_xy]
+
+[heading Synopsis]
+``template<typename CoordinateType, typename CoordinateSystem, >
+class model::d2::point_xy
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename CoordinateType] []]
+[[typename CoordinateSystem] []]
+[[] [numeric type, arguments can be, for example, double, float, int ]]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``point_xy ()``
+
+] [Default constructor, does not initialize anything. ] [
+
+
+]]
+[[``point_xy (CoordinateType const &x, CoordinateType const &y)``
+
+] [Constructor with x/y values. ] [[* CoordinateType const &]: ['x]:
+
+[* CoordinateType const &]: ['y]:
+
+
+
+
+]]
+]
+
+[heading Member Function(s)]
+[table
+[[Function] [Description] [Parameters] [Returns] ]
+[[``CoordinateType const & x () const ``
+
+] [Get x-value. ] [
+
+
+]]
+[[``CoordinateType const & y () const ``
+
+] [Get y-value. ] [
+
+
+]]
+[[``void x (CoordinateType const &v)``
+
+] [Set x-value. ] [[* CoordinateType const &]: ['v]:
+
+
+
+
+]]
+[[``void y (CoordinateType const &v)``
+
+] [Set y-value. ] [[* CoordinateType const &]: ['v]:
+
+
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/point_xy.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/polygon.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/polygon.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,71 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1polygon.xml]
+[section:model_polygon model::polygon]
+
+[heading Synopsis]
+``template<typename Point, bool ClockWise, bool Closed, template< typename, typename > class PointList, template< typename, typename > class RingList, template< typename > class PointAlloc, template< typename > class RingAlloc, >
+class model::polygon
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename Point] []]
+[[bool ClockWise] [optional parameter, true for clockwise direction, false for CounterClockWise direction ]]
+[[bool Closed] [optional parameter, true for closed polygons (last point == first point), false open points ]]
+[[template< typename, typename > class PointList] [optional container type for points, for example std::vector, std::list, std::deque ]]
+[[template< typename, typename > class RingList] [optional container type for inner rings, for example std::vector, std::list, std::deque ]]
+[[template< typename > class PointAlloc] [container-allocator-type ]]
+[[template< typename > class RingAlloc] [container-allocator-type ]]
+[[] [point type ]]
+]
+
+[heading Member Function(s)]
+[table
+[[Function] [Description] [Parameters] [Returns] ]
+[[`` const & outer () const ``
+
+] [] [
+
+
+]]
+[[`` const & inners () const ``
+
+] [] [
+
+
+]]
+[[`` & outer ()``
+
+] [] [
+
+
+]]
+[[`` & inners ()``
+
+] [] [
+
+
+]]
+[[``void clear ()``
+
+] [Utility method, clears outer and inner rings. ] [
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/polygon.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/referring_segment.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/referring_segment.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,47 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1referring__segment.xml]
+[section:model_referring_segment model::referring_segment]
+
+[heading Description]
+From Wikipedia: In geometry, a line segment is a part of a line that is bounded by two distinct end points, and contains every point on the line between its end points.
+
+[heading Synopsis]
+``template<typename ConstOrNonConstPoint>
+class model::referring_segment
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename ConstOrNonConstPoint] [point type of the segment, maybe a point or a const point ]]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``referring_segment (point_type &p1, point_type &p2)``
+
+] [] [[* &]: ['p1]:
+
+[* &]: ['p2]:
+
+
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/segment.hpp>`
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/register.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/register.qbk (original)
+++ trunk/libs/geometry/doc/reference/register.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__register.xml]
-[section:BOOST_GEOMETRY_REGISTER_POINT_2D BOOST_GEOMETRY_REGISTER_POINT_2D]
+[section:boost_geometry_register_point_2d BOOST_GEOMETRY_REGISTER_POINT_2D]
 
 Macro to register a 2D point type.
 
@@ -33,7 +33,7 @@
 
 [endsect]
 
-[section:BOOST_GEOMETRY_REGISTER_POINT_2D_CONST BOOST_GEOMETRY_REGISTER_POINT_2D_CONST]
+[section:boost_geometry_register_point_2d_const BOOST_GEOMETRY_REGISTER_POINT_2D_CONST]
 
 Macro to register a 2D point type (const version).
 
@@ -61,7 +61,7 @@
 
 [endsect]
 
-[section:BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET]
+[section:boost_geometry_register_point_2d_get_set BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET]
 
 Macro to register a 2D point type (having separate get/set methods).
 
@@ -91,7 +91,7 @@
 
 [endsect]
 
-[section:BOOST_GEOMETRY_REGISTER_POINT_3D BOOST_GEOMETRY_REGISTER_POINT_3D]
+[section:boost_geometry_register_point_3d BOOST_GEOMETRY_REGISTER_POINT_3D]
 
 Macro to register a 3D point type.
 
@@ -120,7 +120,7 @@
 
 [endsect]
 
-[section:BOOST_GEOMETRY_REGISTER_POINT_3D_CONST BOOST_GEOMETRY_REGISTER_POINT_3D_CONST]
+[section:boost_geometry_register_point_3d_const BOOST_GEOMETRY_REGISTER_POINT_3D_CONST]
 
 Macro to register a 3D point type (const version).
 
@@ -149,7 +149,7 @@
 
 [endsect]
 
-[section:BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET]
+[section:boost_geometry_register_point_3d_get_set BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET]
 
 Macro to register a 3D point type (having separate get/set methods).
 

Modified: trunk/libs/geometry/doc/reference/reverse.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/reverse.qbk (original)
+++ trunk/libs/geometry/doc/reference/reverse.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -17,6 +17,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/reverse.hpp>`
 
 

Added: trunk/libs/geometry/doc/reference/ring.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/ring.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,33 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1linear__ring.xml]
+[section:model_linear_ring model::linear_ring]
+
+[heading Synopsis]
+``template<typename Point, bool ClockWise, bool Closed, template< typename, typename > class Container, template< typename > class Allocator>
+class model::linear_ring
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename Point] [point type ]]
+[[bool ClockWise] []]
+[[bool Closed] []]
+[[template< typename, typename > class Container] [optional container type, for example std::vector, std::list, std::deque ]]
+[[template< typename > class Allocator] [optional container-allocator-type ]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/linear_ring.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/segment.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/segment.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,53 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/classboost_1_1geometry_1_1model_1_1segment.xml]
+[section:model_segment model::segment]
+
+[heading Description]
+From Wikipedia: In geometry, a line segment is a part of a line that is bounded by two distinct end points, and contains every point on the line between its end points.
+
+[heading Synopsis]
+``template<typename Point>
+class model::segment
+{
+ // ...
+};
+``
+
+[heading Template parameter(s)]
+[table
+[[Parameter] [Description]]
+[[typename Point] []]
+]
+
+[heading Constructor(s)]
+[table
+[[Function] [Description] [Parameters] ]
+[[``segment ()``
+
+] [] [
+
+
+]]
+[[``segment (Point const &p1, Point const &p2)``
+
+] [] [[* Point const &]: ['p1]:
+
+[* Point const &]: ['p2]:
+
+
+
+
+]]
+]
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometries/geometries.hpp>`
+
+Or
+
+`#include <boost/geometry/geometries/segment.hpp>`
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/set.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/set.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,32 @@
+[/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
+[/ Generated from doxy/doxygen_output/xml/group__set.xml]
+[section:set set]
+
+set coordinate value of a Point ( / Sphere)
+
+[heading Synopsis]
+``template<std::size_t Dimension, typename Geometry>
+void set (Geometry &geometry, typename coordinate_type< Geometry >::type const &value)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Dimension] [dimension ] [ - ] [Must be specified]]
+[[Geometry &] [geometry ] [geometry] [geometry to assign coordinate to ]]
+[[typename coordinate_type< Geometry >::type const &] [] [value] [coordinate value to assign ]]
+]
+
+
+[heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
+`#include <boost/geometry/core/access.hpp>`
+
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/reference/simplify.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/simplify.qbk (original)
+++ trunk/libs/geometry/doc/reference/simplify.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -19,12 +19,18 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/simplify.hpp>`
 
 
 [endsect]
 
-[section:simplify_4 simplify (with strategy)]
+[section:simplify_4_with_strategy simplify (with strategy)]
 
 Simplify a geometry using a specified strategy.
 
@@ -44,6 +50,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/simplify.hpp>`
 
 [heading Image(s)]
@@ -70,12 +82,18 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/simplify.hpp>`
 
 
 [endsect]
 
-[section:simplify_inserter_4 simplify_inserter (with strategy)]
+[section:simplify_inserter_4_with_strategy simplify_inserter (with strategy)]
 
 Simplify a geometry, using an output iterator and a specified strategy.
 
@@ -95,6 +113,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/simplify.hpp>`
 
 [heading Examples]

Modified: trunk/libs/geometry/doc/reference/sym_difference.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/sym_difference.qbk (original)
+++ trunk/libs/geometry/doc/reference/sym_difference.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -19,6 +19,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/sym_difference.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/transform.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/transform.qbk (original)
+++ trunk/libs/geometry/doc/reference/transform.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -21,6 +21,12 @@
 true if the transformation could be done
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/transform.hpp>`
 
 
@@ -45,6 +51,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/transform.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/union.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/union.qbk (original)
+++ trunk/libs/geometry/doc/reference/union.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -19,6 +19,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/union.hpp>`
 
 
@@ -47,6 +53,12 @@
 the output iterator
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/union.hpp>`
 
 
@@ -76,6 +88,12 @@
 the output iterator
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/union.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/unique.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/unique.qbk (original)
+++ trunk/libs/geometry/doc/reference/unique.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -20,6 +20,12 @@
 
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/unique.hpp>`
 
 

Modified: trunk/libs/geometry/doc/reference/within.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/within.qbk (original)
+++ trunk/libs/geometry/doc/reference/within.qbk 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -1,6 +1,6 @@
 [/ Generated by doxygen_xml2qbk, don't change, it will be overwritten automatically]
 [/ Generated from doxy/doxygen_output/xml/group__within.xml]
-[section:within_3 within (with strategy)]
+[section:within_3_with_strategy within (with strategy)]
 
 Within, examine if a geometry is within another geometry, using a specified strategy.
 
@@ -22,6 +22,12 @@
 true if geometry1 is completely contained within geometry2, else false
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/within.hpp>`
 
 
@@ -48,6 +54,12 @@
 true if geometry1 is completely contained within geometry2, else false
 
 [heading Header]
+Either
+
+`#include <boost/geometry/geometry.hpp>`
+
+Or
+
 `#include <boost/geometry/algorithms/within.hpp>`
 
 

Added: trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/boost.vsprops
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/boost.vsprops 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="boost"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ AdditionalIncludeDirectories="$(BOOST_ROOT);..\..\.."
+ PreprocessorDefinitions="_SCL_SECURE_NO_WARNINGS"
+ />
+ <Tool
+ Name="VCLinkerTool"
+ AdditionalLibraryDirectories="$(BOOST_ROOT)\lib"
+ />
+ <UserMacro
+ Name="BOOST_ROOT"
+ Value="../../../../../../.."
+ />
+</VisualStudioPropertySheet>

Added: trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/contrib/readme.txt
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/contrib/readme.txt 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,5 @@
+Download RapidXml from here
+http://rapidxml.sourceforge.net/
+
+and put the contents in the folder rapidxml-1.13
+(adapt version if necessary)

Added: trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/deployment_path.vsprops
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/deployment_path.vsprops 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="Windows-1252"?>
+<VisualStudioPropertySheet
+ ProjectType="Visual C++"
+ Version="8.00"
+ Name="deployment_path"
+ >
+ <UserMacro
+ Name="DEPLOYMENT_PATH"
+ Value="c:\software"
+ PerformEnvironmentSet="true"
+ />
+</VisualStudioPropertySheet>

Modified: trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.cpp (original)
+++ trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.cpp 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -709,8 +709,15 @@
     }
 }
 
+inline std::string to_section_name(std::string const& name)
+{
+ // Make section-name lowercase and remove :: because these are filenames
+ return boost::to_lower_copy(boost::replace_all_copy(name, "::", "_"));
+}
+
+
 
-void quickbook_output(function const& f, configuration const& headerfiles, std::ostream& out)
+void quickbook_output(function const& f, configuration const& config, std::ostream& out)
 {
     // Write the parsed function
     int arity = (int)f.parameters.size();
@@ -724,10 +731,15 @@
         additional_description += ")";
     }
 
- out << "[section:" << f.name;
+ out << "[section:" << to_section_name(f.name);
+ // Make section name unique if necessary by arity and additional description
     if (! f.unique)
     {
         out << "_" << arity;
+ if (! f.additional_description.empty())
+ {
+ out << "_" << boost::to_lower_copy(boost::replace_all_copy(f.additional_description, " ", "_"));
+ }
     }
     out << " " << f.name
         << additional_description
@@ -788,7 +800,7 @@
     quickbook_heading_string("Returns", f.return_description, out);
     //quickbook_heading_string("Model of", f.model_of, out);
 
- quickbook_header(f.location, headerfiles, out);
+ quickbook_header(f.location, config, out);
     quickbook_behaviors(f.behaviors, out);
 
     quickbook_heading_string("Complexity", f.complexity, out);
@@ -843,14 +855,14 @@
     out << std::endl;
 }
 
-void quickbook_output(class_or_struct const& cos, configuration const& headerfiles, std::ostream& out)
+void quickbook_output(class_or_struct const& cos, configuration const& config, std::ostream& out)
 {
     // Boost.Geometry specific, to make generic: make this namespace-to-be-skipped configurable
- std::string short_name = boost::replace_all_copy(cos.fullname, "boost::geometry::", "");
-
+ std::string short_name =
+ boost::replace_all_copy(cos.fullname, "boost::geometry::", "");
 
     // Write the parsed function
- out << "[section:" << short_name << " " << short_name << "]" << std::endl
+ out << "[section:" << to_section_name(short_name) << " " << short_name << "]" << std::endl
         << std::endl;
 
     quickbook_heading_string("Description", cos.detailed_description, out);
@@ -927,7 +939,7 @@
             << std::endl;
     }
 
- quickbook_header(cos.location, headerfiles, out);
+ quickbook_header(cos.location, config, out);
     quickbook_examples(cos.examples, out);
 
     out << "[endsect]" << std::endl
@@ -985,6 +997,8 @@
             {
                 // It is not a unique function, so e.g. an overload,
                 // so a description must distinguish them.
+ // Difference is either the number of parameters, or a const / non-const version
+ // Use the "\qbk{distinguish,with strategy}" in the source code to distinguish
                 f1.unique = false;
                 f2.unique = false;
             }

Modified: trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.vcproj
==============================================================================
--- trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.vcproj (original)
+++ trunk/libs/geometry/doc/src/docutils/tools/doxygen_xml2qbk/doxygen_xml2qbk.vcproj 2011-01-01 11:22:40 EST (Sat, 01 Jan 2011)
@@ -4,6 +4,7 @@
         Version="8.00"
         Name="doxygen_xml2qbk"
         ProjectGUID="{81BDA0FD-D3BC-4693-A389-D3ABFAD19214}"
+ RootNamespace="doxygen_xml2qbk"
         Keyword="Win32Proj"
>
         <Platforms>
@@ -19,6 +20,7 @@
                         OutputDirectory="Debug"
                         IntermediateDirectory="Debug"
                         ConfigurationType="1"
+ InheritedPropertySheets=".\boost.vsprops;.\deployment_path.vsprops"
>
                         <Tool
                                 Name="VCPreBuildEventTool"
@@ -39,7 +41,7 @@
                                 Name="VCCLCompilerTool"
                                 Optimization="0"
                                 AdditionalIncludeDirectories=".;contrib/rapidxml-1.13"
- PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;"
+ PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE; _CRT_SECURE_NO_WARNINGS"
                                 MinimalRebuild="true"
                                 BasicRuntimeChecks="3"
                                 RuntimeLibrary="3"
@@ -87,6 +89,7 @@
                         />
                         <Tool
                                 Name="VCPostBuildEventTool"
+ CommandLine=""
                         />
                 </Configuration>
                 <Configuration
@@ -94,6 +97,7 @@
                         OutputDirectory="Release"
                         IntermediateDirectory="Release"
                         ConfigurationType="1"
+ InheritedPropertySheets=".\boost.vsprops;.\deployment_path.vsprops"
>
                         <Tool
                                 Name="VCPreBuildEventTool"
@@ -113,7 +117,7 @@
                         <Tool
                                 Name="VCCLCompilerTool"
                                 AdditionalIncludeDirectories=".;contrib/rapidxml-1.13"
- PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE;"
+ PreprocessorDefinitions="WIN32;NDEBUG;_CONSOLE; _CRT_SECURE_NO_WARNINGS"
                                 RuntimeLibrary="2"
                                 UsePrecompiledHeader="0"
                                 WarningLevel="3"
@@ -161,6 +165,7 @@
                         />
                         <Tool
                                 Name="VCPostBuildEventTool"
+ CommandLine="copy $(OutDir)\doxygen_xml2qbk.exe $(DEPLOYMENT_PATH)"
                         />
                 </Configuration>
         </Configurations>


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk