Boost logo

Boost :

Subject: [boost] Preview 4 of the Generic Geometry Library (ggl)
From: Barend Gehrels (barend_at_[hidden])
Date: 2009-02-17 06:59:00

Dear list,

It is a pleasure for us to present the fourth preview of the Generic
Geometry Library.

This time we've added the library to the SVN repository at boost,

To store the library under a proper name, "ggl" is used, which stands
for Generic Geometry Library. Before this we called it just Geometry
Library, but we think Generic is appropriate from this version on.

The first three previews were sent to this list in January, March and
October 2008. Since then everything has been revised and reworked again,
based on comments from the list. Thanks for all your comments!

Concepts are now applied for all geometries. Algorithms now take any
geometry fulfilling the concepts, and automatically take the right
version of the underlying implementation. Ranges are now used instead of
.begin()/end(). Tag dispatching is used instead of SFINAE.

Transformations: previously these were just explained as an example, now
  transformations are included in the library, either to go from one
coordinate system to another (for example from spherical to cartesian3D)
or to translate/rotate/scale/map points from one Cartesian system to
another, or otherwise.

Map projections: included is an extensive addition with nearly 100 map
projections. Those are not programmed by ourselves but automatically
converted from C (PROJ4) into a our template-based approach, fitting
with the geometry library, especially in the transformations explained
above. License-wise this is possible. We're not sure about if this would
fit in the Boost Library Collection, if there is interest in it, or that
it might be "too much" for it, so we would be glad to hear your opinions.

For more change descriptions, see the page on status and preview from
the documentation (link below).

The Generic Geometry Library is accessible from Boost SVN, mentioned
above, or can be downloaded as well from

Especially the examples, such as the custom point example and custom
line string example show nicely how the library handles custom
geometries and how they can be used inside the generic algorithms.

We welcome any type of comment, opinion, cooperation, merge or join.

Barend Gehrels, Amsterdam
Bruno Lalande, Paris

Boost list run by bdawes at, gregod at, cpdaniel at, john at