Subject: Re: [Boost-bugs] [Boost C++ Libraries] #13040: Assertion `! op2.fraction.is_zero() && ! op2.fraction.is_one()' failed.
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-05-24 12:57:52
#13040: Assertion `! op2.fraction.is_zero() && ! op2.fraction.is_one()' failed.
-------------------------------------------------+-------------------------
Reporter: Vissarion Fisikopoulos <fisikop@â¦> | Owner:
| barendgehrels
Type: Bugs | Status: new
Milestone: To Be Determined | Component: geometry
Version: Boost 1.64.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------------------------+-------------------------
Comment (by Vissarion Fisikopoulos <fisikop@â¦>):
The following also yields the same assertion (same branch, same system)
{{{
#include <iostream>
#include <string>
#include <boost/geometry.hpp>
namespace bg = boost::geometry;
int main()
{
typedef bg::model::point<double, 2,
bg::cs::geographic<bg::radian> > point;
typedef bg::model::polygon<point, false> polygon;
polygon polygon1;
bg::model::multi_polygon<polygon> multi_polygon1;
bg::read_wkt("MULTIPOLYGON(((0.12217304763960294689
0.087266462599716390636,1.3962634015954622502
1.0646508437165400629,-1.2740903539558592339
0.45378560551852520355,0.78539816339744750184
1.5707963267948950037,-0.99483767363676689488
-1.1344640137963131199,-0.069813170079773112509
1.0995574287564264804,0.61086523819801474833
0.54105206811824158031,0.20943951023931933753
-0.95993108859688025536,-0.8377580409572773501
0.47123889803846852331,0.73303828583761765358
0.8726646259971638786,-0.36651914291880882679
-0.12217304763960294689,0.55850536063818490007
0.75049157835756097334,-1.2740903539558592339
-0.45378560551852520355,-0.20943951023931933753
-1.5184364492350652664,0.68067840827778780532
1.3264502315156891932,0.55850536063818490007
1.4311699866353488897,0.75049157835756097334
1.5707963267948950037,0.12217304763960294689
0.087266462599716390636),(0.15707963267948948927
0.10471975511965966876,-0.15707963267948948927
0.33161255787892229829,0.8726646259971638786
-0.38397243543875214655,0.15707963267948948927 0.10471975511965966876)))",
multi_polygon1);
bg::read_wkt("POLYGON((0.069813170079773112509
0.087266462599716390636,0.10471975511965966876
-1.5184364492350652664,1.1868238913561428571
0.82030474843733403034,-1.3613568165555756106
-1.1693705988361995374,0.069813170079773112509
0.087266462599716390636),(0.15707963267948948927
0.034906585039886556254,1.0646508437165400629
1.3089969389957458734,1.2915436464758025537
-1.3089969389957458734,1.2915436464758025537
-1.1868238913561428571,0.15707963267948948927 0.034906585039886556254))",
polygon1);
bg::union_(multi_polygon1, polygon1, multi_polygon1,
bg::strategy::intersection::geographic_segments<>
(bg::srs::spheroid<double>(6377397.1550000002608,
6356078.9628181885928)));
return 0;
}
}}}
The problem seems to be on computing intersection of segment
(0.78539816339744750184 1.5707963267948950037), (-0.99483767363676689488
-1.1344640137963131199) with segment (0.55850536063818490007
1.4311699866353488897), (0.75049157835756097334 1.5707963267948950037)
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/13040#comment:1> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-05-24 13:03:23 UTC