This is a large commit. It replaces enriched.distance with factor. Factor
is based on integer calculations, calculated in cart_intersect, from the
passed robust points, so always trustable.
We had to do this because without certain tests failed because of FP
problems with distance (calculated with FP).
This commit also greatly simplifies relate_collinear, where most things and checks
are replaced by simple unified calculations. This is also based on robust
fractions (but could have been done earlier).
Many (but not all) testcases commented in previous commit are now uncommented
again, they now work thanks to the fractions. There are also testcases
uncommented which now work correctly using clang/Linux
This commit breaks compiling disjoint (because of rescale), and running buffer
(also because of rescale), and some more (probably all because or rescaling),
this has to be fixed soon after.
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
It now also used the passed side information in direction.hpp, which saves calculations and is shorter.
In the end the performance is similar.
One (of many) situations in ticket 9081 is added in multi unit tests.
[SVN r85867]
Adaptions to test with respect to new namespace model
Removed GMP/CLN and, where it was present, replaced by TTMATH
Small fix in comparable_distance test
All testfiles use bg as alias now
[SVN r66811]
-> added many testcases
Various updates in testcases for support of open polygons
recursive_boxes.cpp, added triangles as well (dropped corner)
[SVN r66450]