#postgresql #gis #openstreetmap #geoserver #pgrouting
#postgresql #гис #карта открытых улиц #геосервер #pgrouting
Вопрос:
Я новичок в OSM, но теперь мне нужно создать приложение, которое будет использовать ГИС (Геосервер) и будет предоставлять услуги для доставки дороги из пункта А в пункт Б.
Я нашел некоторую информацию об этом, но у меня все еще есть какие-либо вопросы. Я загружаю открытые карты улиц и извлекаю их в базу данных (PostgreSQL), а для маршрутизации использую плагин pgRouting. Затем подключите базу данных к картографическому серверу и предоставьте api для клиентов.
Вопросы: 1. Правильно ли это? 2. Какой формат osm я мог бы использовать для postgre? (osm.pbf? shp.zip ?, или что-то еще?)
Спасибо за ответы
Комментарии:
1. перекрестная публикация: gis.stackexchange.com/questions/214371 /…
2. Для GraphHopper разрабатывается плагин шейп-файлов: github.com/graphhopper/graphhopper/pull/616
Ответ №1:
Позвольте мне уточнить, что нужно для начала и до конца:
- Сначала вам нужно загрузить данные OSM, для чего вы можете просто использовать Overpass API.
- OSM2PO инструмент CLI на основе JAVA для преобразования данных OSM в маршрутизируемые данные, вот хорошее руководство по использованию этого инструмента.
- Postgresql с расширениями postgis и pgRouting вы будете использовать алгоритм Дейкстры для получения кратчайшего маршрута или любой другой алгоритм, который вам больше всего подходит.
- Наконец, вам понадобится Geoserver, который будет предоставлять стандарты OGC, например, WMS и WFS, с помощью которых вы можете получить свой маршрут в растровом или векторном формате, вы можете хранить свою таблицу в виде слоев, и вам может понадобиться представление SQL.
- Кроме того, для внешнего интерфейса вы можете использовать OpenLayers, который представляет собой библиотеку веб-картографирования JavaScript, или вы можете использовать Leaflet, вы можете легко выполнять запросы WMS и WFS из этих библиотек на Geoserver, и Geoserver отправит вам ответ с вашими запрошенными данными, если запрос правильный.
ПРИМЕЧАНИЕ: Вы можете использовать QGIS v2 с плагином pgRouting для тестирования.