This fixes the last case rt_p20
Check if the occupation vectors are short (length 1). This indicates a rounding issue.
If so, map again but use neighbouring cells.
Alas we have to do this, but still better than the former FP implementation.
Also, we map only points on offsetted borders now, and return if the map is empty,
to improve performance.
because side of a point w.r.t. a segment cannot be done with rescaling,
due to rounding the point can be located on the other side of the segment
This adds 4 more failing testcases, but it has to be done first because
the solution is not reliable
A robust type is integer for float/double. The rescaled points will only
be used for side-information and equality and distance-comparisons, not
to calculate the intersection points themselves.
Currently the code is #ifdefed