Mkgmap

cgpsmapper, компилятор mp->img - да, именно так. Хотя и есть бесплатная полнофункциональная версия. А osm2mp - кроссплатформенный перловый скрипт, совершенно свободный. Вот.

Досадно. С настройками по умолчанию куча интересных объектов не вытаскивается.

gps-Max
Поглядел я mkgmap по Вашей рекомендации. У меня не получается на ней роутинг вообще никак, зато по русски все названия пишет.
Я, правда, в отличии от AMDmi3 использую внешний optionsfile.args файл.


charset: windows-1251 
code-page: 1251 

Вот эти строки (как мне кажется) и делают названия русскими.
Ну и батник для запуска:


java -ea -jar mkgmap.jar -c optionsfile.args data.osm

Правда забыл сказать, что полученную карту конверчу в формат *.rus при помощи GME.
Может тут как раз роутинг и теряется? Подскажите есть ли выход?
Скорость работы у mkgmap очень высокая, подтверждаю.

Ага, любая из этих строк или обе сразу. Также ещё проходит charset=cp1251 - насколько можно понять, различий в этих трёх вариантах нет, карты генерятся ровно те же.

Про роутинг мне самому очень интересно узнать.

А с osm2mp → rus роутинг остаётся?

gps-Max
Я пишу обе строчки, и все в порядке.
Сейчас шаманил с роутингом, получилось так.
Добавил в опции:


tdbfile (просто как есть , только одно слово)
overview-mapname: (сюда пишу тоже что и в "mapname:" , и там и там без расширения)

На выходе получаю 3 файла:

  1. Map.img
  2. Mapnull.img
  3. Mapnull.tdb
    Далее в обратном порядке гружу их в GME, в свойствах карты ставлю RUSSA, метры и все дело экспортирую в формат *.rus.
    Роутинг появился, НО, он то есть, то нет его, словом - надо увидеть самому.

А с osm2mp у меня к роутингу претензий нет, жаль я там с конфигами не дружу :).

Угу, ну так это использовать нет ни возможности, ни желания.

Это я знаю.

А есть где посмотреть скрины с одинакового куска карты, сконверченной cgpsmapper’ом и mkgmap?
Там есть какие-то стили, можно поковырять. Я бы поменял только обозначение allotments, которогое совпадает с лесом, и добавил бы какое-нидьу заметное выделение для нод с fixme=*. Остальное и так замечательно.

Проприетарщина, но не windows-only - есть под линукс.

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

У меня все переваривает, равно как и в полтора раза больший .osm

Поправка - я использовал r1625. r1688 действительно падает.
Поправка2 - падает, но gmapsupp.img, тем не менее, создает.

Со стандартными настройками переваривает, но стоит поднять количество уровней, как достигается потолок. Подозреваю, что если взять территорию побольше, то упадет и на установках по умолчанию. Падая, говорит, что слишком много объектов и типа надо резать osm на части. Пока обойти не удалось.

Сделать -Xmx1024m или что-то около? У меня конвертация mosobl жрет около полугига.

Переименуйте тему, буква “p” в середине лишняя.

Опечатка, исправил. Забавно, оказывается, я название по тексту то так, то так писал. Спасибо, что заметили.

Буквально только что наконец-то одержал маленькую победу над этой программулиной, разобравшись, как добиться русских символов, которые она никак не хотела отображать при преобразовании mp->img.

При этом преобразование osm->img замечательно работает. После некоторых экспериментов дело оказалось в том, что mkgmap ожидает увидеть в файлах данных UTF-8, как в файлах *.osm . Файлы же *.mp обычно идут в виндовой кодировке 1251, с отметкой об этом в заголовке CodePage=1251. Ходил вокруг да около этих кодировок, но получалась фигня. Codepage=UTF-8 или utf8 не берет, хочет число. Нагуглил cp65001, попробовал в винде - да, оно. Codepage=65001, как оказалось, тоже mkgmap’у не нравится.

В общем, решение такое: перекодируем файл mp в UTF-8 и комментируем внутри строку с codepage. Решение обходное, временное, но рабочее.

А зачем вообще эти mp нужны?

А затем, что osm2mp выдаёт заметно лучший результат, но в mp, который ещё после этого надо компилить дальше. Я хочу попробовать заменить на этом этапе cgpsmapper на mkgmap.

gps-Max, можно использовать osm2mp --nocodepage, тогда в .mp будет utf-8

Т.е. osm->mp->img получается лучше osm->img? Чем лучше?

Первое лучше лишь тем, что уже реализовано :slight_smile: