[Boost-bugs] [Boost C++ Libraries] #10868: Intersecting integer polygons produces incorrect or self-intersecting result

Subject: [Boost-bugs] [Boost C++ Libraries] #10868: Intersecting integer polygons produces incorrect or self-intersecting result
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-12-11 21:48:25


#10868: Intersecting integer polygons produces incorrect or self-intersecting
result
---------------------------+------------------------------
 Reporter: starinshak1@… | Type: Bugs
   Status: new | Milestone: To Be Determined
Component: None | Version: Boost 1.57.0
 Severity: Problem | Keywords:
---------------------------+------------------------------
 I've noticed several instances of Boost.Geometry returning incorrect or
 self-intersecting polygons when working in integers (32 and 64 bit).

 EXAMPLE:
 Polygon A has vertices
 (42817136,-3774506), (43029074,-3929862), (31446819,18947953),
 (30772384,19615678), (30101303,19612322), (30114725,16928001),
 (33520458,6878575), (35332375,2413654), (35725796,2024148),
 (42817136,-3774506)

 Polygon B has vertices
 (-33386239,-33721784), (33721785,-33386239), (33386240,33721785),
 (-33721784,33386240)

 Intersecting Polygon A and Polygon B returns:

 A correct but self-intersecting polygon using Boost 1.55

 An incorrect polygon using Boost 1.57 and int64_t coordinates

 An incorrect and self-intersecting polygon using Boost 1.57 and int32_t
 coordinates.

 For both Boost 1.57 tests, I enabled BOOST_GEOMETRY_NO_ROBUSTNESS to avoid
 floating point rescaling.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/10868>
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-02-16 18:50:17 UTC