Re: [Boost-bugs] [Boost C++ Libraries] #13040: Assertion `! op2.fraction.is_zero() && ! op2.fraction.is_one()' failed.

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