[postgis-devel] [Barend.Gehrels at geodan.nl: [OSGeo-Discuss] Generic Geometry Library (ggl)]

strk strk at keybit.net
Tue Feb 17 06:16:21 PST 2009


Sounds something that could really speed up topology ops...

----- Forwarded message from Barend Gehrels <Barend.Gehrels at geodan.nl> -----

Date: Tue, 17 Feb 2009 14:11:33 +0100
From: Barend Gehrels <Barend.Gehrels at geodan.nl>
Organization: Geodan Holding b.v.
Subject: [OSGeo-Discuss] Generic Geometry Library (ggl)
Reply-To: OSGeo Discussions <discuss at lists.osgeo.org>
To: OSGeo Discussions <discuss at lists.osgeo.org>
X-BeenThere: discuss at lists.osgeo.org

Dear list,

It is a pleasure for us to announce the Generic Geometry Library (ggl).

It is an Open Source library, written in C++. The library is template 
based, and generic. With generic we mean that the algorithms work not 
only with the provided geometries, but also with geometries that are 
defined by the library user, such as legacy points, custom linestrings, etc.

Because of this the library is following OGC conventions loosely, not 
strictly. All algorithms are implemented as standalone functions, 
instead of methods on geometries. Nevertheless, OGC conventions, names 
and meanings are followed as much as possible. Not all OGC algorithms 
are already implemented. On the other hand the library offers other 
things such as distance calculations over the globe.

So it is a library modelled as the C++ std:: library and as most Boost 
libraries are. The library is proposed to Boost (Boost is a well-known 
peer reviewed C++ Library Collection). It is following the Boost 
Software License, which is a permissive Open Source License.

The library is accessible via SVN at Boost: 
https://svn.boost.org/svn/boost/sandbox/ggl but can also be downloaded 
from http://geometrylibrary.geodan.nl. Much documentation and many 
examples can be found there. Note for example the Custom Linestring 
example showing things which cannot so easily be done with non-template 
libraries.

The library contains projections from PROJ4, converted to C++ . We first 
wanted to include PROJ4 as an example, like we did with ShapeLib and GD. 
However, we concluded that they fit better being implemented as C++ 
templates, so they are automatically converted (it is reproducable). 
Like there is a PROJ4 Javascript branch, this might be considered as a 
PROJ4 C++ branch. We like your opinion about this.

The library is in "preview 4", it has been submitted as preview to Boost 
three times, last year. Based on many comments the library has been 
enhanced. We think it is now in a proper shape to be used, and that 
algorithms can now be added without that everything is restructured again.

The performance of the library is compared with other C++ OS GIS 
libraries and we measured that the library seems to be much faster than 
most of them, caused by the template approach.

We welcome any type of comment, opinion or cooperation.

Barend Gehrels, Geodan, Amsterdam, the Netherlands
Bruno Lalande, Paris



_______________________________________________
Discuss mailing list
Discuss at lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/discuss

----- End forwarded message -----

-- 

 Free GIS & Flash consultant/developer      ()  ASCII Ribbon Campaign
 http://foo.keybit.net/~strk/services.html  /\  Keep it simple! 



More information about the postgis-devel mailing list