Здравствуйте!
Для пет. проекта нужно проанализировать API и ответить на вопросы.
Обязательное требование - опыт в системе построения маршрутов.
https://openrouteservice.org/
Контекст:
Цель проекта - построение маршрута по заранее определенным точкам. Точки могут быть одиночными (локация), или массив точек (дорога, по которой система рекомендует построить маршрут).
Например: нужно построить маршрут Винница - Яремче. Google Maps строит этот маршрут классически для навигатора (Винница - Хмельницкий - Тернополь - Львов - Ивано-Франковск - Яремче).
Для проекта нужно, чтобы система предложила следующий маршрут (Винница - Хмельницкий - Каменец-Подольский - Хотин - Черновцы - Коломыя - Яремче).
Точки будут возвращаться из внутренней базы данных. То есть существует список «интересных» точек, через которые стоит проложить маршрут. Сортировка (приоритетность) на стороне уже существующего бэка. Также, в базе данных есть json с различными дорогами, через которые стоит проехать.
Итак, вопросы:
1. Может ли фреймворк, имея стартовые и конечные координаты, вернуть массив координат (площадь), в которых нужно искать места для посещения? (Например, маршрут Винница - Яремче. Система должна понять, какие точки предлагать, поддерживая правильное направление. То есть, чтобы маршрут не строился в противоположную сторону, типа сначала в Умань, а потом уже в сторону Яремче).
2. Сколько точек может принять API для построения маршрута?
3. Как будет работать, если добавить json с дорогой. То есть, есть массив координат, который и формирует дорогу. Проблема Google API в том, что там есть лимит на 10 точек. Соответственно, невозможно заставить вести по конкретной дороге (потому что рядом есть шоссе, и навигация Гугла всегда вернет на «основную» дорогу).
4. Как работает их система POI. Понимаю, что это поиск интереса вокруг координаты. Можно ли использовать собственную БД как точки интереса вокруг координаты?
5. Позволяет ли заложить на каждую из точек время посещения? То есть есть 5 точек. Ограничение во времени маршрута в целом - 8 часов. Каждая из точек имеет в БД время посещения (от 30 мин. до 2 часов). Если система понимает, что невозможно посетить все 5 точек и проехать сам маршрут за 8 часов - возвращает хук, что нужно сократить количество точек. Наш бэк возвращает новый список из 4 точек, и маршрут перестраивается.
6. Экстра задание. Опишите другие элементы API, о которых стоит знать.
Результатом должно быть:
- Google Docs файл с доступом на Комментарий пока работа не будет принята.
- Описание вашего релевантного для проекта опыта. Это важно, потому что это только 1 задание. В течение следующего года будут еще задания, имплементация этого API или другого движка построения маршрутов. Поэтому задание частично как испытательное задание.
- По вопросам от 1 до 5 - письменный ответ в открытой форме. Если ответ положительный - привести доказательства, чтобы убедиться, что ответ имеет смысл.
- 6. Открытый вопрос. Рассчитываю на техническую экспертизу исполнителя, чтобы подчеркнуть полезные функции данного API. Если нужны детали по проекту - готов общаться.