GGL    Boost C++ Libraries

geometry concepts: defines and checks concepts for geometries


Classes

class  ggl::concept::Box< Geometry >
 Box concept. More...
class  ggl::concept::Linestring< Geometry >
 Linestring concept. More...
class  ggl::concept::MultiLinestring< Geometry >
 multi-linestring concept More...
class  ggl::concept::MultiPoint< Geometry >
 MultiPoint concept. More...
class  ggl::concept::MultiPolygon< Geometry >
 multi-polygon concept More...
class  ggl::concept::Point< Geometry >
 Point concept. More...
class  ggl::concept::Polygon< Geometry >
 Polygon concept. More...
class  ggl::concept::Ring< Geometry >
 ring concept More...
class  ggl::concept::Segment< Geometry >
 segment concept More...

Functions

template<typename Geometry >
void ggl::concept::check ()
 Checks, in compile-time, the concept of any geometry.
template<typename Geometry1 , typename Geometry2 >
void ggl::concept::check_concepts_and_equal_dimensions ()
 Checks, in compile-time, the concept of two geometries, and if they have equal dimensions.

Detailed Description

All GGL algorithms use concepts for their geometries. This means that all algorithms work on the GGL-provided geometries (point, linestring, etc) but also on custom geometries.

By declaring registration macro's or by specializating traits classes it is possible to adapt custom or legacy geometries to fulfil the GGL geometry concepts.

GGL algorithms check the concepts of the input geometries. Concept checking is done using BCCL (Boost Concept Check Library).

This means that geometries provided by library users, or legacy geometries, or plain arrays, or boost tuples, all can be handled by the Generic Geometry Library. Also std::vector of points, or tuples can be handled either as a linestring or as a linear ring (polygon without holes).

There are concepts for

The Generic Geometry Library uses the Boost Range Library to iterate through standard containers, boost arrays, c-arrays. So:

are all just ranges. So a std::vector, std::deque, boost::array, iterator pair or c-array will be accepted as such.

Also the multi geometries:


Function Documentation

template<typename Geometry >
void ggl::concept::check (  ) 

Checks, in compile-time, the concept of any geometry.

Definition at line 181 of file check.hpp.

template<typename Geometry1 , typename Geometry2 >
void ggl::concept::check_concepts_and_equal_dimensions (  ) 

Checks, in compile-time, the concept of two geometries, and if they have equal dimensions.

Definition at line 194 of file check.hpp.


November 5, 2009

Copyright © 1995-2009 Barend Gehrels, Geodan, Amsterdam
Copyright © 2008-2009 Bruno Lalande, Paris
Copyright © 2009 Mateusz Loskot, Cadcorp, London
Documentation is generated by Doxygen