diff options
Diffstat (limited to 'libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp')
-rw-r--r-- | libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp b/libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp index 23f5c3a2c7..85729b1657 100644 --- a/libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp +++ b/libs/geometry/test/algorithms/overlay/robustness/test_overlay_p_q.hpp @@ -31,6 +31,8 @@ #include <boost/geometry/extensions/io/svg/svg_mapper.hpp> #include <boost/geometry/algorithms/detail/overlay/debug_turn_info.hpp> +#include <boost/geometry/algorithms/intersects.hpp> +#include <boost/geometry/algorithms/touches.hpp> struct p_q_settings { @@ -103,6 +105,19 @@ static bool test_overlay_p_q(std::string const& caseid, } } + if (true) + { + if ((area_i > 0 && bg::touches(p, q)) + || (area_i <= 0 && bg::intersects(p, q) && ! bg::touches(p, q))) + { + std::cout << "Wrong 'touch'! " + << " Intersection area: " << area_i + << " Touch gives: " << std::boolalpha << bg::touches(p, q) + << std::endl; + wrong = true; + } + } + bool svg = settings.svg; if (wrong || settings.wkt) |