Opened 8 years ago
#10195 new Bugs
Silent Failure for boost::geometry::intersection()
Reported by: | anonymous | Owned by: | Barend Gehrels |
---|---|---|---|
Milestone: | To Be Determined | Component: | geometry |
Version: | Boost 1.55.0 | Severity: | Problem |
Keywords: | Cc: |
Description
I am performing intersections between polygons, with points represented using 64-bit integer coordinates. If I use signed ints (int64_t), the intersection operations are correct. If I use unsigned ints (uint64_t), the returned intersection polygon collection is simply one of the two polygons I originally handed in.
The underlying intersection algorithm must require signed information, but this fact is not communicated to users. As a result, the output of unsigned int operations can appear nonsensical. Added documentation is appreciated. Adding an actual exception when attempting to do unsigned-int-based intersections would be even better.