diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-09 12:42:09 +0100 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2023-04-09 12:42:09 +0100 |
commit | d8f61abae79a3154d5e6dda98713295d1b850e95 (patch) | |
tree | bb285a41f29f547259f6a6713d746d9eec1e8bad | |
parent | Start to factor out geometric place from face controller split (diff) | |
download | ilt-d8f61abae79a3154d5e6dda98713295d1b850e95.tar.bz2 ilt-d8f61abae79a3154d5e6dda98713295d1b850e95.tar.xz ilt-d8f61abae79a3154d5e6dda98713295d1b850e95.zip |
Add helper to create a Ray from two points
-rw-r--r-- | lib/ray.cpp | 6 | ||||
-rw-r--r-- | lib/ray.hpp | 2 |
2 files changed, 8 insertions, 0 deletions
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 <algorithm> +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; |