summaryrefslogtreecommitdiff
path: root/lib/ray.h
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2025-01-13 01:45:43 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2025-01-21 20:58:55 +0000
commit1aba027462a861f2c1155672792dbbe555d7dc0a (patch)
treef406c86cc0c610c05da63fc508d8963f0cb61ba4 /lib/ray.h
parentAdd default Q = glm::defaultp to maths functions (diff)
downloadilt-1aba027462a861f2c1155672792dbbe555d7dc0a.tar.bz2
ilt-1aba027462a861f2c1155672792dbbe555d7dc0a.tar.xz
ilt-1aba027462a861f2c1155672792dbbe555d7dc0a.zip
Add distance helperterrain-for-networks
Works with integer positions, first template param allows forcing to N dimensions
Diffstat (limited to 'lib/ray.h')
-rw-r--r--lib/ray.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/lib/ray.h b/lib/ray.h
index a831270..793e21e 100644
--- a/lib/ray.h
+++ b/lib/ray.h
@@ -27,8 +27,7 @@ public:
const auto n2 = crossProduct(direction, n);
const auto c1 = p1 + PositionType((glm::dot(RelativePosition3D(start - p1), n2) / glm::dot(d1, n2)) * d1);
const auto difflength = glm::length(diff);
- if (glm::length(RelativePosition3D(c1 - p1)) > difflength
- || glm::length(RelativePosition3D(c1 - e1)) > difflength) {
+ if (::distance(c1, p1) > difflength || ::distance(c1, e1) > difflength) {
return std::numeric_limits<typename PositionType::value_type>::infinity();
}
return static_cast<PositionType::value_type>(glm::abs(glm::dot(n, RelativePosition3D(p1 - start))));