OSRM: найти место на маршруте по истечении некоторого времени?
Для заданной начальной и конечной точки маршрута я хочу знать, в какой точке маршрута я буду через определенный промежуток времени. Например, учитывая координаты long_start, lat_start и long_end, lat_end и выбирая маршрут, который предлагает OSRM, где будет автомобиль через 2 минуты?
Есть ли простой способ сделать это через OSRM HTTP-API?
1 ответ
Вы можете передать опцию annotations=duration&overview=full
к route
сервис, а затем использовать routes[0].legs[0].annotations.durations
массив, чтобы узнать, по какой координате вы будете через заданное время.
Псевдо-код:
sum = 0
index = 0
durations = routes[0].legs[0].annotations.durations
while index < durations.length and sum < max_duration
sum += durations[index]
index++
location = decodePolyline(routes[0].geometry)[index]