From 96d9a3e192236ca81955300a9ea6c963a47af052 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Sun, 10 Jul 2022 11:13:37 +0300 Subject: [PATCH] Add geom::intersection(segment,cylinder) --- libs/geom/include/psemek/geom/intersection.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/libs/geom/include/psemek/geom/intersection.hpp b/libs/geom/include/psemek/geom/intersection.hpp index 72a85e00..916a8da7 100644 --- a/libs/geom/include/psemek/geom/intersection.hpp +++ b/libs/geom/include/psemek/geom/intersection.hpp @@ -288,4 +288,16 @@ namespace psemek::geom return !intersection(r, c).empty(); } + template + interval intersection(segment> const & s, cylinder const & c) + { + return intersection(ray{s[0], s[1] - s[0]}, c) & interval{T{0}, T{1}}; + } + + template + bool intersect(segment> const & s, cylinder const & c) + { + return !intersection(s, c).empty(); + } + }