Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r71491 - in trunk/libs/geometry: doc doc/doxy doc/reference/geometries/adapted doc/reference/geometries/adapted/boost_polygon doc/reference/geometries/adapted/boost_range doc/src/examples doc/src/examples/algorithms doc/src/examples/core doc/src/examples/geometries/adapted doc/src/examples/geometries/register example test/test_geometries
From: barend.gehrels_at_[hidden]
Date: 2011-04-25 17:23:01


Author: barendgehrels
Date: 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
New Revision: 71491
URL: http://svn.boost.org/trac/boost/changeset/71491

Log:
Added many docs/samples
Updated for tuple/registration macro

Added:
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/point_data.qbk
      - copied, changed from r71422, /trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_data.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_with_holes_data.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/rectangle_data.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/adapts_model.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/filtered.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/reversed.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/sliced.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/strided.qbk (contents, props changed)
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/uniqued.qbk (contents, props changed)
   trunk/libs/geometry/doc/src/examples/geometries/register/box.cpp (contents, props changed)
   trunk/libs/geometry/doc/src/examples/geometries/register/box_templated.cpp (contents, props changed)
Removed:
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk
Text files modified:
   trunk/libs/geometry/doc/doxy/Doxyfile | 3 +
   trunk/libs/geometry/doc/geometry.qbk | 7 ++++-
   trunk/libs/geometry/doc/imports.qbk | 12 ++++++++++
   trunk/libs/geometry/doc/quickref.xml | 46 ++++++++++++++++++++++++++++++++-------
   trunk/libs/geometry/doc/reference.qbk | 22 ++++++++++++++----
   trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/point_data.qbk | 7 ++---
   trunk/libs/geometry/doc/src/examples/algorithms/append.cpp | 6 +++-
   trunk/libs/geometry/doc/src/examples/algorithms/assign.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/assign_points.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/clear.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/convert.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/convex_hull.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/correct.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/equals.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/make_2d_point.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/reverse.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/algorithms/unique.cpp | 4 ++
   trunk/libs/geometry/doc/src/examples/core/coordinate_dimension.cpp | 7 +++--
   trunk/libs/geometry/doc/src/examples/core/tag.cpp | 7 ++++-
   trunk/libs/geometry/doc/src/examples/geometries/adapted/Jamfile.v2 | 1
   trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_fusion.cpp | 7 ++++-
   trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_tuple.cpp | 3 +
   trunk/libs/geometry/doc/src/examples/geometries/register/Jamfile.v2 | 3 +
   trunk/libs/geometry/doc/src/examples/quick_start.cpp | 3 +
   trunk/libs/geometry/example/c02_custom_box_example.cpp | 2
   trunk/libs/geometry/example/c04_b_custom_triangle_example.cpp | 6 +++-
   trunk/libs/geometry/test/test_geometries/custom_segment.hpp | 2
   27 files changed, 137 insertions(+), 47 deletions(-)

Modified: trunk/libs/geometry/doc/doxy/Doxyfile
==============================================================================
--- trunk/libs/geometry/doc/doxy/Doxyfile (original)
+++ trunk/libs/geometry/doc/doxy/Doxyfile 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -95,9 +95,10 @@
                         details_calc2{2}="The free function \1 calculates the \2 of two geometries" \
                         details_calc2{1}="The free function \1 calculates the \1 of two geometries" \
                         details_check12{2}="The free function \1 checks if the first geometry \2 the second geometry" \
- details_macro{2}="The macro \1 registers a \2 such that it is recognized by Boost.Geometry and that Boost.Geometry functionality can used with the specified point type" \
+ details_macro{2}="The macro \1 registers a \2 such that it is recognized by Boost.Geometry and that Boost.Geometry functionality can used with the specified type." \
                         details_macro_const="The const version registers only read access to the fields, the point type is therefore read-only" \
                         details_macro_getset="The get/set version registers get and set methods separately and can be used for classes with protected member variables and get/set methods to change coordinates" \
+ details_macro_templated{1}="The type must have one template parameter, which should be a point type, and should not be specified. Boost.Geometry takes care of inserting the template parameter. Hence all types of this templated \1 are registered, regardless of their point type." \
                         details_default_strategy="It uses the default strategy, based on the coordinate system of the geometry." \
                         details_strategy_reasons="Reasons to specify a strategy include: use another coordinate system for calculations; construct the strategy beforehand (e.g. with the radius of the Earth); select a strategy when there are more than one available for a calculation." \
                         details_return{1}="This version with the return_ prefix returns the \1, and a template parameter must therefore be specified in the call." \

Modified: trunk/libs/geometry/doc/geometry.qbk
==============================================================================
--- trunk/libs/geometry/doc/geometry.qbk (original)
+++ trunk/libs/geometry/doc/geometry.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -49,6 +49,9 @@
 [def __other__ Other geometries]
 [def __nyiversion__ Not yet supported in this version]
 
+[def __not_in_boost_geometry_hpp__ The standard header `boost/geometry.hpp` does not include this header.]
+
+
 [/Parts]
 [def __ret_zero__ Returns zero]
 [def __ret_one__ Returns 1]
@@ -62,8 +65,8 @@
 All algorithms in Boost.Geometry will check any geometry arguments against the concept requirements.]
 
 
-[def __boost_geometry__ Boost.Geometry]
-[def __boost_gil__ [@http://www.boost.org/libs/gil/ Boost.GIL]]
+[def __boost_geometry__ Boost.Geometry]
+[def __boost_gil__ [@http://www.boost.org/libs/gil/ Boost.GIL]]
 
 [heading Contributions]
 

Modified: trunk/libs/geometry/doc/imports.qbk
==============================================================================
--- trunk/libs/geometry/doc/imports.qbk (original)
+++ trunk/libs/geometry/doc/imports.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -82,4 +82,16 @@
 [import src/examples/geometries/adapted/boost_fusion.cpp]
 [import src/examples/geometries/adapted/boost_polygon.cpp]
 [import src/examples/geometries/adapted/boost_tuple.cpp]
+
+[import src/examples/geometries/adapted/boost_range/filtered.cpp]
+[import src/examples/geometries/adapted/boost_range/reversed.cpp]
+[import src/examples/geometries/adapted/boost_range/sliced.cpp]
+[import src/examples/geometries/adapted/boost_range/strided.cpp]
+[import src/examples/geometries/adapted/boost_range/uniqued.cpp]
+
+[import src/examples/geometries/register/box.cpp]
+[import src/examples/geometries/register/box_templated.cpp]
+[import src/examples/geometries/register/box_2d_4values.cpp]
 [import src/examples/geometries/register/point.cpp]
+
+

Modified: trunk/libs/geometry/doc/quickref.xml
==============================================================================
--- trunk/libs/geometry/doc/quickref.xml (original)
+++ trunk/libs/geometry/doc/quickref.xml 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -101,24 +101,52 @@
   </row>
   <row>
    <entry valign="top">
- <bridgehead renderas="sect3">Adapted point types</bridgehead>
+ <bridgehead renderas="sect3">0-dimensional (adapted)</bridgehead>
     <simplelist type="vert" columns="1">
      <member><link linkend="geometry.reference.adapted.boost_array">Boost.Array</link></member>
      <member><link linkend="geometry.reference.adapted.boost_fusion">Boost.Fusion</link></member>
- <member><link linkend="geometry.reference.adapted.boost_polygon">Boost.Polygon</link></member>
+ <member><link linkend="geometry.reference.adapted.boost_polygon.point_data">Boost.Polygon's point_data</link></member>
      <member><link linkend="geometry.reference.adapted.boost_tuple">Boost.Tuple</link></member>
      <member><link linkend="geometry.reference.adapted.c_array">C arrays</link></member>
     </simplelist>
    </entry>
    <entry valign="top">
- <bridgehead renderas="sect3">Registration macro's</bridgehead>
+ <bridgehead renderas="sect3">1-dimensional (adapted)</bridgehead>
     <simplelist type="vert" columns="1">
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_2d">BOOST_GEOMETRY_REGISTER_POINT_2D</link></member>
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_2d_const">BOOST_GEOMETRY_REGISTER_POINT_2D_CONST</link></member>
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_2d_get_set">BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET</link></member>
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_3d">BOOST_GEOMETRY_REGISTER_POINT_3D</link></member>
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_3d_const">BOOST_GEOMETRY_REGISTER_POINT_3D_CONST</link></member>
- <member><link linkend="geometry.reference.adapted.boost_geometry_register_point_3d_get_set">BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET</link></member>
+ </simplelist>
+ </entry>
+ <entry valign="top">
+ <bridgehead renderas="sect3">2-dimensional (adapted)</bridgehead>
+ <simplelist type="vert" columns="1">
+ <member><link linkend="geometry.reference.adapted.boost_polygon.rectangle_data">Boost.Polygon's rectangle_data</link></member>
+ <member><link linkend="geometry.reference.adapted.boost_polygon.polygon_data">Boost.Polygon's polygon_data</link></member>
+ <member><link linkend="geometry.reference.adapted.boost_polygon.polygon_with_holes_data">Boost.Polygon's polygon_with_holes_data</link></member>
+ </simplelist>
+ </entry>
+ </row>
+ <row>
+ <entry valign="top">
+ <bridgehead renderas="sect3">0-dimensional (macro's for adaption)</bridgehead>
+ <simplelist type="vert" columns="1">
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_2d">BOOST_GEOMETRY_REGISTER_POINT_2D</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_2d_const">BOOST_GEOMETRY_REGISTER_POINT_2D_CONST</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_2d_get_set">BOOST_GEOMETRY_REGISTER_POINT_2D_GET_SET</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_3d">BOOST_GEOMETRY_REGISTER_POINT_3D</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_3d_const">BOOST_GEOMETRY_REGISTER_POINT_3D_CONST</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_point_3d_get_set">BOOST_GEOMETRY_REGISTER_POINT_3D_GET_SET</link></member>
+ </simplelist>
+ </entry>
+ <entry valign="top">
+ <bridgehead renderas="sect3">1-dimensionial (macro's for adaption)</bridgehead>
+ <simplelist type="vert" columns="1">
+ </simplelist>
+ </entry>
+ <entry valign="top">
+ <bridgehead renderas="sect3">2-dimensional (macro's for adaption)</bridgehead>
+ <simplelist type="vert" columns="1">
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_box">BOOST_GEOMETRY_REGISTER_BOX</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_box_2d_4values">BOOST_GEOMETRY_REGISTER_BOX_2D_4VALUES</link></member>
+ <member><link linkend="geometry.reference.adapted.register.boost_geometry_register_box_templated">BOOST_GEOMETRY_REGISTER_BOX_TEMPLATED</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-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -36,14 +36,28 @@
 
 [endsect] [/access functions]
 
-[section:adapted Adapted models and registration]
+[section:adapted Adapted models]
 [include reference/geometries/adapted/c_array.qbk]
 [include reference/geometries/adapted/boost_array.qbk]
 [include reference/geometries/adapted/boost_fusion.qbk]
-[include reference/geometries/adapted/boost_polygon.qbk]
 [include reference/geometries/adapted/boost_tuple.qbk]
+[section:boost_polygon Boost.Polygon]
+[include reference/geometries/adapted/boost_polygon/point_data.qbk]
+[include reference/geometries/adapted/boost_polygon/rectangle_data.qbk]
+[include reference/geometries/adapted/boost_polygon/polygon_data.qbk]
+[include reference/geometries/adapted/boost_polygon/polygon_with_holes_data.qbk]
+[endsect]
+[section:boost_range Boost.Range]
+[include reference/geometries/adapted/boost_range/filtered.qbk]
+[include reference/geometries/adapted/boost_range/reversed.qbk]
+[include reference/geometries/adapted/boost_range/sliced.qbk]
+[include reference/geometries/adapted/boost_range/strided.qbk]
+[/ include reference/geometries/adapted/boost_range/uniqued.qbk]
+[endsect]
+[section:register Macro's for adaption]
 [include generated/register.qbk]
 [endsect]
+[endsect]
 
 [section:algorithms Algorithms]
 
@@ -54,10 +68,8 @@
 [section:assign assign]
 [include generated/assign.qbk]
 [endsect]
-[/section:append append]
-[include generated/append.qbk]
-[/endsect]
 
+[include generated/append.qbk]
 
 [section:buffer buffer]
 [include generated/buffer.qbk]

Deleted: trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk
==============================================================================
--- trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
+++ (empty file)
@@ -1,37 +0,0 @@
-[/============================================================================
- Boost.Geometry (aka GGL, Generic Geometry Library)
-
- Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
- Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
- Copyright (c) 2009-2011 Mateusz Loskot, 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)
-=============================================================================/]
-
-[section:boost_polygon Boost.Polygon]
-
-The Boost.Polygon point type (point_data) is adapted to the Boost.Geometry Point Concept.
-Boost.Polygon polygons are adapted to the Boost.Geometry Ring Concept and the Boost.Geometry Polygon Concept.
-
-[heading Description]
-
-Boost.Polygon's points (as well as polygons) can be used by Boost.Geometry. The
-two libraries can therefore be used together. Using a boost::polygon::point_data<...>,
-algorithms from both Boost.Polygon and Boost.Geometry can be called.
-
-[heading Model of]
-[link geometry.reference.concepts.concept_point Point Concept]
-
-[heading Header]
-`#include <boost/geometry/geometries/adapted/boost_polygon.hpp>`
-
-The standard header `<boost/geometry.hpp>` does not include this header.
-
-[heading Example]
-[boost_polygon]
-[boost_polygon_output]
-
-[endsect]
-

Copied: trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/point_data.qbk (from r71422, /trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk)
==============================================================================
--- /trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon.qbk (original)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/point_data.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -10,10 +10,9 @@
   http://www.boost.org/LICENSE_1_0.txt)
 =============================================================================/]
 
-[section:boost_polygon Boost.Polygon]
+[section:point_data Boost.Polygon's point_data]
 
-The Boost.Polygon point type (point_data) is adapted to the Boost.Geometry Point Concept.
-Boost.Polygon polygons are adapted to the Boost.Geometry Ring Concept and the Boost.Geometry Polygon Concept.
+The Boost.Polygon point type (boost::polygon::point_data) is adapted to the Boost.Geometry Point Concept.
 
 [heading Description]
 
@@ -27,7 +26,7 @@
 [heading Header]
 `#include <boost/geometry/geometries/adapted/boost_polygon.hpp>`
 
-The standard header `<boost/geometry.hpp>` does not include this header.
+__not_in_boost_geometry_hpp__
 
 [heading Example]
 [boost_polygon]

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_data.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_data.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:polygon_data Boost.Polygon's polygon_data]
+
+Boost.Polygon's polygon type (boost::polygon::polygon_data) is adapted to the Boost.Geometry Ring Concept.
+
+[heading Description]
+
+Boost.Polygon's points (as well as polygons) can be used by Boost.Geometry. The
+two libraries can therefore be used together. Using a boost::polygon::point_data<...>,
+algorithms from both Boost.Polygon and Boost.Geometry can be called.
+
+[heading Model of]
+[link geometry.reference.concepts.concept_ring Ring Concept]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_polygon.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_polygon]
+[boost_polygon_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_with_holes_data.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/polygon_with_holes_data.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,37 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:polygon_with_holes_data Boost.Polygon's polygon_with_holes_data]
+
+Boost.Polygon's polygon type supporting holes (boost::polygon::polygon_with_holes_data)
+is adapted to the Boost.Geometry Polygon Concept.
+
+[heading Description]
+
+Boost.Polygon's points (as well as polygons) can be used by Boost.Geometry. The
+two libraries can therefore be used together. Using a boost::polygon::point_data<...>,
+algorithms from both Boost.Polygon and Boost.Geometry can be called.
+
+[heading Model of]
+[link geometry.reference.concepts.concept_polygon Polygon Concept]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_polygon.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_polygon]
+[boost_polygon_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/rectangle_data.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_polygon/rectangle_data.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:rectangle_data Boost.Polygon's rectangle_data]
+
+Boost.Polygon's rectangle type (boost::polygon::rectangle_data) is adapted to the Boost.Geometry Point Concept.
+
+[heading Description]
+
+Boost.Polygon's points (as well as polygons) can be used by Boost.Geometry. The
+two libraries can therefore be used together. Using a boost::polygon::point_data<...>,
+algorithms from both Boost.Polygon and Boost.Geometry can be called.
+
+[heading Model of]
+[link geometry.reference.concepts.concept_box Box Concept]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_polygon.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_polygon]
+[boost_polygon_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/adapts_model.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/adapts_model.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,19 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+The __adaptor__ takes over the model of the original geometry, which might be:
+
+* a linestring
+* a ring
+* a multi_point
+* a multi_linestring
+* a multi_polygon

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/filtered.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/filtered.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:filtered Boost.Range filtered]
+
+[def __adaptor__ Boost.Range filtered range adaptor]
+
+__adaptor__ is adapted to Boost.Geometry
+
+[heading Description]
+
+__adaptor__ filters a range.
+
+[heading Model of]
+[include adapts_model.qbk]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_range/filtered.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_range_filtered]
+[boost_range_filtered_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/reversed.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/reversed.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:reversed Boost.Range reversed]
+
+[def __adaptor__ Boost.Range reversed range adaptor]
+
+__adaptor__ is adapted to Boost.Geometry
+
+[heading Description]
+
+__adaptor__ reverses a range.
+
+[heading Model of]
+[include adapts_model.qbk]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_range/reversed.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_range_reversed]
+[boost_range_reversed_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/sliced.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/sliced.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:sliced Boost.Range sliced]
+
+[def __adaptor__ Boost.Range sliced range adaptor]
+
+__adaptor__ is adapted to Boost.Geometry
+
+[heading Description]
+
+__adaptor__ creates a slice of a range (usually a linestring)
+
+[heading Model of]
+[include adapts_model.qbk]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_range/sliced.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_range_sliced]
+[boost_range_sliced_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/strided.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/strided.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,37 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:strided Boost.Range strided]
+
+[def __adaptor__ Boost.Range strided range adaptor]
+
+__adaptor__ is adapted to Boost.Geometry
+
+[heading Description]
+
+__adaptor__ makes a strided range (usually begin a linestring or ring) such that
+traversal is performed in steps of n.
+
+[heading Model of]
+[include adapts_model.qbk]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_range/strided.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_range_strided]
+[boost_range_strided_output]
+
+[endsect]
+

Added: trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/uniqued.qbk
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/reference/geometries/adapted/boost_range/uniqued.qbk 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,36 @@
+[/============================================================================
+ Boost.Geometry (aka GGL, Generic Geometry Library)
+
+ Copyright (c) 2007-2011 Barend Gehrels, Amsterdam, the Netherlands.
+ Copyright (c) 2008-2011 Bruno Lalande, Paris, France.
+ Copyright (c) 2009-2011 Mateusz Loskot, 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)
+=============================================================================/]
+
+[section:uniqued Boost.Range uniqued]
+
+[def __adaptor__ Boost.Range uniqued range adaptor]
+
+__adaptor__ is adapted to Boost.Geometry
+
+[heading Description]
+
+__adaptor__ makes a range unique
+
+[heading Model of]
+[include adapts_model.qbk]
+
+[heading Header]
+`#include <boost/geometry/geometries/adapted/boost_range/uniqued.hpp>`
+
+__not_in_boost_geometry_hpp__
+
+[heading Example]
+[boost_range_uniqued]
+[boost_range_uniqued_output]
+
+[endsect]
+

Modified: trunk/libs/geometry/doc/src/examples/algorithms/append.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/append.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/append.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -12,11 +12,13 @@
 
 #include <iostream>
 
+#include <boost/assign.hpp>
+
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
 
-#include <boost/assign.hpp>
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/algorithms/assign.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/assign.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/assign.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,7 +13,9 @@
 #include <iostream>
 
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/algorithms/assign_points.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/assign_points.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/assign_points.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -14,11 +14,13 @@
 
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
 
 #include <boost/assign.hpp>
 #include <boost/geometry/geometries/adapted/boost_range/filtered.hpp>
 
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
+
 template <typename T>
 struct x_between
 {

Modified: trunk/libs/geometry/doc/src/examples/algorithms/clear.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/clear.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/clear.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -14,7 +14,9 @@
 
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 #include <boost/assign.hpp>
 

Modified: trunk/libs/geometry/doc/src/examples/algorithms/convert.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/convert.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/convert.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,7 +13,9 @@
 #include <iostream>
 
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/algorithms/convex_hull.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/convex_hull.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/convex_hull.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,7 +13,9 @@
 #include <iostream>
 
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 /*<-*/ #include "create_svg_two.hpp" /*->*/
 int main()

Modified: trunk/libs/geometry/doc/src/examples/algorithms/correct.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/correct.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/correct.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,7 +13,9 @@
 #include <iostream>
 
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 #include <boost/assign.hpp>
 

Modified: trunk/libs/geometry/doc/src/examples/algorithms/equals.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/equals.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/equals.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -14,7 +14,9 @@
 
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 #include <boost/assign.hpp>
 

Modified: trunk/libs/geometry/doc/src/examples/algorithms/make_2d_point.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/make_2d_point.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/make_2d_point.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -15,9 +15,11 @@
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
 #include <boost/geometry/geometries/register/point.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
 #include <boost/geometry/geometries/adapted/boost_polygon/point.hpp>
 
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
+
 struct mypoint { float _x, _y; };
 
 BOOST_GEOMETRY_REGISTER_POINT_2D(mypoint, float, cs::cartesian, _x, _y)

Modified: trunk/libs/geometry/doc/src/examples/algorithms/reverse.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/reverse.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/reverse.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -14,7 +14,9 @@
 
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 #include <boost/assign.hpp>
 

Modified: trunk/libs/geometry/doc/src/examples/algorithms/unique.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/algorithms/unique.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/algorithms/unique.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,7 +13,9 @@
 #include <iostream>
 
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/core/coordinate_dimension.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/core/coordinate_dimension.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/core/coordinate_dimension.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -12,14 +12,15 @@
 
 #include <iostream>
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
-#include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian);
 
 int main()
 {
     int dim = boost::geometry::dimension
         <
- std::vector
+ boost::geometry::model::linestring
                 <
                     boost::tuple<float, float, float>
>

Modified: trunk/libs/geometry/doc/src/examples/core/tag.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/core/tag.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/core/tag.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -11,11 +11,14 @@
 //` Shows how tag dispatching essentially works in Boost.Geometry
 
 #include <iostream>
-#include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
 
 #include <boost/assign.hpp>
 
+#include <boost/geometry.hpp>
+#include <boost/geometry/geometries/adapted/boost_tuple.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian)
+
 template <typename Tag> struct dispatch {};
 
 // Specialization for points

Modified: trunk/libs/geometry/doc/src/examples/geometries/adapted/Jamfile.v2
==============================================================================
--- trunk/libs/geometry/doc/src/examples/geometries/adapted/Jamfile.v2 (original)
+++ trunk/libs/geometry/doc/src/examples/geometries/adapted/Jamfile.v2 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -19,3 +19,4 @@
 exe boost_polygon : boost_polygon.cpp ;
 exe boost_tuple : boost_tuple.cpp ;
 
+build-project boost_range ;

Modified: trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_fusion.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_fusion.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_fusion.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -11,10 +11,12 @@
 //` Shows how to combine Boost.Fusion with Boost.Geometry
 
 #include <iostream>
+
 #include <boost/fusion/include/adapt_struct_named.hpp>
+
 #include <boost/geometry.hpp>
-#include <boost/geometry/geometries/adapted/fusion.hpp>
-#include <boost/geometry/geometries/adapted/fusion_cartesian.hpp>
+#include <boost/geometry/geometries/adapted/boost_fusion.hpp>
+
 
 struct sample_point
 {
@@ -22,6 +24,7 @@
 };
 
 BOOST_FUSION_ADAPT_STRUCT(sample_point, (double, x) (double, y) (double, z))
+BOOST_GEOMETRY_REGISTER_BOOST_FUSION_CS(sample_point)
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_tuple.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_tuple.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/geometries/adapted/boost_tuple.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -18,7 +18,8 @@
 #include <iostream>
 #include <boost/geometry.hpp>
 #include <boost/geometry/geometries/adapted/tuple.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
+
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian);
 
 int main()
 {

Modified: trunk/libs/geometry/doc/src/examples/geometries/register/Jamfile.v2
==============================================================================
--- trunk/libs/geometry/doc/src/examples/geometries/register/Jamfile.v2 (original)
+++ trunk/libs/geometry/doc/src/examples/geometries/register/Jamfile.v2 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -13,5 +13,6 @@
     : # requirements
     ;
 
+exe box : box.cpp ;
+exe box_templated : box_templated.cpp ;
 exe point : point.cpp ;
-

Added: trunk/libs/geometry/doc/src/examples/geometries/register/box.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/src/examples/geometries/register/box.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,51 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+// QuickBook Example
+
+// Copyright (c) 2011 Barend Gehrels, Amsterdam, the Netherlands.
+
+// 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)
+
+//[register_box
+//` Show the use of the macro BOOST_GEOMETRY_REGISTER_BOX
+
+#include <iostream>
+#include <boost/geometry.hpp>
+#include <boost/geometry/geometries/register/point.hpp>
+#include <boost/geometry/geometries/register/box.hpp>
+
+struct my_point
+{
+ double x, y;
+};
+
+struct my_box
+{
+ my_point ll, ur;
+};
+
+// Register the point type
+BOOST_GEOMETRY_REGISTER_POINT_2D(my_point, double, cs::cartesian, x, y)
+
+// Register the box type, also notifying that it is based on "my_point"
+BOOST_GEOMETRY_REGISTER_BOX(my_box, my_point, ll, ur)
+
+int main()
+{
+ my_box b = boost::geometry::make<my_box>(0, 0, 2, 2);
+ std::cout << "Area: " << boost::geometry::area(b) << std::endl;
+ return 0;
+}
+
+//]
+
+
+//[register_box_output
+/*`
+Output:
+[pre
+Area: 4
+]
+*/
+//]

Added: trunk/libs/geometry/doc/src/examples/geometries/register/box_templated.cpp
==============================================================================
--- (empty file)
+++ trunk/libs/geometry/doc/src/examples/geometries/register/box_templated.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -0,0 +1,44 @@
+// Boost.Geometry (aka GGL, Generic Geometry Library)
+// QuickBook Example
+
+// Copyright (c) 2011 Barend Gehrels, Amsterdam, the Netherlands.
+
+// 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)
+
+//[register_box_templated
+//` Show the use of the macro BOOST_GEOMETRY_REGISTER_BOX_TEMPLATED
+
+#include <iostream>
+#include <boost/geometry.hpp>
+#include <boost/geometry/geometries/register/box.hpp>
+
+template <typename P>
+struct my_box
+{
+ P ll, ur;
+};
+
+// Register the box type
+BOOST_GEOMETRY_REGISTER_BOX_TEMPLATED(my_box, ll, ur)
+
+int main()
+{
+ typedef my_box<boost::geometry::model::d2::point_xy<double> > box;
+ box b = boost::geometry::make<box>(0, 0, 2, 2);
+ std::cout << "Area: " << boost::geometry::area(b) << std::endl;
+ return 0;
+}
+
+//]
+
+
+//[register_box_templated_output
+/*`
+Output:
+[pre
+Area: 4
+]
+*/
+//]

Modified: trunk/libs/geometry/doc/src/examples/quick_start.cpp
==============================================================================
--- trunk/libs/geometry/doc/src/examples/quick_start.cpp (original)
+++ trunk/libs/geometry/doc/src/examples/quick_start.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -24,10 +24,11 @@
 #include <boost/geometry/algorithms/overlaps.hpp>
 #include <boost/geometry/geometries/geometries.hpp>
 #include <boost/geometry/geometries/register/point.hpp>
-#include <boost/geometry/geometries/adapted/tuple_cartesian.hpp>
 #include <boost/geometry/geometries/adapted/c_array_cartesian.hpp>
 #include <boost/geometry/geometries/adapted/std_as_linestring.hpp>
 
+BOOST_GEOMETRY_REGISTER_BOOST_TUPLE_CS(cs::cartesian);
+
 
 // Small QRect simulations following http://doc.trolltech.com/4.4/qrect.html
 // Todo: once work the traits out further, would be nice if there is a real example of this.

Modified: trunk/libs/geometry/example/c02_custom_box_example.cpp
==============================================================================
--- trunk/libs/geometry/example/c02_custom_box_example.cpp (original)
+++ trunk/libs/geometry/example/c02_custom_box_example.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -53,7 +53,7 @@
 BOOST_GEOMETRY_REGISTER_POINT_2D(my_point, double, cs::cartesian, x, y)
 BOOST_GEOMETRY_REGISTER_POINT_2D(my_int_point, int, cs::cartesian, x, y)
 BOOST_GEOMETRY_REGISTER_BOX(my_box, my_point, ll, ur)
-BOOST_GEOMETRY_REGISTER_BOX_TEMPLATIZED(my_box_t, ll, ur)
+BOOST_GEOMETRY_REGISTER_BOX_TEMPLATED(my_box_t, ll, ur)
 BOOST_GEOMETRY_REGISTER_BOX_2D_4VALUES(my_box_ltrb, my_int_point, left, top, right, bottom)
 BOOST_GEOMETRY_REGISTER_BOX_2D_4VALUES(my_box_4, my_point, coors[0], coors[1], coors[2], coors[3])
 

Modified: trunk/libs/geometry/example/c04_b_custom_triangle_example.cpp
==============================================================================
--- trunk/libs/geometry/example/c04_b_custom_triangle_example.cpp (original)
+++ trunk/libs/geometry/example/c04_b_custom_triangle_example.cpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -30,9 +30,11 @@
 {
 };
 
-// Register triangle<P>
-BOOST_GEOMETRY_REGISTER_RING_TEMPLATIZED(triangle)
+// Register triangle<P> as a ring
 
+namespace boost { namespace geometry {
+template <typename P> struct tag<triangle<P> > { typedef ring_tag type; }
+}}
 
 namespace boost { namespace geometry { namespace dispatch {
 

Modified: trunk/libs/geometry/test/test_geometries/custom_segment.hpp
==============================================================================
--- trunk/libs/geometry/test/test_geometries/custom_segment.hpp (original)
+++ trunk/libs/geometry/test/test_geometries/custom_segment.hpp 2011-04-25 17:22:58 EDT (Mon, 25 Apr 2011)
@@ -51,7 +51,7 @@
 BOOST_GEOMETRY_REGISTER_POINT_2D(test::custom_point_for_segment, double, cs::cartesian, x, y)
 
 BOOST_GEOMETRY_REGISTER_SEGMENT(test::custom_segment, test::custom_point_for_segment, one, two)
-BOOST_GEOMETRY_REGISTER_SEGMENT_TEMPLATIZED(test::custom_segment_of, p1, p2)
+BOOST_GEOMETRY_REGISTER_SEGMENT_TEMPLATED(test::custom_segment_of, p1, p2)
 BOOST_GEOMETRY_REGISTER_SEGMENT_2D_4VALUES(test::custom_segment_4, test::custom_point_for_segment, a, b, c, d)
 
 


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