Boost logo

Boost :

Subject: Re: [boost] generative geometry algorithms library idea
From: Paul A Bristow (pbristow_at_[hidden])
Date: 2008-09-25 13:06:45


>-----Original Message-----
>From: boost-bounces_at_[hidden]
>[mailto:boost-bounces_at_[hidden]] On Behalf Of Brandon Kohn
>Sent: 22 September 2008 21:29
>To: boost_at_[hidden]
>Subject: [boost] generative geometry algorithms library idea

>I've been doing some work for the past few weeks on a
>generative/generic 2D geometry library (leaving open the
>possibility for 3D in the future). The idea is for all the
>algorithms to be generative taking coordinate, point, segment,
>polyline/gon types as template parameters (or deducing where
>presented as nested typedefs) and specialized traits types for
>accessing type traits and methods ( things like
>access_traits<point_type>::get_x( point ) .).

> So far the
>library has allowed me to work with the same algorithms in
>native floating type and exact types like gmp's mpq_class.
>It's just a first rough draft of ideas, and I would really
>like some input from the community to see if I'm on the right
>track for something that boost would be interested in having.

This all looks interesting stuff of course.

And the use of templates is adventurous. I trust it does not mean that the need for both compile and runtime speed won't lead some
to reject the library outright.

I presume one could also use it with other arbitrary (but inexact) precision libraries?

Past discussions on geometry have not produced a consensus on design/spec :-((

So you may prefer to ignore that and simply present your version.

There is the little matter of some documentation ;-)


PS I see you have neatly 're-solved' the floating point comparison problems, and present them in a more generally useful form that
in Boost.Test. I find the function names a step too long, but I feel that they would be most useful as a independent module.

Paul A Bristow
Prizet Farmhouse, Kendal, Cumbria UK LA8 8AB
+44 1539561830 & SMS, Mobile +44 7714 330204 & SMS

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