Repolode
GIScience

GIScience/openrouteservice

Открытый движок маршрутизации на Java: маршруты, изохроны, матрицы и привязка к дорогам на основе данных OpenStreetMap.

Open source альтернатива:Google Maps Platform Directions API

Звёзды
1,990
Форки
488
Открытые issues
177
Последний коммит
вчера

Что это?

Openrouteservice — это backend для планирования маршрутов, написанный на Java. Он основан на изменённой форкнутой версии GraphHopper 4.0 и использует открытые географические данные OpenStreetMap для обработки пространственных запросов для разных видов транспорта.

Сервис предоставляет HTTP-эндпоинты для построения маршрутов между точками, создания изохрон — областей, доступных за заданное время или расстояние, расчёта матриц времени и расстояния «один ко многим», «многие к одному» и «многие ко многим», привязки координат к дорожной сети и экспорта базового графа маршрутизации. При запуске собственного экземпляра доступны эндпоинты проверки работоспособности и статуса.

Сервис распространяется в виде Docker-образа. Для запуска локального экземпляра с примером данных OSM предоставлена конфигурация docker-compose. Документация описывает запуск сервиса, API и Swagger UI для локального тестирования.

Ключевые возможности

  • 01Построение маршрутов для разных видов транспорта
  • 02Изохроны, показывающие области, доступные из заданных точек
  • 03Матрицы времени и расстояния «один ко многим», «многие к одному» и «многие ко многим»
  • 04Привязка координат к дорожной сети
  • 05Экспорт базового графа маршрутизации

Сценарии использования

  • Добавление построения маршрутов и расчёта времени в пути в веб- или мобильное картографическое приложение
  • Расчёт зон обслуживания или охвата с помощью изохрон
  • Создание инструментов для логистики или управления автопарком, которым нужны матрицы расстояний и времени
  • Запуск собственного API маршрутизации на данных OpenStreetMap

Быстрый старт

  1. 1

    Создать каталоги для данных

    mkdir -p ors-docker/config ors-docker/elevation_cache ors-docker/graphs ors-docker/files ors-docker/logs
  2. 2

    Скачать последнюю версию docker-compose.yml

    wget https://github.com/GIScience/openrouteservice/releases/latest/download/docker-compose.yml
  3. 3

    Запустить openrouteservice в фоновом режиме

    docker compose up -d
  4. 4

    Просмотреть журналы контейнера

    docker compose logs

Что важно знать

  • Распространяется по лицензии GPL-3.0 — лицензии с авторским левом, требующей выпускать производные работы с открытым исходным кодом на тех же условиях.
  • В конфигурации по умолчанию используется только небольшой тестовый фрагмент OpenStreetMap для Гейдельберга, поэтому для других регионов необходимо предоставить собственные данные OSM.
  • Для запуска собственного экземпляра нужны Docker и усилия по самостоятельному хостингу. Эндпоинты health и status недоступны в публичном рабочем API.

Темы

Частые вопросы

Что такое openrouteservice?
Открытый движок маршрутизации на Java: маршруты, изохроны, матрицы и привязка к дорогам на основе данных OpenStreetMap. Openrouteservice — это backend для планирования маршрутов, написанный на Java. Он основан на изменённой форкнутой версии GraphHopper 4.0 и использует открытые географические данные OpenStreetMap для обработки пространственных запросов для разных видов транспорта.
openrouteservice можно использовать бесплатно? Какая у него лицензия?
openrouteservice распространяется с открытым исходным кодом под лицензией GPL-3.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
openrouteservice всё ещё поддерживается?
Активно поддерживается. Последний коммит в openrouteservice — 6 нояб. 2026 г..
Для чего можно использовать openrouteservice?
Добавление построения маршрутов и расчёта времени в пути в веб- или мобильное картографическое приложение Расчёт зон обслуживания или охвата с помощью изохрон Создание инструментов для логистики или управления автопарком, которым нужны матрицы расстояний и времени Запуск собственного API маршрутизации на данных OpenStreetMap
Как установить openrouteservice?
Создать каталоги для данных: mkdir -p ors-docker/config ors-docker/elevation_cache ors-docker/graphs ors-docker/files ors-docker/logs Скачать последнюю версию docker-compose.yml: wget https://github.com/GIScience/openrouteservice/releases/latest/download/docker-compose.yml Запустить openrouteservice в фоновом режиме: docker compose up -d Просмотреть журналы контейнера: docker compose logs
Где скачать openrouteservice?
Исходный код и инструкции по установке — на GitHub: https://github.com/GIScience/openrouteservice

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Высокопроизводительный маршрутизатор на C++, который строит маршруты, таблицы расстояний, сопоставляет GPS-треки с картой и решает другие задачи на данных OpenStreetMap.

8,2 тыс.+8 за неделю4 тыс.C++BSD-2-ClauseАктивно поддерживаетсяОбновлён 3 часа назад

Маршрутизатор с открытым исходным кодом для OpenStreetMap: доступен как Java-библиотека и отдельный веб-сервер для запросов маршрутизации, изохрон и map matching.

6,8 тыс.+9 за неделю2 тыс.JavaApache-2.0Активно поддерживаетсяОбновлён вчера

Открытый сервис геокодирования: ищет по имени и адресу в данных OpenStreetMap, а также выполняет обратное геокодирование.

4,6 тыс.+11 за неделю870PythonGPL-3.0Активно поддерживаетсяОбновлён 4 дня назад

Сервер с открытым исходным кодом для мультимодального планирования поездок на общественном транспорте, велосипеде, пешком, с велопрокатом и вызовом автомобиля.

2,8 тыс.+5 за неделю1,2 тыс.JavaOtherОбновлён 21 час назад

Открытый браузерный глобус с фотореалистичным 3D-рельефом, на который нанесены данные о рейсах, судах, спутниках, землетрясениях, пробках и общедоступных камерах; есть голосовое управление.

63,4 тыс.+1,6 тыс. за неделю12,5 тыс.JavaScriptOtherОбновлён 2 часа назад