Boost logo

Geometry :

Subject: Re: [geometry] Bug again in boost::geometry::union_
From: Sybren A. Stüvel (sybren_at_[hidden])
Date: 2014-02-12 09:10:25

Hi Barend,

On 12 February 2014 13:46, Barend Gehrels <barend_at_[hidden]> wrote:

> Good. That warning can be ignored. It's a (more or less personal)
> development branch. Please comment it in cart_intersect.hpp if you want to
> get rid of it. I will fix this but it is, for me, diagnostic information

I suspected as much. Didn't want to keep any diagnostic info to myself ;-)

> Ah, that is a known problematic side-effect. That has to be fixed too but
> of course, if you need it today, or even somewhere this week, I cannot do
> that.

Alas, then I'll have to wait a bit more.

> You can try one more thing: please define BOOST_GEOMETRY_NO_ROBUSTNESS. It
> will than skip all rescaling-to-integer-for-robustness code. That sounds a
> bit weird, because this thread was to fix that. But besides the rescaling
> more enhancements have been made, so it might be that your code then runs
> OK. However, I cannot predict that, there are also cases which really need
> this rescaling. So you can try how it looks.

Unfortunately, that doesn't help. Then I get an empty result at some point
- see the attached "exception.svg" file.

> Besides that, maybe even better, you can try to call the function
> "geometry::remove_spikes" on your output. It hopefully will remove all
> spikes which are generated.

It appears that it doesn't, the spike is still there. I tried this without
defining BOOST_GEOMETRY_NO_ROBUSTNESS, as the empty result I described
occurs sooner than the generation of any spike.

> Finally, could you also send me the WKT's of your input, for me to check
> that generated internal spike (as we call it)?

I have attached the two inputs (poly0/1) and the result that I get from the

Sybren A. Stüvel

Geometry list run by mateusz at