Расчёт расстояний по автодорогам России

Привет всем! Пишу небольшую программку для расчёта расстояний, искал базы с данными и наткнулся на эти карты.
Вопрос: Где скачать данные по дорогам России, чтобы конвертировать в нужный формат и чем конвертировать?

В каком произведении какого автора есть герой, которого как зовут?

Я здесь не с целью блеснуть интеллектом, мне требуется быстрое решение проблемы.
Где взять информацию по расстояниям между городами?

Взять координаты городов и посчитать длину дуги

Не обращай внимание, это форум по-русски, кое-кто получает удовольствие не отвечая, а выпендриваясь.

Чтобы расстояния посчитать, нужно скачать дамп России с ГИС-лаба, загрузить его в pgRouting, дальше написать запрос для массового расчёта путей, например такой.

Ещё советую почитать про алгоритмы маршрутизации, например, Reach for A*, там есть названия правильных алгоритмов и сложность вычислений, чтобы иметь представление, насколько A* работает быстрее алгоритма Dijkstra (немного быстрее), и какой сложности задача перед тобой.

@liosha, нечего ответить, не лезь лучше вообще. Вот из-за такого поведения и говорят, что тут сидят снобы-говнюки.

1 Like

Наконец-то! Спасибо добрый человек, как с тобой можно связаться, если я в чём-то не разберусь самостоятельно?

Если консультировать, спрашивай здесь на форуме. Если нужно готовое решение, пиши на email (ссылка слева), договоримся.

Скачал бинарники этого pgRouting, так и не понял что с ними делать, там в архиве .dll файлы. Это модули к чему-то или что?

Да. pgRouting - модуль к базе данных PostgreSQL. Это уже то, что ты можешь сам выяснить, почитав в интернете.

В общем, моё предложение - за небольшую денежку я это посчитаю и пришлю тебе таблицу расстояний.

Написал тебе на e-mail :slight_smile:

Установил Postgresql, установил Postgis, скачал pgrouting как его прикрутить к pgsql?

Под windows - не знаю, под линуксами - ссылку я дал выше, там инструкция полностью от и до.

Есть ещё вариант - не париться с расчётами на своей машине, а написать скрипт, чтобы сделал массовый расчёт например на Cloudmade.

Ссылки: API роутинга http://developers.cloudmade.com/projects/show/routing-http-api
Роутинг на их сайте, где можно получить в т.ч. расстояния: http://maps.cloudmade.com/ (кнопка Get directions)

… запустить скрипт, положить сервис, получить бан от клоудмэйдовцев. :slight_smile:

Поосторожнее со скриптами, далеко не все сервисы нормально относятся к таким вещам.

Спасибо, кажется я сдвинулся с мёртвой точки. Я так понял там требуется вводить географические координаты? Где можно брать свежий список этих координат городов?

Посмотрите здесь http://maps.cloudmade.com/# прокладка маршрута не только по России

Вот: http://developers.cloudmade.com/projects/show/geocoding-http-api
из названия делает точку.

Но лучше, наверное, воспользоваться тем же геокодингом от Яндекса, потому что Cloudmade не находит некоторых городов, например, Владивосток.

Вопрос почти что решён. Осталось два момента:

  1. Неверные расчёты дистанции от cloudmade? Очень длинное значение выдаётся и не меняется при смене километров на мили.
  2. Яндекс даёт координаты с шестью знаками после точки, это так и должно быть или можно сократить до 5 знаков после точки?

Почему не YOURS? Доки по API.

НЕ понятно что у них там с поиском маршрута, От Санкт-Петербурга до Москвы, например - не считает.

На сегодняшний день я имею координаты всех городов России, осталось найти сервис, который проложит путь по дорогам России (желательно по действующим дорогам на сегодняшний день)
Есть у кого-нибудь информация о сервисах?

А это данные поломал кто-то. В YOURS они куда как свежее. И вообще, он куда лучше этого вашего клаудмейда.
Ещё недавно прокладывал прекрасно.