From 5a0469364f30f830a7994e4abf314d751c1c7854 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sat, 24 Dec 2022 23:53:46 +0300 Subject: [PATCH] Add geom::contains(box, box) --- libs/geom/include/psemek/geom/contains.hpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/libs/geom/include/psemek/geom/contains.hpp b/libs/geom/include/psemek/geom/contains.hpp index 8467382d..3da9d280 100644 --- a/libs/geom/include/psemek/geom/contains.hpp +++ b/libs/geom/include/psemek/geom/contains.hpp @@ -25,6 +25,21 @@ namespace psemek::geom return true; } + template + bool contains(interval const & i1, interval const i2) + { + return (i1.min <= i2.min) && (i2.max <= i1.max); + } + + template + bool contains(box const & b1, box const & b2) + { + for (std::size_t i = 0; i < N; ++i) + if (!contains(b1[i], b2[i])) + return false; + return true; + } + template bool half_open_contains(interval const & i, T const & x) {