From 547b7e8a31f795c2c781010d6e9bcb9f36909925 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sun, 13 Dec 2020 13:24:21 +0300 Subject: [PATCH] Implement negating an interval --- libs/geom/include/psemek/geom/interval.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libs/geom/include/psemek/geom/interval.hpp b/libs/geom/include/psemek/geom/interval.hpp index 79f89af3..0ccc0a63 100644 --- a/libs/geom/include/psemek/geom/interval.hpp +++ b/libs/geom/include/psemek/geom/interval.hpp @@ -124,6 +124,12 @@ namespace psemek::geom return {static_cast(i.min), static_cast(i.max)}; } + template + interval operator - (interval const & i) + { + return {-i.max, -i.min}; + } + template interval operator + (interval const & i, T const & delta) { @@ -142,6 +148,12 @@ namespace psemek::geom return {i.min - delta, i.max - delta}; } + template + interval operator - (T const & delta, interval const & i) + { + return {delta - i.max, delta - i.min}; + } + template interval operator & (interval const & i, T const & a) {