From e3a686f138d37b910cc1ca411a0d7ee6431a8c69 Mon Sep 17 00:00:00 2001 From: Barend Gehrels Date: Sat, 20 Feb 2010 15:44:35 +0000 Subject: [PATCH] Added libs/geometry/doc folder with many docs [SVN r59775] --- doc/Doxyfile | 285 ++++++ doc/README.txt | 37 + doc/boost.png | Bin 0 -> 7253 bytes doc/boostbook.css | 290 +++++++ doc/design_notes.txt | 168 ++++ doc/development_notes.txt | 4 + doc/doxygen_enhance.py | 23 + doc/doxygen_input/ggl_doxygen_footer.html | 22 + doc/doxygen_input/ggl_doxygen_header.html | 24 + .../images/07_graph_route_example_svg.png | Bin 0 -> 74909 bytes .../images/07_graph_route_example_text.png | Bin 0 -> 33354 bytes doc/doxygen_input/images/centroid_polygon.png | Bin 0 -> 11860 bytes doc/doxygen_input/images/centroid_ring.png | Bin 0 -> 9504 bytes doc/doxygen_input/images/clip_linestring.png | Bin 0 -> 12485 bytes doc/doxygen_input/images/clip_polygon.png | Bin 0 -> 15628 bytes .../images/clip_segment_segment.png | Bin 0 -> 9015 bytes doc/doxygen_input/images/combine_box_box.png | Bin 0 -> 2378 bytes .../images/combine_box_point.png | Bin 0 -> 1872 bytes .../images/convexhull_polygon_polygon.png | Bin 0 -> 14674 bytes doc/doxygen_input/images/envelope_polygon.png | Bin 0 -> 12212 bytes doc/doxygen_input/images/linestring.png | Bin 0 -> 8095 bytes doc/doxygen_input/images/multi_polygon.png | Bin 0 -> 18629 bytes doc/doxygen_input/images/output_main.png | Bin 0 -> 1289 bytes doc/doxygen_input/images/polygon.png | Bin 0 -> 16173 bytes doc/doxygen_input/images/robust_float.png | Bin 0 -> 33394 bytes doc/doxygen_input/images/robust_stars.png | Bin 0 -> 119498 bytes .../images/robust_triangle_box.png | Bin 0 -> 15119 bytes doc/doxygen_input/images/robust_triangles.png | Bin 0 -> 32323 bytes doc/doxygen_input/images/set_a_ac.png | Bin 0 -> 15798 bytes doc/doxygen_input/images/set_adapt_turns.png | Bin 0 -> 11468 bytes .../images/set_int_right_union_left.png | Bin 0 -> 23900 bytes doc/doxygen_input/images/simplify_example.png | Bin 0 -> 13453 bytes .../images/simplify_linestring.png | Bin 0 -> 10037 bytes .../images/source/centroid_polygon.svg | 107 +++ .../images/source/centroid_ring.svg | 105 +++ .../images/source/clip_linestring.svg | 132 +++ .../images/source/clip_polygon.svg | 115 +++ .../images/source/clip_polygon_2.svg | 88 ++ .../images/source/combine_box_box.svg | 114 +++ .../images/source/combine_box_point.svg | 111 +++ .../source/convexhull_polygon_polygon.svg | 100 +++ .../images/source/envelope_polygon.svg | 100 +++ .../images/source/geometries.svg | 90 ++ .../images/source/intersection_results.svg | 495 +++++++++++ .../source/intersection_segment_segment.svg | 152 ++++ .../images/source/linestring_example.svg | 108 +++ .../images/source/polygon_example.svg | 121 +++ .../images/source/polygon_example1.svg | 111 +++ doc/doxygen_input/images/source/ring.svg | 92 ++ .../images/source/simplify_example.svg | 81 ++ .../images/source/simplify_linestring.svg | 100 +++ .../images/source/union_box_box.svg | 107 +++ .../images/source/within_polygon.svg | 125 +++ .../images/source/within_polygon_example.svg | 106 +++ .../images/source/within_ring.svg | 127 +++ doc/doxygen_input/images/speed_comparison.png | Bin 0 -> 10229 bytes .../images/svg_convex_hull_cities.png | Bin 0 -> 11707 bytes .../images/svg_convex_hull_country.png | Bin 0 -> 17179 bytes .../images/svg_intersection_countries.png | Bin 0 -> 90377 bytes .../images/svg_intersection_polygon_box.png | Bin 0 -> 15835 bytes .../images/svg_intersection_polygon_ring.png | Bin 0 -> 28128 bytes .../images/svg_intersection_ring_box.png | Bin 0 -> 11951 bytes .../images/svg_intersection_ring_ring.png | Bin 0 -> 24320 bytes .../images/svg_intersection_roads.png | Bin 0 -> 36509 bytes .../images/svg_simplify_country.png | Bin 0 -> 27598 bytes .../images/svg_simplify_road.png | Bin 0 -> 9998 bytes .../images/svg_union_polygon_box.png | Bin 0 -> 17850 bytes .../images/svg_union_polygon_ring.png | Bin 0 -> 29070 bytes .../images/svg_union_ring_box.png | Bin 0 -> 14070 bytes .../images/svg_union_ring_ring.png | Bin 0 -> 25725 bytes doc/doxygen_input/images/union_box_box.png | Bin 0 -> 1698 bytes doc/doxygen_input/images/within_polygon.png | Bin 0 -> 12341 bytes .../images/within_polygon_example.png | Bin 0 -> 16116 bytes doc/doxygen_input/images/within_ring.png | Bin 0 -> 10074 bytes .../images/x01_qt_example_output.png | Bin 0 -> 8445 bytes .../x02_numeric_adaptor_example_output.png | Bin 0 -> 8828 bytes .../pages/doxygen_a_design_rationale.hpp | 809 ++++++++++++++++++ doc/doxygen_input/pages/doxygen_b_sets.hpp | 214 +++++ .../pages/doxygen_c_strategy_rationale.hpp | 79 ++ .../pages/doxygen_d_robustness.hpp | 150 ++++ doc/doxygen_input/pages/doxygen_examples.hpp | 242 ++++++ doc/doxygen_input/pages/doxygen_mainpage.hpp | 96 +++ doc/doxygen_input/pages/doxygen_pages.hpp | 431 ++++++++++ .../pages/doxygen_z_article09.hpp | 238 ++++++ doc/doxygen_input/sourcecode/boost.vsprops | 20 + doc/doxygen_input/sourcecode/doxygen_1.cpp | 464 ++++++++++ doc/doxygen_input/sourcecode/doxygen_1.vcproj | 194 +++++ doc/doxygen_input/sourcecode/doxygen_2.cpp | 156 ++++ doc/doxygen_input/sourcecode/doxygen_2.vcproj | 182 ++++ doc/doxygen_input/sourcecode/doxygen_3.cpp | 75 ++ doc/doxygen_input/sourcecode/doxygen_3.vcproj | 182 ++++ doc/doxygen_input/sourcecode/doxygen_4.cpp | 326 +++++++ doc/doxygen_input/sourcecode/doxygen_4.vcproj | 182 ++++ doc/doxygen_input/sourcecode/doxygen_5.cpp | 136 +++ doc/doxygen_input/sourcecode/doxygen_5.vcproj | 182 ++++ .../sourcecode/doxygen_examples.sln | 43 + .../gis/projections/doxygen_modules.hpp | 82 ++ doc/ggl.png | Bin 0 -> 10540 bytes doc/ggl.svg | 150 ++++ doc/make_documentation.bat | 9 + doc/overlay/de9im_polygons.ppt | Bin 0 -> 701440 bytes doc/overlay/de9im_segments.ppt | Bin 0 -> 407552 bytes doc/overlay/intersection.ppt | Bin 0 -> 203264 bytes doc/overlay/overlay.ppt | Bin 0 -> 321536 bytes .../overlay_spatial_set_operations.ppt | Bin 0 -> 113664 bytes doc/proposed_boost.png | Bin 0 -> 7253 bytes doc/quickbook/Jamfile.v2 | 36 + doc/quickbook/algorithm_area.qbk | 89 ++ doc/quickbook/algorithm_distance.qbk | 32 + doc/quickbook/algorithms.qbk | 16 + doc/quickbook/arithmetic.qbk | 233 +++++ doc/quickbook/boolean.qbk | 249 ++++++ doc/quickbook/cs.qbk | 15 + doc/quickbook/design.qbk | 22 + doc/quickbook/design_deprecated/concepts.qbk | 15 + .../design_deprecated/coordinate_system.qbk | 15 + .../design_deprecated/coordinate_type.qbk | 15 + doc/quickbook/design_deprecated/dimension.qbk | 15 + .../design_deprecated/geometry_type.qbk | 15 + .../design_deprecated/introduction.qbk | 45 + doc/quickbook/design_deprecated/templates.qbk | 15 + doc/quickbook/design_deprecated/traits.qbk | 15 + doc/quickbook/design_rationale.qbk | 758 ++++++++++++++++ doc/quickbook/extensions.qbk | 50 ++ doc/quickbook/geometries.qbk | 36 + doc/quickbook/geometry.qbk | 119 +++ doc/quickbook/geometry_concepts.qbk | 232 +++++ doc/quickbook/geometry_types.qbk | 209 +++++ doc/quickbook/html/boostbook.css | 598 +++++++++++++ .../html/images/quickstart_output.png | Bin 0 -> 1289 bytes doc/quickbook/html/images/set_a_ac.png | Bin 0 -> 15798 bytes doc/quickbook/html/images/set_adapt_turns.png | Bin 0 -> 11468 bytes .../html/images/set_int_right_union_left.png | Bin 0 -> 23900 bytes doc/quickbook/introduction.qbk | 52 ++ doc/quickbook/iterators.qbk | 15 + doc/quickbook/misc.qbk | 172 ++++ doc/quickbook/overview.qbk | 21 + doc/quickbook/quickstart.qbk | 63 ++ doc/quickbook/reference.qbk | 23 + doc/quickbook/references.qbk | 86 ++ doc/quickbook/strategies.qbk | 17 + doc/quickbook/strategy_rationale.qbk | 148 ++++ doc/quickbook/toc.qbk | 182 ++++ doc/quickbook/tutorial.qbk | 25 + doc/quickbook/utilities.qbk | 15 + doc/roadmap.doc | Bin 0 -> 177664 bytes doc/status.txt | 65 ++ doc/status.xls | Bin 0 -> 25088 bytes doc/testcases/get_turn_info.ppt | Bin 0 -> 498176 bytes doc/testcases/get_turn_info.xls | Bin 0 -> 133120 bytes doc/testcases/multi_overlay_cases.ppt | Bin 0 -> 33792 bytes doc/testcases/overlay_cases.ppt | Bin 0 -> 700416 bytes ...strategy_segment_intersection_obsolete.ppt | Bin 0 -> 356352 bytes 153 files changed, 12010 insertions(+) create mode 100644 doc/Doxyfile create mode 100644 doc/README.txt create mode 100644 doc/boost.png create mode 100644 doc/boostbook.css create mode 100644 doc/design_notes.txt create mode 100644 doc/development_notes.txt create mode 100755 doc/doxygen_enhance.py create mode 100644 doc/doxygen_input/ggl_doxygen_footer.html create mode 100644 doc/doxygen_input/ggl_doxygen_header.html create mode 100644 doc/doxygen_input/images/07_graph_route_example_svg.png create mode 100644 doc/doxygen_input/images/07_graph_route_example_text.png create mode 100644 doc/doxygen_input/images/centroid_polygon.png create mode 100644 doc/doxygen_input/images/centroid_ring.png create mode 100644 doc/doxygen_input/images/clip_linestring.png create mode 100644 doc/doxygen_input/images/clip_polygon.png create mode 100644 doc/doxygen_input/images/clip_segment_segment.png create mode 100644 doc/doxygen_input/images/combine_box_box.png create mode 100644 doc/doxygen_input/images/combine_box_point.png create mode 100644 doc/doxygen_input/images/convexhull_polygon_polygon.png create mode 100644 doc/doxygen_input/images/envelope_polygon.png create mode 100644 doc/doxygen_input/images/linestring.png create mode 100644 doc/doxygen_input/images/multi_polygon.png create mode 100644 doc/doxygen_input/images/output_main.png create mode 100644 doc/doxygen_input/images/polygon.png create mode 100644 doc/doxygen_input/images/robust_float.png create mode 100644 doc/doxygen_input/images/robust_stars.png create mode 100644 doc/doxygen_input/images/robust_triangle_box.png create mode 100644 doc/doxygen_input/images/robust_triangles.png create mode 100644 doc/doxygen_input/images/set_a_ac.png create mode 100644 doc/doxygen_input/images/set_adapt_turns.png create mode 100644 doc/doxygen_input/images/set_int_right_union_left.png create mode 100644 doc/doxygen_input/images/simplify_example.png create mode 100644 doc/doxygen_input/images/simplify_linestring.png create mode 100644 doc/doxygen_input/images/source/centroid_polygon.svg create mode 100644 doc/doxygen_input/images/source/centroid_ring.svg create mode 100644 doc/doxygen_input/images/source/clip_linestring.svg create mode 100644 doc/doxygen_input/images/source/clip_polygon.svg create mode 100644 doc/doxygen_input/images/source/clip_polygon_2.svg create mode 100644 doc/doxygen_input/images/source/combine_box_box.svg create mode 100644 doc/doxygen_input/images/source/combine_box_point.svg create mode 100644 doc/doxygen_input/images/source/convexhull_polygon_polygon.svg create mode 100644 doc/doxygen_input/images/source/envelope_polygon.svg create mode 100644 doc/doxygen_input/images/source/geometries.svg create mode 100644 doc/doxygen_input/images/source/intersection_results.svg create mode 100644 doc/doxygen_input/images/source/intersection_segment_segment.svg create mode 100644 doc/doxygen_input/images/source/linestring_example.svg create mode 100644 doc/doxygen_input/images/source/polygon_example.svg create mode 100644 doc/doxygen_input/images/source/polygon_example1.svg create mode 100644 doc/doxygen_input/images/source/ring.svg create mode 100644 doc/doxygen_input/images/source/simplify_example.svg create mode 100644 doc/doxygen_input/images/source/simplify_linestring.svg create mode 100644 doc/doxygen_input/images/source/union_box_box.svg create mode 100644 doc/doxygen_input/images/source/within_polygon.svg create mode 100644 doc/doxygen_input/images/source/within_polygon_example.svg create mode 100644 doc/doxygen_input/images/source/within_ring.svg create mode 100644 doc/doxygen_input/images/speed_comparison.png create mode 100644 doc/doxygen_input/images/svg_convex_hull_cities.png create mode 100644 doc/doxygen_input/images/svg_convex_hull_country.png create mode 100644 doc/doxygen_input/images/svg_intersection_countries.png create mode 100644 doc/doxygen_input/images/svg_intersection_polygon_box.png create mode 100644 doc/doxygen_input/images/svg_intersection_polygon_ring.png create mode 100644 doc/doxygen_input/images/svg_intersection_ring_box.png create mode 100644 doc/doxygen_input/images/svg_intersection_ring_ring.png create mode 100644 doc/doxygen_input/images/svg_intersection_roads.png create mode 100644 doc/doxygen_input/images/svg_simplify_country.png create mode 100644 doc/doxygen_input/images/svg_simplify_road.png create mode 100644 doc/doxygen_input/images/svg_union_polygon_box.png create mode 100644 doc/doxygen_input/images/svg_union_polygon_ring.png create mode 100644 doc/doxygen_input/images/svg_union_ring_box.png create mode 100644 doc/doxygen_input/images/svg_union_ring_ring.png create mode 100644 doc/doxygen_input/images/union_box_box.png create mode 100644 doc/doxygen_input/images/within_polygon.png create mode 100644 doc/doxygen_input/images/within_polygon_example.png create mode 100644 doc/doxygen_input/images/within_ring.png create mode 100644 doc/doxygen_input/images/x01_qt_example_output.png create mode 100644 doc/doxygen_input/images/x02_numeric_adaptor_example_output.png create mode 100644 doc/doxygen_input/pages/doxygen_a_design_rationale.hpp create mode 100644 doc/doxygen_input/pages/doxygen_b_sets.hpp create mode 100644 doc/doxygen_input/pages/doxygen_c_strategy_rationale.hpp create mode 100644 doc/doxygen_input/pages/doxygen_d_robustness.hpp create mode 100644 doc/doxygen_input/pages/doxygen_examples.hpp create mode 100644 doc/doxygen_input/pages/doxygen_mainpage.hpp create mode 100644 doc/doxygen_input/pages/doxygen_pages.hpp create mode 100644 doc/doxygen_input/pages/doxygen_z_article09.hpp create mode 100644 doc/doxygen_input/sourcecode/boost.vsprops create mode 100644 doc/doxygen_input/sourcecode/doxygen_1.cpp create mode 100644 doc/doxygen_input/sourcecode/doxygen_1.vcproj create mode 100644 doc/doxygen_input/sourcecode/doxygen_2.cpp create mode 100644 doc/doxygen_input/sourcecode/doxygen_2.vcproj create mode 100644 doc/doxygen_input/sourcecode/doxygen_3.cpp create mode 100644 doc/doxygen_input/sourcecode/doxygen_3.vcproj create mode 100644 doc/doxygen_input/sourcecode/doxygen_4.cpp create mode 100644 doc/doxygen_input/sourcecode/doxygen_4.vcproj create mode 100644 doc/doxygen_input/sourcecode/doxygen_5.cpp create mode 100644 doc/doxygen_input/sourcecode/doxygen_5.vcproj create mode 100644 doc/doxygen_input/sourcecode/doxygen_examples.sln create mode 100644 doc/extensions/gis/projections/doxygen_modules.hpp create mode 100644 doc/ggl.png create mode 100644 doc/ggl.svg create mode 100644 doc/make_documentation.bat create mode 100644 doc/overlay/de9im_polygons.ppt create mode 100644 doc/overlay/de9im_segments.ppt create mode 100644 doc/overlay/intersection.ppt create mode 100644 doc/overlay/overlay.ppt create mode 100644 doc/overlay/overlay_spatial_set_operations.ppt create mode 100644 doc/proposed_boost.png create mode 100644 doc/quickbook/Jamfile.v2 create mode 100644 doc/quickbook/algorithm_area.qbk create mode 100644 doc/quickbook/algorithm_distance.qbk create mode 100644 doc/quickbook/algorithms.qbk create mode 100644 doc/quickbook/arithmetic.qbk create mode 100644 doc/quickbook/boolean.qbk create mode 100644 doc/quickbook/cs.qbk create mode 100644 doc/quickbook/design.qbk create mode 100644 doc/quickbook/design_deprecated/concepts.qbk create mode 100644 doc/quickbook/design_deprecated/coordinate_system.qbk create mode 100644 doc/quickbook/design_deprecated/coordinate_type.qbk create mode 100644 doc/quickbook/design_deprecated/dimension.qbk create mode 100644 doc/quickbook/design_deprecated/geometry_type.qbk create mode 100644 doc/quickbook/design_deprecated/introduction.qbk create mode 100644 doc/quickbook/design_deprecated/templates.qbk create mode 100644 doc/quickbook/design_deprecated/traits.qbk create mode 100644 doc/quickbook/design_rationale.qbk create mode 100644 doc/quickbook/extensions.qbk create mode 100644 doc/quickbook/geometries.qbk create mode 100644 doc/quickbook/geometry.qbk create mode 100644 doc/quickbook/geometry_concepts.qbk create mode 100644 doc/quickbook/geometry_types.qbk create mode 100644 doc/quickbook/html/boostbook.css create mode 100644 doc/quickbook/html/images/quickstart_output.png create mode 100644 doc/quickbook/html/images/set_a_ac.png create mode 100644 doc/quickbook/html/images/set_adapt_turns.png create mode 100644 doc/quickbook/html/images/set_int_right_union_left.png create mode 100644 doc/quickbook/introduction.qbk create mode 100644 doc/quickbook/iterators.qbk create mode 100644 doc/quickbook/misc.qbk create mode 100644 doc/quickbook/overview.qbk create mode 100644 doc/quickbook/quickstart.qbk create mode 100644 doc/quickbook/reference.qbk create mode 100644 doc/quickbook/references.qbk create mode 100644 doc/quickbook/strategies.qbk create mode 100644 doc/quickbook/strategy_rationale.qbk create mode 100644 doc/quickbook/toc.qbk create mode 100644 doc/quickbook/tutorial.qbk create mode 100644 doc/quickbook/utilities.qbk create mode 100644 doc/roadmap.doc create mode 100644 doc/status.txt create mode 100644 doc/status.xls create mode 100644 doc/testcases/get_turn_info.ppt create mode 100644 doc/testcases/get_turn_info.xls create mode 100644 doc/testcases/multi_overlay_cases.ppt create mode 100644 doc/testcases/overlay_cases.ppt create mode 100644 doc/testcases/strategy_segment_intersection_obsolete.ppt diff --git a/doc/Doxyfile b/doc/Doxyfile new file mode 100644 index 000000000..e32c567ad --- /dev/null +++ b/doc/Doxyfile @@ -0,0 +1,285 @@ +# 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 = c:/svn/boost-geometry \ + c:/svn/boost-geometry/libs/geometry/doc/doxygen_input/pages +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/core \ + ../../../boost/geometry/algorithms \ + ../../../boost/geometry/algorithms/detail \ + ../../../boost/geometry/algorithms/overlay \ + ../../../boost/geometry/arithmetic \ + ../../../boost/geometry/geometries/concepts \ + ../../../boost/geometry/geometries/concepts/detail \ + ../../../boost/geometry/geometries \ + ../../../boost/geometry/geometries/adapted \ + ../../../boost/geometry/geometries/register \ + ../../../boost/geometry/iterators \ + ../../../boost/geometry/multi/algorithms \ + ../../../boost/geometry/multi/algorithms/detail \ + ../../../boost/geometry/multi/core \ + ../../../boost/geometry/multi/geometries \ + ../../../boost/geometry/multi/geometries/concepts \ + ../../../boost/geometry/multi/iterators \ + ../../../boost/geometry/policies \ + ../../../boost/geometry/policies/relate \ + ../../../boost/geometry/strategies \ + ../../../boost/geometry/strategies/concepts \ + ../../../boost/geometry/strategies/agnostic \ + ../../../boost/geometry/strategies/cartesian \ + ../../../boost/geometry/strategies/spherical \ + ../../../boost/geometry/strategies/transform \ + ../../../boost/geometry/util \ + ../../../boost/geometry/extensions/io/svg \ + ./doxygen_input/pages +INPUT_ENCODING = UTF-8 +FILE_PATTERNS = *.hpp +RECURSIVE = NO +EXCLUDE = ../../../boost/geometry/util/builder.hpp \ + ../../../boost/geometry/algorithms/parse.hpp \ + ../../../boost/geometry/algorithms/point_on_line.hpp \ + ../../../boost/geometry/strategies/cartesian/cart_intersect.hpp \ + ../../../boost/geometry/util/distance_sort.hpp \ + ./doxygen_extension_examples.hpp +EXCLUDE_SYMLINKS = NO +EXCLUDE_PATTERNS = +EXCLUDE_SYMBOLS = +EXAMPLE_PATH = . .. ../example \ + doxygen_input/sourcecode \ + ../../../boost/geometry/geometries \ + ../../../boost/geometry/strategies \ + ../../../boost/geometry/strategies/cartesian \ + ../../../boost/geometry/algorithms +EXAMPLE_PATTERNS = +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = doxygen_input/images +INPUT_FILTER = +FILTER_PATTERNS = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = YES +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 = doxygen_input/ggl_doxygen_header.html +HTML_FOOTER = doxygen_input/ggl_doxygen_footer.html +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 = NO +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 diff --git a/doc/README.txt b/doc/README.txt new file mode 100644 index 000000000..0cd80e938 --- /dev/null +++ b/doc/README.txt @@ -0,0 +1,37 @@ +Generic Geometry Library (ggl) + +Website: http://geometrylibrary.geodan.nl/ + +Copyright © 1995-2009 Barend Gehrels, Geodan Holding B.V. Amsterdam, the Netherlands. +Copyright © 2008-2009 Bruno Lalande, Paris, France. + +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 + +Introduction + +The Generic Geometry Library (currently in "preview 4") provides a generic +implementation of geometry algorithms, working with user-defined geometries. + +The algorithms include some well-known and often needed algorithms as +point-in-polygon, polygon area, point-to-point distance, point-to-line +distance, line clipping and polygon clipping, convex hulls. It also contains +transformation algorithms, map projections and selection algorithms. + +Besides algorithms the library provides geometry classes which might be used, +but the generic algorithms do not depend on them. + +The library follows existing conventions: + + * conventions from boost + * conventions from the std library + * OGC names and conventions (see the page about OGC) + +This Generic Geometry Library (ggl) is aimed to be proposed to the Boost +Library Collection. + +The library can be downloaded from the Boost Sandbox or as a zipfile, +go to the Download page for more information: + +http://geometrylibrary.geodan.nl/download.html diff --git a/doc/boost.png b/doc/boost.png new file mode 100644 index 0000000000000000000000000000000000000000..9912755afecf9600e4eb9da6ed8c962d352d7ef6 GIT binary patch literal 7253 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 literal 0 HcmV?d00001 diff --git a/doc/boostbook.css b/doc/boostbook.css new file mode 100644 index 000000000..81bb80618 --- /dev/null +++ b/doc/boostbook.css @@ -0,0 +1,290 @@ +/* Generated by KompoZer */ +body { + margin: 1em; + font-family: sans-serif; +} +p { + text-align: left; + font-size: 10pt; + line-height: 1.15; +} +p tt.computeroutput { + font-size: 9pt; +} +pre.synopsis { + margin: 1pc 4% 0pc; + padding: 0.5pc; + font-size: 90%; +} +.programlisting, .screen { + margin: 1pc 4% 0pc; + padding: 0.5pc; + font-size: 9pt; + display: block; +} +td .programlisting, td .screen { + margin: 0pc; + padding: 0pc; +} +h1, h2, h3, h4, h5, h6 { + margin: 1em 0em 0.5em; + text-align: left; + font-weight: bold; +} +h1 { +} +h2 { +} +h3 { +} +h4 { +} +h5 { +} +h6 { +} +title, h1.title, h2.title h3.title, h4.title, h5.title, h6.title, .refentrytitle { + font-weight: bold; + margin-bottom: 1pc; +} +h1.title { + font-size: 140%; +} +h2.title { + font-size: 140%; +} +h3.title { + font-size: 130%; +} +h4.title { + font-size: 120%; +} +h5.title { + font-size: 110%; +} +h6.title { + font-size: 100%; +} +.section h1 { + margin: 0em 0em 0.5em; + font-size: 140%; +} +.section h2 { + font-size: 140%; +} +.section h3 { + font-size: 130%; +} +.section h4 { + font-size: 120%; +} +.section h5 { + font-size: 110%; +} +.section h6 { + font-size: 100%; +} +h1 tt.computeroutput { + font-size: 140%; +} +h2 tt.computeroutput { + font-size: 140%; +} +h3 tt.computeroutput { + font-size: 130%; +} +h4 tt.computeroutput { + font-size: 120%; +} +h5 tt.computeroutput { + font-size: 110%; +} +h6 tt.computeroutput { + font-size: 100%; +} +h3.author { + font-size: 100%; +} +li { + font-size: 10pt; + line-height: 1.3; +} +ul { + text-align: left; +} +ol { + text-align: left; +} +a { + text-decoration: none; +} +a:hover { + text-decoration: underline; +} +.spirit-nav { + text-align: right; +} +.spirit-nav a { + color: white; + padding-left: 0.5em; +} +.spirit-nav img { + border-width: 0px; +} +.toc { + margin: 1pc 4% 0pc; + padding: 0.1pc 1pc; + font-size: 80%; + line-height: 1.15; +} +.boost-toc { + padding: 0.5pc; + float: right; +} +.table-title, div.table p.title { + margin-left: 4%; + padding-right: 0.5em; + padding-left: 0.5em; +} +.informaltable table, .table table { + width: 92%; + margin-left: 4%; + margin-right: 4%; +} +div.informaltable table, div.table table { + padding: 4px; +} +div.informaltable table tr td, div.table table tr td { + padding: 0.5em; + text-align: left; + font-size: 9pt; +} +div.informaltable table tr th, div.table table tr th { + border: 1pt solid white; + padding: 0.5em; + font-size: 80%; +} +div.note, div.tip, div.important, div.caution, div.warning, p.blurb { + margin: 1pc 4% 0pc; + padding: 0.5pc; + font-size: 9pt; + line-height: 1.2; + display: block; +} +p.blurb img { + padding: 1pt; +} +div.variablelist dl dt, span.term { + font-weight: bold; + font-size: 10pt; +} +div.variablelist table tbody tr td { + margin: 0em 0em 0.5em; + padding: 0em 2em 0em 0em; + text-align: left; + vertical-align: top; + font-size: 10pt; + line-height: 1; +} +div.variablelist dl dt { + margin-bottom: 0.2em; +} +div.variablelist dl dd { + margin: 0em 0em 0.5em 2em; + font-size: 10pt; +} +div.variablelist table tbody tr td p, div.variablelist dl dd p { + margin: 0em 0em 0.5em; + line-height: 1; +} +span.title { + font-style: italic; +} +span.underline { + text-decoration: underline; +} +span.strikethrough { + text-decoration: line-through; +} +div div.legalnotice p { + text-align: left; +} +@media screen { + a { color: #005a9c; +} + a:visited { color: #9c5a9c; + } + h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover, h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited { text-decoration: none; + color: #000000; + } + .keyword { color: #0000aa; + } + .identifier { color: #000000; + } + .special { color: #707070; + } + .preprocessor { color: #402080; + } + .char { color: teal; + } + .comment { color: #800000; + } + .string { color: teal; + } + .number { color: teal; + } + .white_bkd { background-color: #ffffff; + } + .dk_grey_bkd { background-color: #999999; + } + .copyright { color: #666666; + font-size: small; + } + div div.legalnotice p { color: #666666; + } + pre.synopsis { border: 1px solid #dcdcdc; + } + .programlisting, .screen { border: 1px solid #dcdcdc; + } + td .programlisting, td .screen { border: 0px solid #dcdcdc; + } + div.note, div.tip, div.important, div.caution, div.warning, p.blurb { border: 1px solid #dcdcdc; + } + .toc { border: 1px solid #dcdcdc; + } + div.informaltable table tr td, div.table table tr td { border: 1px solid #dcdcdc; + } + div.informaltable table tr th, div.table table tr th { border: 1px solid #dcdcdc; + background-color: #f0f0f0; + } + span.highlight { color: #00a000; + } +} +@media print { + a { color: black; +} + a:visited { color: black; + } + .spirit-nav { display: none; + } + pre.synopsis { border: 1px solid gray; + } + .programlisting, .screen { border: 1px solid gray; + } + td .programlisting, td .screen { border: 0px solid #dcdcdc; + } + .toc { border: 1px solid gray; + } + .informaltable table, .table table { border: 1px solid gray; + border-collapse: collapse; + } + div.informaltable table tr td, div.table table tr td { border: 1px solid gray; + } + div.informaltable table tr th, div.table table tr th { border: 1px solid gray; + } + span.highlight { font-weight: bold; + } +} +span.inlinemediaobject img { + vertical-align: middle; +} diff --git a/doc/design_notes.txt b/doc/design_notes.txt new file mode 100644 index 000000000..400e2b0c8 --- /dev/null +++ b/doc/design_notes.txt @@ -0,0 +1,168 @@ +Notes for Bruno / documentation + +1) BOX CONCEPT + +concepts/box_traits.hpp +a) static ints min_corner/max_corner to select min/max corner +b) namespace traits let user define: + -> traits::box_point::type LATERON made generic, this is geometry::point_type::type for everything + -> traits::box_access::get and set (LATERON RENAMED TO index_access AND GOT MORE TEMPLATE PARAMETERS) + Note that these concepts are NOT worked out anymore for our geometries + They are empty and should be specialized by the user. The + specialization of the predeclared box is in geometries/box.hpp +c) namespace support to use: + support::box_point::type for the type of the point of the box + support::box_coordinate::type for the coordinate type, double etc. + + LATERON CHANGED TO GET IT CONSISTENT (and removed support prefix): + point_type::type for the type of the point of the box (or any geometry) + coordinate_type::type for the coordinate type, double etc. of any geometry + +4) bget/bset like get/set for point point, but here for box (cannot override, GCC complains, might be with enable_if) + -> lateron renamed to get_indexed/set_indexed to harmonize with segment + +Note on concept compared with point: +- it is smaller because most things are already in point +- the default traits classes are empty, propose to do that in point also +- I decided to not give directly access to the points of the box. Because users might + have a box defined like this: struct box { double left,right,top,bottom; }; they have no point + at all. + However, they still should define a "point type", with meta-functions, that would be the type that fits with the box. + It also defines the coordinate system and dimensions. + + +Furthermore: +-> removed init enumerations and constructors +-> added instead of constructor a "init_inverse" utility LATERON RENAMED TO make_inverse and assign_inverse + + +2) POINT CONCEPT +didn't change the concept but: +-> removed in the source code everything using constructor with two values +-> removed the initialization +-> points should still have a default constructor, there is nothing to do about that. No problem I think +-> added instead of the constructor a "make" object generator set + +changed the concept files a bit: +-> moved usages of our points (coordinate_type etc) to point.hpp + so specialization is now required for custom point + -> THIS INVALIDATES ONE OF THE WELL FORM POINTS! + -> THIS REQUIRES USERS TO ALWAYS DEFINE 5 TRAIT METAFUNCTIONS + -> THEREFORE WE MIGHT ADD A MACRO (OR A FEW MACRO'S) TO REGISTER A CUSTOM POINT + +-> moved folder "concept/adapted" to "geometries/adapted" because, actually, it implements the concepts but it does not + define the concepts + + +SUGGESTIONS / CONSIDERATIONS: +-> I wouldn't be against merging the files coordinate.hpp, dimension.hpp, system.hpp and access.hpp to one file + "point_traits.hpp" (or "point_meta.hpp") to have the point concept defined in one place. + Like with box. + I ALREADY DID THIS. + +-> An idea would be that "*_concept.hpp" is renamed to "*_concept_check.hpp" and "*_traits.hpp" renamed to "*_concept.hpp" + because that last is what actually defines the concept, that first checks the concept. + However, the checker hpp must include the definition hpp, and all sources should check, so like now they include + "*_concept.hpp" and that is OK. + SO THIS SUGGESTION IS REDRAWN (?) + Still find it a bit unclear / confusing where is really the concept defined. In the traits? In the concept? In the dispatch? + +-> I wondered why the get function didn't return a const ref. But I understand. The value inside the geometry + object might be calculated (e.g. a planet, in time). So it has to return the value. + I first did change it but later on reverted it. + SO THIS SUGGESTION IS NOT VALID + + +QUESTIONS: +-> can ConstPoint be baseclass and Point derived such that it only additionally checks write access? + Or, maybe better that Point has a BOOST_CONCEPT_ASSERT from ConstPoint somewhere + IF yes, same for box + PROBABLY NOT + +-> name of a 2 or 3D (or ND) circle: this is nearly impossible. Wikipedia gives "ball" (meaning only the + interior), n-sphere, hypersphere (>3d). n-sphere was mentioned on the list (e.g. by Bruno), there were objections + I combined all and come up with "sphercle" as appropriate :-) + However, didn't commit that, too funny. Probably nsphere is the most appropriate. So that's how it is now... + + Objections to n-sphere are no problem as we still define a typedef "circle" and "sphere" for the 2D, 3D cases + + + +3) CONCEPTS IN GENERAL +We had the get/set functionality. It has proved very useful. +I made a bget/bset to set bounds of a box in a similar way. +THIS IS NOW CHANGED TO get_indexed/set_indexed to set by index of a box/segment/(n-sphere?). + +However, it can and should be slightly more generic. + +How to set the center of the circle? set_center? (later) NO, THIS IS NOW ALSO GET/SET, see below + +We had also the generic "support::coordinate

::type" function (and dimension). It would be useful if the same +function could be used for all geometries. + +So I added one other level of indirection, by using again tag dispatching. I also decided to remove the namespace "support", +because it is functionality even for the end user (e.g. getting the dimension of a geometry). It is generic functionality, +just like "distance". + + +So it is now, sample with coordinate type: + +1) one generic "coordinate_type::type" metafunction (typedef within a struct) +2) forwarding its call (using remove_const) to a core_dispatch::coordinate_type::type metafunction. +(That one should live in namespace core_dispatch. The reason for that is that functionality within "dispatch", such as +distance implementations, often states "coordinate_type::type" and there 1) is wanted, not 2) +3) per geometry the core_dispatch set is specialized, forwarding its call to "traits::coordinate_type" to be able +to specialize user defined geometries +4) the "traits::coordinate_type" meta function will probably call the geometry::coordinate_type type using a typedef, +but that is just how it is implemented. Custom types can also define it as double or so. + +This system is applied for the next meta-functions, for ALL geometries: +- point_type::type (even point has it, defining itself, the rest of course defines the used point) +- coordinate_type::type +- dimension::value +- coordinate_system::type for coordinate system + +This system is also applied for the next meta-functions, for SOME geometries: +access::get and access::set functions to get/set values (only applicable for point and n-sphere) +indexed_access::get and ::set functions to get/set boundary values (applicable for box, maybe sphere, segment) + (for segment the name "bound" was not convenient. There are min_corner/max_corner consts) + +radius_access::get and ::set functions to get/set radius of an n-sphere, I made this templated by dimension also + to enable ellipses to get a radius per dimension. The n-sphere asserts that it is zero. +radius_type::get and ::set to define the type of the radius of an n-sphere (lateron ellipse) + + +Note that this system is convenient, also e.g. for the OGC specifications where "dimension" can be asked to any geometry. Dimension +is just for convenience, it just using + + +4) PLACE OF CONCEPTS FOLDER +core is a new folder, containing things earlier in concepts. I found the name concepts a little inappropriate because it also +contains functions as "get", "set", etc, things to really use. There is now: +/geometry/core +/geometry/concepts +/geometry/dispatch + +It still might be changed a littlebit, adding a "traits" folder would be more consistent. + + +5) DISTANCE RESULT +changed to template, see mail Phil Endecott with suggestions + +6) ALGORITHMS +added generic: +"assign" to assign values, various overloads +"make", idem but returning the geometry +"transform" to transform coordinate systems +"convert" to convert between geometry types, e.g., a BOX (2 corners) -> RING (5 points) +"parse" to assign string-ed values, this was first in projections -> WILL BE EXTENDED +"buffer" is the old "grow" with a value -> FOR FUTURE EXTENSION +"selected" to return if an object is inside or close to a specified point value +changed: +"centroid" has now two versions, one returning centroid +"envelope" idem + + + +7) STRATEGIES +they are now organized per coordinate system diff --git a/doc/development_notes.txt b/doc/development_notes.txt new file mode 100644 index 000000000..6ee51b727 --- /dev/null +++ b/doc/development_notes.txt @@ -0,0 +1,4 @@ +Content of this document has been moved to Wiki: + +http://trac.osgeo.org/ggl/wiki/Developer/Guidelines +http://trac.osgeo.org/ggl/wiki/Developer/UnitTests diff --git a/doc/doxygen_enhance.py b/doc/doxygen_enhance.py new file mode 100755 index 000000000..f256d698b --- /dev/null +++ b/doc/doxygen_enhance.py @@ -0,0 +1,23 @@ +import sys + +args = sys.argv[1:] +if len(args) != 1: + raise SystemExit("Usage: doxygen_enhance ") + + +# 1) set variable for doxygen_contents to be posted +file_in = open(args[0], 'r') +doxygen_contents = file_in.read() + +doxygen_contents = doxygen_contents.replace('Modules', 'Function overview') +doxygen_contents = doxygen_contents.replace('Related Pages', 'Main pages') +doxygen_contents = doxygen_contents.replace('Main Page', 'Introduction') +doxygen_contents = doxygen_contents.replace('

  • Namespaces
  • ', '') + +doxygen_contents = doxygen_contents.replace('

    Modules

    Here is a list of all modules: