From 334336ca6fe554545aa4444028c8533633e46347 Mon Sep 17 00:00:00 2001 From: Asim Aslam Date: Mon, 26 Apr 2021 15:06:04 +0100 Subject: [PATCH] use steps for waypoints in routing service --- routing/handler/osrm.go | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/routing/handler/osrm.go b/routing/handler/osrm.go index 7e47d29..9aeb8b8 100644 --- a/routing/handler/osrm.go +++ b/routing/handler/osrm.go @@ -62,15 +62,20 @@ func (o *OSRM) Route(ctx context.Context, req *pb.RouteRequest, rsp *pb.RouteRes return errors.InternalServerError("routing.route", "failed to get route: %v", err.Error()) } - for _, waypoint := range resp.Waypoints { - rsp.Waypoints = append(rsp.Waypoints, &pb.Waypoint{ - Name: waypoint.Name, - Distance: float64(waypoint.Distance), - Location: &pb.Point{ - Latitude: waypoint.Location.Lat(), - Longitude: waypoint.Location.Lng(), - }, - }) + for _, routes := range resp.Routes { + for _, leg := range routes.Legs { + for _, step := range leg.Steps { + for _, intersect := range step.Intersections { + rsp.Waypoints = append(rsp.Waypoints, &pb.Waypoint{ + Name: step.Name, + Location: &pb.Point{ + Latitude: intersect.Location.Lat(), + Longitude: intersect.Location.Lng(), + }, + }) + } + } + } } return nil