diff options
author | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-01-07 13:23:27 +0000 |
---|---|---|
committer | Dan Goodliffe <dan@randomdan.homeip.net> | 2024-01-07 13:23:27 +0000 |
commit | 108bf5b2424da06aa2e1735ffd10a2b713834db8 (patch) | |
tree | af0918a6a266aa7e6ee1d8129df6d5ef9fc4f8ab /game/network/link.cpp | |
parent | Remove more use of legacy types and unnecessary pointers from selectable inte... (diff) | |
parent | Remove Position3D from RailVehicle (diff) | |
download | ilt-108bf5b2424da06aa2e1735ffd10a2b713834db8.tar.bz2 ilt-108bf5b2424da06aa2e1735ffd10a2b713834db8.tar.xz ilt-108bf5b2424da06aa2e1735ffd10a2b713834db8.zip |
Merge branch 'template-types'
Diffstat (limited to 'game/network/link.cpp')
-rw-r--r-- | game/network/link.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/game/network/link.cpp b/game/network/link.cpp index 703a1ca..e8eaea2 100644 --- a/game/network/link.cpp +++ b/game/network/link.cpp @@ -33,9 +33,10 @@ LinkStraight::positionAt(float dist, unsigned char start) const } bool -LinkStraight::intersectRay(const Ray & ray) const +LinkStraight::intersectRay(const Ray<GlobalPosition3D> & ray) const { - return ray.passesCloseToEdges(std::array {ends.front().node->pos, ends.back().node->pos}, 1.F); + return ray.passesCloseToEdges( + std::array {GlobalPosition3D {ends.front().node->pos}, GlobalPosition3D {ends.back().node->pos}}, 1000); } Location @@ -54,7 +55,7 @@ LinkCurve::positionAt(float dist, unsigned char start) const } bool -LinkCurve::intersectRay(const Ray & ray) const +LinkCurve::intersectRay(const Ray<GlobalPosition3D> & ray) const { const auto & e0p {ends[0].node->pos}; const auto & e1p {ends[1].node->pos}; @@ -64,7 +65,7 @@ LinkCurve::intersectRay(const Ray & ray) const const auto trans {glm::translate(centreBase)}; auto segCount = static_cast<std::size_t>(std::lround(segs)) + 1; - std::vector<Position3D> points; + std::vector<GlobalPosition3D> points; points.reserve(segCount); for (Position3D swing = {arc.first, centreBase.z - e0p.z, 0.F}; segCount; swing += step, --segCount) { const auto t {trans * glm::rotate(half_pi - swing.x, up) * glm::translate(Position3D {radius, 0.F, swing.y})}; |