Boost logo

Geometry :

Subject: [geometry] intersects returns incorrect result in spherical equatorial
From: Terry Hole (hujie.eagle_at_[hidden])
Date: 2013-09-24 04:43:16


Hi,

The intersects does not return the correct result for point in polygon
with spherical equatorial.
These are two cases:
1. a polygon with pole (north/south) in it
    assume polygon PL: POLYGON((0 80,-90 80, -180 80, 90 80, 0 80))
    a point P: POINT(0 90)
    boost::geometry::intersects(P, PL) should return TRUE, but return false
in boost 1.54.
2. point in the opposite side of the polygon
    assume polygon PL: POLYGON((30 0,30 30,90 30, 90 0, 30 0))
    a point P: POINT(-120 21)
    boost::geometry::intersects(P, PL) should return FALSE, but return true
in boost 1.54.

The issue may be caused by the spherical_side_formula can not handle this
two cases.

Attachment is the test case for these two issues.

Thanks!





Geometry list run by mateusz at loskot.net