From d8f61abae79a3154d5e6dda98713295d1b850e95 Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Sun, 9 Apr 2023 12:42:09 +0100 Subject: Add helper to create a Ray from two points --- lib/ray.cpp | 6 ++++++ lib/ray.hpp | 2 ++ 2 files changed, 8 insertions(+) diff --git a/lib/ray.cpp b/lib/ray.cpp index acbb807..f9e3311 100644 --- a/lib/ray.cpp +++ b/lib/ray.cpp @@ -1,6 +1,12 @@ #include "ray.hpp" #include +Ray +Ray::fromPoints(glm::vec3 start, glm::vec3 p) +{ + return {start, glm::normalize(p - start)}; +} + float Ray::distanceToLine(const glm::vec3 & p1, const glm::vec3 & e1) const { diff --git a/lib/ray.hpp b/lib/ray.hpp index 8bef1c8..9bf47af 100644 --- a/lib/ray.hpp +++ b/lib/ray.hpp @@ -7,6 +7,8 @@ class Ray { public: Ray(glm::vec3 start, glm::vec3 direction) : start {start}, direction {direction} { } + static Ray fromPoints(glm::vec3, glm::vec3); + glm::vec3 start; glm::vec3 direction; -- cgit v1.2.3