From 0fcdbb1904c2f1c32c80ebe4da367742ef6e00bc Mon Sep 17 00:00:00 2001 From: Nicolas Schodet Date: Sat, 5 May 2012 19:02:53 +0200 Subject: digital/avr/modules/math/geometry: slightly change intersection meaning When a segment end is exactly on the other segment, consider there is no intersection. --- digital/avr/modules/math/geometry/test/test_geometry.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'digital/avr/modules/math/geometry/test') diff --git a/digital/avr/modules/math/geometry/test/test_geometry.c b/digital/avr/modules/math/geometry/test/test_geometry.c index 3466ad06..35511fa8 100644 --- a/digital/avr/modules/math/geometry/test/test_geometry.c +++ b/digital/avr/modules/math/geometry/test/test_geometry.c @@ -245,6 +245,7 @@ test_intersection (void) vect_t v02 = { 0, 20 }; vect_t v20 = { 20, 0 }; vect_t v22 = { 20, 20 }; + vect_t v11 = { 10, 10 }; vect_t v44 = { 40, 40 }; test (intersection_segment_segment (&v00, &v22, &v20, &v02) == 1); test (intersection_segment_segment (&v00, &v22, &v02, &v20) == 1); @@ -255,6 +256,8 @@ test_intersection (void) test (intersection_segment_segment (&v22, &v44, &v02, &v20) == 0); test (intersection_segment_segment (&v00, &v44, &v02, &v20) == 1); test (intersection_segment_segment (&v44, &v00, &v02, &v20) == 1); + test (intersection_segment_segment (&v44, &v00, &v11, &v20) == 0); + test (intersection_segment_segment (&v44, &v00, &v20, &v11) == 0); vect_t poly[] = { { 10, 0 }, { 0, 10 }, { -10, 0 }, { 0, -10 } }; vect_t a = { 20, 10 }; vect_t b = { 10, 20 }; -- cgit v1.2.3