diff --git a/test/cases/2d.cpp b/test/cases/2d.cpp index 1eae2be..0be2e94 100644 --- a/test/cases/2d.cpp +++ b/test/cases/2d.cpp @@ -15,6 +15,7 @@ AddTestCase _(1, "2d.hpp", [](TestCase& t) { t.expectTrue([] { return Circle({0, 0}, 1).contain({0, 1}); }); t.expectFalse([] { return Circle({1, 0}, 1.4).contain({0, -1}); }); t.expectTrue([] { return Circle({1, 1}, 1.42).contain({0, 0}); }); + t.expectTrue([] { return Circle({1.83649, -.12711}, .05484).contain({1.82541, -.1019}); }); t.expectEq([] { return Polygon<3>{{0, 0}, {1, 0}, {1, 1}}.vertex[0]; }, {0, 0}); @@ -29,6 +30,8 @@ AddTestCase _(1, "2d.hpp", [](TestCase& t) { t.expectTrue([pA] { return pA.contain({2.16, -1.9}); }); t.expectFalse([pA] { return pA.contain({1.28, -.8}); }); t.expectFalse([pA] { return pA.contain({1.68, -1.94}); }); + t.expectFalse([pA] { return pA.contain({1.83649, -.12711}); }); + t.expectTrue([pA] { return pA.contain({1.82541, -.1019}); }); t.expectTrue([] { return intersect(Circle({1, 1}, 2), Circle({1, 1}, 1)); }); t.expectTrue([] { return intersect(Circle({1, 1}, 1.5), Circle({3, 1}, 1.5)); }); @@ -45,7 +48,12 @@ AddTestCase _(1, "2d.hpp", [](TestCase& t) { t.expectFalse([] { return intersect(Circle({0, 0}, 2), Polygon<3>{{0, -3}, {14, -3}, {0, -5}}); }); t.expectFalse([pA] { return intersect(Circle({-1, 1}, 1.4), pA); }); t.expectTrue([pA] { return intersect(Circle({-3, -2}, 1.2), pA); }); - t.expectTrue([pA] { return intersect(Circle({1.83649, -.07532}, .05484), pA); }); + t.expectTrue([pA] { return intersect(Circle({1.83649, -.12711}, .05484), pA); }); t.expectFalse([pA] { return intersect(Circle({1.5595, -.42437}, .08794), pA); }); + + t.expectTrue([] { return intersect(Polygon<4>{{3, 1}, {0, 1}, {0, 0}, {3, 0}} + , Polygon<4>{{.1, .1}, {.2, .1}, {.2, .2}, {.1, .2}}); }); + t.expectFalse([pA] { return intersect(pA, Polygon<3>{{1.5595, -.42437}, {1.64733, -.41987}, {1.83649, -.12711}}); }); + t.expectTrue([pA] { return intersect(pA, Polygon<3>{{1.5595, -.42437}, {1.64733, -.41987}, {1.82541, -.1019}}); }); }); }