From 53e008f79c0577fe7da7651a74e61bc151a29b91 Mon Sep 17 00:00:00 2001 From: Vladimir Byko-Ianko Date: Tue, 30 Jan 2018 17:51:51 +0300 Subject: [PATCH] Sorting turn candidates by angle to make workable LeftmostDirection() RightmostDirection() mehtods. --- routing/bicycle_directions.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/routing/bicycle_directions.cpp b/routing/bicycle_directions.cpp index 38e169b815..3075b77aee 100644 --- a/routing/bicycle_directions.cpp +++ b/routing/bicycle_directions.cpp @@ -19,6 +19,7 @@ #include "geometry/mercator.hpp" #include "geometry/point2d.hpp" +#include #include #include #include @@ -281,6 +282,9 @@ void BicycleDirectionsEngine::GetSegmentRangeAndAdjacentEdges( } outgoingTurns.candidates.emplace_back(angle, ConvertEdgeToSegment(*m_numMwmIds, edge), highwayClass); } + + if (outgoingTurns.isCandidatesAngleValid) + sort(outgoingTurns.candidates.begin(), outgoingTurns.candidates.end(), my::LessBy(&TurnCandidate::angle)); } void BicycleDirectionsEngine::GetEdges(RoadGraphBase const & graph, Junction const & currJunction,