У меня вопрос, как получить профиль высоты указанного маршрута из сервиса MapBox .
На входе у нас есть путь / маршрут в виде массива координат (latitute,longitute).В результате мы хотим получить массив пар координата - высота.
Если разрешение данных высот выше, чем предоставленные координаты маршрута, результат должен также содержать данные высот между исходными координатами.Новые точки на маршруте будут генерироваться в соответствии с разрешением данных высот.В случае, если разрешение данных высот ниже, он должен интерполировать значения высот из известных данных для запрашиваемых точек.Мы хотели бы получить максимально точные результаты.
В качестве источника данных для нашего решения мы хотели бы использовать сервис MapBox .Однако мы не нашли никакого документированного MapBox API для этой конкретной проблемы.Мы нашли только ссылки на некоторые Surface API , которые больше не поддерживаются.
Как мы понимаем, Mapbox теперь сохраняет данные высот в формате Terrain-RGB тайлов карты,Мы определили следующие шаги, чтобы решить нашу проблему, используя MapBox :
- Декодируйте координаты маршрута в минимальный набор плиток карты.
- Запроситесопоставлять плитки с помощью MapBox API .
- Для каждой координаты маршрута сопоставьте ее с определенным пикселем изображения.
- Переведите значение цвета RGB пикселя в высотув метрах.
Является ли этот алгоритм правильным?Я думаю, что создание профиля высот для определенного маршрута является распространенной проблемой. Существует ли какой-либо инструмент, который обеспечивает решение нашей проблемы из коробки, может быть, какой-то SDK?Мы что-то упустили?Большое спасибо.