[IDEA] Составление треков по графу OSM

Задумался, что нет удобного инструмента рисовать трек какого-нибудь маршрута например мероприятия… Собственно идея достаточно проста, только я тут реализовать мало что сам смогу.
Вообщем выводится карта осм и поверх неё ways в виде векторного слоя, все вэи поделены на сигменты ровно по пересечениям с другими вэями, собственно человеку остаётся лишь накликать по вэям. Возможно такое впринципе?
В идеале ещё показывать запреты поворотов в подложке, не ошибиться при составлении карты и знаки движения по полосам, когда устаканят какую-нибудь схему.

Собственно дальше пользователь сохраняет трек себе или шарит на том же ресурсе.
Треко-хранилка у меня есть, я готов бы это содержать в этой части, а вот где взять чудо-юдо генератор графа осм в нужном виде?..

По сути, предлагается хранилка маршрутов вовне осма. Идея хорошая, годная, я давно «за» вынос таких сущностей, как маршруты, наружу.

А потом кто-нибудь удалит сегмент маршрута, или перерисует, или ещё что, и маршрут во внешней бд накроется тазом. Он и во внутренней-то накрывается из-за потлачеров… См. «Маршруты общественного транспорта».
Нужна какая-то интеллектуальная система восстановления повреждений

QlandkarteGT

Позволяет рисовать полилинии, прилипая при этом к дорогам. Полилинию можно потом экспортировать в маршрут или трек, добавив при этом туда ещё и значение высот с DEM слоя.

Тут можно убить сразу двух зайцев, если продумать структуру хранения маршрутов.
Например, что-нибудь вроде:

<routepoint id="....">
<osmnode>nodeID</osmnode>
<geonode lat="..." lon="..." />
</routepoint>

При этом geonode - обязательный, а osmnode - нет.
Что позволит как добавлять в маршрут узлы, которых нет в карте (грубо - если надо обозначить подход к определенной части какого-то здания или еще куда-то), так и иметь определенную избыточность, позволяющую не убить маршрут при исчезновении узла. Всему маршруту (или отдельным его routepoint, имеющим osmnode) можно назначать или не назначать признак автообновления (то есть обновления geonode по изменившимся координатам узла, на который ссылается osmnode) или, наоборот, readonly.

http://www.tomtom.com/page/openLR

Можно вообще уйти от кликанья по сегментам, если задействовать роутинг. Посмотрите как работает прокладка маршрута на гуглокартах. Поставил ключевые точки - получил готовую линию по дорогам. Ах да, я забыл, роутинг же есть только в навигаторах… :slight_smile:

А чтобы не ломалось - надо хранить отдельно геометрию целиком. Надо выбирать что важнее - или защита от поломок или автоматическое изменение геометрии при редактировании геометрии дорог.

Немного не поняли меня. Треки сохраняются как обычные последовательности точек не привязанные к OSM. Граф обновляется и слава богу.
Никакой привязки делать тут и нельзя. Просто это удобный быстрый НЕ привязанный к ПО и прочей фигне путь нарисовать быстро маршрут.

Qlandekarte с вектором не подружился, а потом вообще перестал работать. Да и я не нашел программы которая треки за 3 года может в нужное русло проанализировать, потому это может мой сайт :slight_smile:

Роутинг мульти (переходы авто-пешком, вело-пешком) есть где-то? Опять же в случае роутинга (уже пробывали люди) возникает куча мест, где промежуточные точки надо ставить постоянно - неудобно. Да и сжечь гугл надо.

http://map.project-osrm.org/
Строит по дорогам, сохраняет в GPX. Несколько не то, что хотят, но для построения машрута и запихивания ещё куда - самое то.

Может я сути не понял, но чем “Персональные карты” не подходят на осмъ?

http://www.openstreetmap.ru/?mapid=12

P.S. Перечитал, понял что не понял. Но это типа следующего уровня PersonalMap

Мне роутеры не подходят, так как они работают неправильно и стоят “оптимально”, а мне не надо оптимально :slight_smile: Мне надо так как надо.

Персональные карты это хорошо, но удобней рисовать не кликая по воздуху, а тыкая просто в сегменты уже существующей “хорошо привязанной” дороги.

Ну так там можно самому “притянуть” маршрут к нужной дороге.

Да, такой сервис действительно не помешал бы.

Строим маршрут от точки А в точку Б, там где он проложился неправильно, мы берем его за точки и ставим в нужное мето, причём это не новые контрольные точки в маршруте, которые можно и сейчас делать в том же OSRM, а просто перемещение точек трека, чтоб их можно было подвинуть вообще в любое место, хоть туда, где дорог нет.