$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r64529 - in sandbox/geometry/libs/geometry/doc: doxygen_input/sourcecode qbk
From: barend.gehrels_at_[hidden]
Date: 2010-08-01 16:06:23
Author: barendgehrels
Date: 2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
New Revision: 64529
URL: http://svn.boost.org/trac/boost/changeset/64529
Log:
Experimentally generated quickbooks for area/distance including samples
Added:
   sandbox/geometry/libs/geometry/doc/qbk/
   sandbox/geometry/libs/geometry/doc/qbk/Doxyfile   (contents, props changed)
   sandbox/geometry/libs/geometry/doc/qbk/Jamfile.v2   (contents, props changed)
   sandbox/geometry/libs/geometry/doc/qbk/area.qbk   (contents, props changed)
   sandbox/geometry/libs/geometry/doc/qbk/distance.qbk   (contents, props changed)
   sandbox/geometry/libs/geometry/doc/qbk/geometry.qbk   (contents, props changed)
   sandbox/geometry/libs/geometry/doc/qbk/make_qbk.bat   (contents, props changed)
Text files modified: 
   sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/doxygen_1.cpp |    29 +++++++++++++++--------------           
   1 files changed, 15 insertions(+), 14 deletions(-)
Modified: sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/doxygen_1.cpp
==============================================================================
--- sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/doxygen_1.cpp	(original)
+++ sandbox/geometry/libs/geometry/doc/doxygen_input/sourcecode/doxygen_1.cpp	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -23,23 +23,24 @@
 #include <boost/geometry/extensions/gis/io/wkt/wkt.hpp>
 
 
-// All functions below are referred to in the source of the Geometry Library.
+// All functions below are referred to in the documentation of Boost.Geometry
 // Don't rename them.
-
 void example_area_polygon()
 {
-    boost::geometry::polygon<boost::geometry::point_xy<double> > poly;
-    boost::geometry::read_wkt("POLYGON((0 0,0 7,4 2,2 0,0 0))", poly);
-    std::cout << "Polygon area is "
-        << boost::geometry::area(poly)
-        << " square units" << std::endl;
-
-    // Other coordinate system, spherical or geographic (extension)
-    boost::geometry::polygon<boost::geometry::point<float, 2, boost::geometry::cs::spherical<boost::geometry::degree> > > sph_poly;
-    boost::geometry::read_wkt("POLYGON((0 0,0 45,45 0,0 0))", sph_poly);
-    std::cout << "Area is "
-        << boost::geometry::area(sph_poly)
-        << " on unit sphere " << std::endl;
+    //[area_polygon
+    //` Calculate the area of a polygon
+    boost::geometry::polygon<boost::geometry::point_xy<double> > poly; /*< Declare >*/
+    boost::geometry::read_wkt("POLYGON((0 0,0 7,4 2,2 0,0 0))", poly); /*< Fill, in this case with WKT >*/
+    double area = boost::geometry::area(poly); /*< Calculate area >*/
+    //]
+
+    //[area_polygon_spherical
+    //` Calculate the area of a *spherical* polygon
+    namespace bg = boost::geometry;
+    bg::polygon<bg::point<float, 2, bg::cs::spherical<bg::degree> > > sph_poly;
+    bg::read_wkt("POLYGON((0 0,0 45,45 0,0 0))", sph_poly);
+    double area = bg::area(sph_poly);
+    //]
 }
 
 void example_as_wkt_point()
Added: sandbox/geometry/libs/geometry/doc/qbk/Doxyfile
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/Doxyfile	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,249 @@
+# Doxyfile 1.5.5
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+DOXYFILE_ENCODING      = UTF-8
+PROJECT_NAME           = "Boost.Geometry (aka GGL)"
+PROJECT_NUMBER         = 
+OUTPUT_DIRECTORY       = ./doxygen_output
+CREATE_SUBDIRS         = NO
+OUTPUT_LANGUAGE        = English
+BRIEF_MEMBER_DESC      = YES
+REPEAT_BRIEF           = YES
+ABBREVIATE_BRIEF       = 
+ALWAYS_DETAILED_SEC    = YES
+INLINE_INHERITED_MEMB  = NO
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = 
+STRIP_FROM_INC_PATH    = 
+SHORT_NAMES            = NO
+JAVADOC_AUTOBRIEF      = NO
+QT_AUTOBRIEF           = NO
+MULTILINE_CPP_IS_BRIEF = NO
+INHERIT_DOCS           = YES
+SEPARATE_MEMBER_PAGES  = NO
+TAB_SIZE               = 8
+ALIASES                = 
+OPTIMIZE_OUTPUT_FOR_C  = NO
+OPTIMIZE_OUTPUT_JAVA   = NO
+OPTIMIZE_FOR_FORTRAN   = NO
+OPTIMIZE_OUTPUT_VHDL   = NO
+BUILTIN_STL_SUPPORT    = YES
+CPP_CLI_SUPPORT        = NO
+SIP_SUPPORT            = NO
+DISTRIBUTE_GROUP_DOC   = NO
+SUBGROUPING            = YES
+TYPEDEF_HIDES_STRUCT   = NO
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL            = YES
+EXTRACT_PRIVATE        = NO
+EXTRACT_STATIC         = YES
+EXTRACT_LOCAL_CLASSES  = NO
+EXTRACT_LOCAL_METHODS  = NO
+EXTRACT_ANON_NSPACES   = NO
+HIDE_UNDOC_MEMBERS     = NO
+HIDE_UNDOC_CLASSES     = NO
+HIDE_FRIEND_COMPOUNDS  = NO
+HIDE_IN_BODY_DOCS      = NO
+INTERNAL_DOCS          = NO
+CASE_SENSE_NAMES       = NO
+HIDE_SCOPE_NAMES       = NO
+SHOW_INCLUDE_FILES     = NO
+INLINE_INFO            = NO
+SORT_MEMBER_DOCS       = NO
+SORT_BRIEF_DOCS        = YES
+SORT_GROUP_NAMES       = YES
+SORT_BY_SCOPE_NAME     = YES
+GENERATE_TODOLIST      = NO
+GENERATE_TESTLIST      = YES
+GENERATE_BUGLIST       = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS       = 
+MAX_INITIALIZER_LINES  = 30
+SHOW_USED_FILES        = NO
+SHOW_DIRECTORIES       = NO
+FILE_VERSION_FILTER    = 
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET                  = YES
+WARNINGS               = YES
+WARN_IF_UNDOCUMENTED   = YES
+WARN_IF_DOC_ERROR      = YES
+WARN_NO_PARAMDOC       = NO
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           = 
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT                  = ../../../../boost/geometry/geometries \
+			../../../../boost/geometry/algorithms \
+			../../../../boost/geometry/strategies/cartesian
+INPUT_ENCODING         = UTF-8
+FILE_PATTERNS          = point.hpp area.hpp distance.hpp distance_pythagoras.hpp 
+RECURSIVE              = NO
+EXCLUDE                = 
+EXCLUDE_SYMLINKS       = NO
+EXCLUDE_PATTERNS       = 
+EXCLUDE_SYMBOLS        = 
+EXAMPLE_PATH           = ../doxygen_input/sourcecode
+EXAMPLE_PATTERNS       = 
+EXAMPLE_RECURSIVE      = NO
+IMAGE_PATH             = 
+INPUT_FILTER           = 
+FILTER_PATTERNS        = 
+FILTER_SOURCE_FILES    = NO
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER         = NO
+INLINE_SOURCES         = NO
+STRIP_CODE_COMMENTS    = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION    = NO
+REFERENCES_LINK_SOURCE = NO
+USE_HTAGS              = NO
+VERBATIM_HEADERS       = NO
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+COLS_IN_ALPHA_INDEX    = 3
+IGNORE_PREFIX          = 
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML          = YES
+HTML_OUTPUT            = html
+HTML_FILE_EXTENSION    = .html
+HTML_HEADER            = 
+HTML_FOOTER            = 
+HTML_STYLESHEET        = 
+HTML_ALIGN_MEMBERS     = YES
+GENERATE_HTMLHELP      = NO
+GENERATE_DOCSET        = NO
+DOCSET_FEEDNAME        = "Generated documentation, by Doxygen"
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+HTML_DYNAMIC_SECTIONS  = NO
+CHM_FILE               = 
+HHC_LOCATION           = 
+GENERATE_CHI           = NO
+BINARY_TOC             = NO
+TOC_EXPAND             = NO
+DISABLE_INDEX          = NO
+ENUM_VALUES_PER_LINE   = 4
+GENERATE_TREEVIEW      = NO
+TREEVIEW_WIDTH         = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX         = NO
+LATEX_OUTPUT           = latex
+LATEX_CMD_NAME         = latex
+MAKEINDEX_CMD_NAME     = makeindex
+COMPACT_LATEX          = NO
+PAPER_TYPE             = a4wide
+EXTRA_PACKAGES         = 
+LATEX_HEADER           = 
+PDF_HYPERLINKS         = YES
+USE_PDFLATEX           = YES
+LATEX_BATCHMODE        = NO
+LATEX_HIDE_INDICES     = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF           = NO
+RTF_OUTPUT             = rtf
+COMPACT_RTF            = NO
+RTF_HYPERLINKS         = NO
+RTF_STYLESHEET_FILE    = 
+RTF_EXTENSIONS_FILE    = 
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN           = NO
+MAN_OUTPUT             = man
+MAN_EXTENSION          = .3
+MAN_LINKS              = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML           = YES
+XML_OUTPUT             = xml
+XML_SCHEMA             = 
+XML_DTD                = 
+XML_PROGRAMLISTING     = YES
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF   = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD       = NO
+PERLMOD_LATEX          = NO
+PERLMOD_PRETTY         = YES
+PERLMOD_MAKEVAR_PREFIX = 
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING   = YES
+MACRO_EXPANSION        = YES
+EXPAND_ONLY_PREDEF     = YES
+SEARCH_INCLUDES        = YES
+INCLUDE_PATH           = 
+INCLUDE_FILE_PATTERNS  = 
+PREDEFINED             = BOOST_CONCEPT_REQUIRES(x)= \
+                         BOOST_CONCEPT_ASSERT(x) = \
+                         BOOST_STATIC_ASSERT(x) = \
+                         DOXYGEN_SHOULD_SKIP_THIS \
+                         DOXYGEN_NO_DISPATCH \
+                         DOXYGEN_NO_IMPL \
+                         DOXYGEN_NO_DETAIL \
+                         DOXYGEN_NO_CONCEPT_MEMBERS \
+                         DOXYGEN_NO_TRAITS_SPECIALIZATIONS \
+                         DOXYGEN_NO_STRATEGY_SPECIALIZATIONS \
+                         DOXYGEN_NO_SPECIALIZATIONS
+EXPAND_AS_DEFINED      = 
+SKIP_FUNCTION_MACROS   = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references   
+#---------------------------------------------------------------------------
+TAGFILES               = 
+GENERATE_TAGFILE       = 
+ALLEXTERNALS           = NO
+EXTERNAL_GROUPS        = YES
+PERL_PATH              = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS         = NO
+MSCGEN_PATH            = 
+HIDE_UNDOC_RELATIONS   = YES
+HAVE_DOT               = NO
+CLASS_GRAPH            = YES
+COLLABORATION_GRAPH    = YES
+GROUP_GRAPHS           = YES
+UML_LOOK               = NO
+TEMPLATE_RELATIONS     = NO
+INCLUDE_GRAPH          = YES
+INCLUDED_BY_GRAPH      = YES
+CALL_GRAPH             = NO
+CALLER_GRAPH           = NO
+GRAPHICAL_HIERARCHY    = YES
+DIRECTORY_GRAPH        = YES
+DOT_IMAGE_FORMAT       = png
+DOT_PATH               = 
+DOTFILE_DIRS           = 
+DOT_GRAPH_MAX_NODES    = 50
+MAX_DOT_GRAPH_DEPTH    = 0
+DOT_TRANSPARENT        = YES
+DOT_MULTI_TARGETS      = NO
+GENERATE_LEGEND        = YES
+DOT_CLEANUP            = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine   
+#---------------------------------------------------------------------------
+SEARCHENGINE           = NO
Added: sandbox/geometry/libs/geometry/doc/qbk/Jamfile.v2
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/Jamfile.v2	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,22 @@
+# doc/quickbook/Jamfile.v2 builds Quickbook documentation for Geometry library
+#
+# Copyright (c) 2009 Mateusz Loskot <mateusz_at_[hidden]>
+# Copyright (c) 2010 Barend Gehrels
+# 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)
+
+# Experimental!
+
+import quickbook ;
+
+xml geometry
+	: geometry.qbk 
+	: <dependency>Jamfile.v2
+	;
+
+boostbook standalone
+	: geometry
+	: <xsl:param>callout.graphics.path=../callouts/
+	;
+
Added: sandbox/geometry/libs/geometry/doc/qbk/area.qbk
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/area.qbk	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,60 @@
+[section:area0 area]
+
+Calculate area of a geometry using a specified strategy. 
+
+[heading Synopsis]
+``template<typename Geometry, typename Strategy>
+Strategy::return_type area (Geometry const &geometry, Strategy const &strategy)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [A type fulfilling any Geometry concept ] [geometry] [A model of Geometry ]]
+[[Strategy] [A type fulfilling a AreaStrategy concept ] [strategy] [A strategy to calculate area. Especially for spherical and geographical area calculations there are various approaches. ]]
+]
+
+
+[heading Returns]
+The calculated area 
+
+[heading Description]
+This version of area calculation takes a strategy 
+
+[heading Header]
+`#include <boost/geometry/algorithms/area.hpp>`
+
+
+[endsect]
+
+[section:area1 area]
+
+Calculate area of a geometry. 
+
+[heading Synopsis]
+``template<typename Geometry>
+area_result<Geometry>::type area (Geometry const &geometry)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry] [A type fulfilling any Geometry concept ] [geometry] [A model of Geometry ]]
+]
+
+
+[heading Returns]
+The calculated area
+
+[heading Description]
+The function area returns the area of a polygon, ring, box using the default area-calculation strategy. Strategies are provided for cartesian and spherical coordinate systems The geometries should correct, polygons should be closed and according to the specified orientation (clockwise/counter clockwise) 
+
+[heading Header]
+`#include <boost/geometry/algorithms/area.hpp>`
+
+[heading Example]
+[area_polygon]
+[area_polygon_spherical]
+
+[endsect]
+
Added: sandbox/geometry/libs/geometry/doc/qbk/distance.qbk
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/distance.qbk	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,59 @@
+[section:distance0 distance]
+
+Calculate distance between two geometries. 
+
+[heading Synopsis]
+``template<typename Geometry1, typename Geometry2>
+distance_result<Geometry1, Geometry2>::type distance (Geometry1 const &geometry1, Geometry2 const &geometry2)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry1] [] [geometry1] [first geometry ]]
+[[Geometry2] [] [geometry2] [second geometry ]]
+]
+
+
+[heading Returns]
+the distance (either a double or a distance result, convertable to double) 
+
+[heading Description]
+The default strategy is used, belonging to the corresponding coordinate system of the geometries 
+
+[heading Header]
+`#include <boost/geometry/algorithms/distance.hpp>`
+
+
+[endsect]
+
+[section:distance1 distance]
+
+Calculate distance between two geometries with a specified strategy. 
+
+[heading Synopsis]
+``template<typename Geometry1, typename Geometry2, typename Strategy>
+strategy::distance::services::return_type<Strategy>::type distance (Geometry1 const &geometry1, Geometry2 const &geometry2, Strategy const &strategy)``
+
+[heading Parameters]
+
+[table
+[[Type] [Concept] [Name] [Description] ]
+[[Geometry1] [first geometry type ] [geometry1] [first geometry ]]
+[[Geometry2] [second geometry type ] [geometry2] [second geometry ]]
+[[Strategy] [] [strategy] [strategy to calculate distance between two points ]]
+]
+
+
+[heading Returns]
+the distance 
+
+[heading Description]
+
+
+[heading Header]
+`#include <boost/geometry/algorithms/distance.hpp>`
+
+
+[endsect]
+
Added: sandbox/geometry/libs/geometry/doc/qbk/geometry.qbk
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/geometry.qbk	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,42 @@
+[/==============================================================================
+    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)
+===============================================================================/]
+
+[library Boost.Geometry
+    [quickbook 1.5]
+    [version 1.0]
+    [authors [Gehrels, Barend], [Lalande, Bruno], [Loskot, Mateusz]]
+    [copyright 2010 Barend Gehrels, Bruno Lalande, Mateusz Loskot]
+    [purpose A generic library for geometry]
+    [license
+        Distributed under 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])
+    ]
+    [id geometry]
+]
+
+EXPERIMENTAL!
+
+[import ../../../../boost/geometry/geometries/point.hpp]
+[import ../../../../boost/geometry/algorithms/area.hpp]
+[import ../doxygen_input/sourcecode/doxygen_1.cpp]
+
+[section Introduction]
+This is the documentation of Boost Geometry.
+[endsect]
+
+[section Sample]
+[point]
+[endsect]
+
+[section Reference]
+[include area.qbk]
+[include distance.qbk]
+[endsect]
\ No newline at end of file
Added: sandbox/geometry/libs/geometry/doc/qbk/make_qbk.bat
==============================================================================
--- (empty file)
+++ sandbox/geometry/libs/geometry/doc/qbk/make_qbk.bat	2010-08-01 16:06:13 EDT (Sun, 01 Aug 2010)
@@ -0,0 +1,30 @@
+:: ===========================================================================
+::  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)
+:: ============================================================================
+
+:: Note, all of this is very experimental
+:: BSG, Aug 1, 2010
+
+
+@echo off
+
+doxygen
+
+set xml2qbk=..\..\..\..\other\programs\doxygen_xml2qbk\Debug\doxygen_xml2qbk.exe
+%xml2qbk% doxygen_output\xml\group__area.xml > area.qbk
+%xml2qbk% doxygen_output\xml\group__distance.xml > distance.qbk
+
+set xslt=c:\software\xsltproc\xml\bin\xsltproc.exe
+
+:: %xslt% reference.xsl doxygen_output\xml\classboost_1_1geometry_1_1point.xml > point.qbk
+:: %xslt% reference.xsl doxygen_output\xml\group__area.xml > area.qbk
+:: %xslt% reference.xsl doxygen_output\xml\area_8hpp.xml > area2.qbk
+
+
+bjam --toolset=msvc
\ No newline at end of file