diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-11-12 20:19:03 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-11-12 20:19:32 +0000 |
commit | dbd181a9e49b3b32400eb812ff224074413d2ef4 (patch) | |
tree | 3473fa3ee7f3c4aa60fe48b8fbbbcc52dab2554a /test/test-maths.cpp | |
parent | Throw if input stream not in good state reading JSON (diff) | |
download | ilt-dbd181a9e49b3b32400eb812ff224074413d2ef4.tar.bz2 ilt-dbd181a9e49b3b32400eb812ff224074413d2ef4.tar.xz ilt-dbd181a9e49b3b32400eb812ff224074413d2ef4.zip |
Add linesIntersectAt function
2 dimensional line intersection point
Diffstat (limited to 'test/test-maths.cpp')
-rw-r--r-- | test/test-maths.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/test-maths.cpp b/test/test-maths.cpp index f7f34b3..b9d08bb 100644 --- a/test/test-maths.cpp +++ b/test/test-maths.cpp @@ -333,3 +333,11 @@ BOOST_DATA_TEST_CASE(rayLineDistance, BOOST_CHECK_LE(Ray<RelativePosition3D>(c, direction).distanceToLine(n1, n2), 0.01F); } } + +static_assert(linesIntersectAt(glm::ivec2 {10, 10}, {40, 40}, {10, 80}, {20, 40}).value().x == 24); +static_assert(linesIntersectAt(glm::vec2 {10, 10}, {40, 40}, {10, 80}, {20, 40}).value().y == 24); +static_assert(linesIntersectAt(GlobalPosition2D {311000100, 491100100}, {311050000, 491150000}, {312000100, 491200100}, + {311000100, 491100100}) + .value() + == GlobalPosition2D {311000100, 491100100}); +static_assert(!linesIntersectAt(glm::dvec2 {0, 1}, {0, 4}, {1, 8}, {1, 4}).has_value()); |