Wrong result in intersection of linestrings
The following piece of code returns wrong result for intersection of linestrings. In particular it returns false while the two linestrings have a common point.
Produced on Ubuntu 14.04.3 with gcc 4.8.4
#include <iostream>
#include <string>
#include <boost/geometry.hpp>
#include <boost/geometry/geometries/geometries.hpp>
namespace bg = boost::geometry;
int main()
{
typedef bg::model::point<double, 2,
bg::cs::geographic<bg::radian> > point;
typedef bg::model::linestring<point> linestring;
linestring ls1, ls2;
bg::read_wkt("LINESTRING(0 0.31415926535897897853,0.26179938779914918578 0,0.034906585039886556254 0.13962634015954622502,0.12217304763960294689 0.12217304763960294689)", ls1);
bg::read_wkt("LINESTRING(0.034906585039886556254 0.13962634015954622502,0.26179938779914918578 0)", ls2);
std::cout << bg::intersects(ls1, ls2) << std::endl;
return 0;
}
Change History (2)
Resolution: 
→ fixed

Status: 
new →
closed

Milestone: 
To Be Determined →
Boost 1.65.0

GitHub?: https://github.com/boostorg/geometry/pull/407
Fix: https://github.com/boostorg/geometry/commit/bcae6f1e81127ad02dca8effb5c539bf8a95ff46