Boost logo

Geometry :

Subject: Re: [geometry] Using Boost.Geometry with a legacy class hierarchy
From: Barend Gehrels (barend_at_[hidden])
Date: 2012-07-08 16:58:29

Hi all, Mats,

On 8-3-2012 8:51, Mats Taraldsvik wrote:
> Would be great if you could notify us about the progress via this
> list, though.

This is a reply on an old subject/thread on this list. After this there
was also off-list correspondation on this subject with Mats and Bruno.

The result is that the support for points indicated by pointers has been
changed. This (originally Bruno's idea) makes support for the type of
geometries of Mats way more easier (or doable).

In previous versions, custom points which were accessed as pointers had
to be specialized in traits classes like:

template<> struct tag<my_point*>

Now the library itself removes the pointer before calling the traits
class, so it is:

template<> struct tag<my_point>

This avoids inconvenient situations (as for Mats) where the my_point
class had to be specialized twice, with and without pointer (and
possibly even with and without const).

I think this is a great enhancement.

It is formally a breaking change, and will affect everyone who has
traits-specializations with pointers. But it is expected that this is a
minority (if there are) of the users. In the library itself it only
affected two tests and two examples.

These changes were already done in begin June, but not applied to not
disturb the release process of 1.50. The release cycle for 1.51 is
short, so I just applied the changes. Because the influence is not huge,
I propose to get it in 1.51.

Mats, this compiles your example, will send this in another email
(probably tomorrow).

Regards, Barend

Geometry list run by mateusz at