Mkgmap

Заметил, что свежий mkgmap не отрабатывает ключи, если они указываются перечислением, т.е.

key=val1;val2;val3

как

key=val1
key=val2
key=val3

Раньше вроде такое проходило спокойно. Кто подписан на рассылку mkgmap-dev, задайте пожалуйста там вопрос, сам не могу, т.к. сейчас временно очень сильно ограничен в доступе в интернет и не имею доступа к почте.

Приветствую!

Я, конечно, не буду врываться в вашу беседу
Но скажите, почему не на одном из предложенных сайтов, на которые ссылки вы даете
http://forum.openstreetmap.org/viewtopic.php?id=15613
http://maptourist.org/file/category/3-garmin
нет ничего нового, вся конвертация так и осталась на уровне 30.03.2012-1.04.2012, хотя многие пишут постоянно обновляющиеся с OSM

polar-kasper
Идёт перелицензирование. Нет нарезок на гислабе, нет свежих карт.

пробую разобраться с mkgmap…
возникло несколько вопросов.

  1. Что означают условия в стиле?
!=*

и

=*

2.Сделал файл .typ в онлайн-редакторе http://ati.land.cz/gps/typdecomp/editor.cgi
При подключении его в mkgmap пишет:

и не подключается. При создании выбирал кодировку 1251. Что я делаю не так?

!=* не равно ни чему (без тега)
=* равно любому значению
WARNING - это предупреждение. Не критично. Хотя и не понятно, в какой момент это у вас происходит.

Да, warning ни при чем… Почему-то qLandkarte не хочет видеть в файле .img данные из .typ файла, а вот в навигаторе все ок. Хрень какая-то.
ValentinAK, а вот в вашей сборке qLandkarte данные видит… Вы в линуксе собираете? И именно с помощью mkgmap?

QlandkarteGT не читает файлы TYP из упакованного img файла. Не делает он этого принципиально, такова позиция разработчиков. Для просмотра в QlandkarteGT кладите TYP файл (можно несколько, тогда появляется выбор стиля на лету) в одну директорию с картой.

“О, сколько нам открытий чудных…”
Спасибо! А то уже за…ся подключать/отключать навигатор.

Подскажите, как сделать так, чтобы точка была (участвовала в поиске), но не отображалась на карте.

Принудительно присвоить ей в TYP иконку размером 0х0 px или 1х1 прозрачный пиксель.

Вопрос к тем, кто собирал или пытался собирать карты нескольких стран…
Есть Болгария и Румыния, которые хочется иметь в навигаторе. Проблема, что при использовании charset 1251, болгарские названия отображаются верно, а в румынских часто встречаются ? на месте необычных символов. Как можно собрать карту? Как-то делить на две части, собирать их с разной кодировкой и сложить в одну? А чтоб рутинг между ними работал?

Вообще, чтоб не играться с несоответствиями PID, FID, сложил осмозисом два дампа стран в один файл, и сплиттером и mkgmap-ом делал img. Есть ли другие способы, без участия осмозиса?

Разные кодировки внутри одного FID всё равно толком не уживутся (mkgmap же юникод ещё не умеет?).
Лучше сделать полностью отдельные карты.

Ещё как вариант, можно транслитерировать болгарские названия.

Подскажите по такой проблеме:
взял выгрузку Санкт-Петербурга с gis-lab, пишу правила для mkgmap, но никак не могу добиться, чтобы отображался Финский залив и Балтийское море. Не могу вычислить, каким полигоном они обозначены и с какими тегами.

UPD: разобрался. добавил параметры для генерации моря из береговой линии и подключил сгенерированные файлы береговых линий.

В сборках от maptourist и velo100 не очень корректно отрабатывается поиск. В том смысле, что в одной нет больших городов, а в другой они на английском. Связано с отсутствием в дефолтном конфиге правил учета границ в России.

в раздел

добавляем правила для России

UPD: что-то я поторопился, данная конструкция работает только для Москвы и Питера :frowning:

Еще UPD: после нескольких попыток родилось такое правило (файл, скорее всего, должен быть в кодировке UTF8)

в параметрах для mkgmap лучше всего указать

Здравствуйте
Есть желание научиться самому делать Гарминовские контейнеры из Planet.osm (горный туризм, вело, да и вообще, не люблю дома сидеть).
Поэтому нужны карты мест, куда не доходит рука OSM-овских гуру, разных форматов (авто, топо-вело, как наиболее приближенных, универсал).
Попытка самостоятельно освоить osmosis и mkgmap - пока закончилась неудачей. Уж очень все специфично.
Формат WiKi - это скорее технический справочник, а не пособие для начинающих, которого нет.

Насколько понял технологию - Planet.osm обрезается до нужных размеров by osmosis,
после чего конвертируется by mkgmap либо в готовую img-овую карту в прибор, либо в набор для MapSource.
А вот как конкретно это делается - вопрос (какие обязательные параметры должен содержать bat файл? Все описанные в Руководстве? Или есть какие то установки default, а остальное - улучшательство?)

Отдельный разговор - TYP. Есть какой-нибудь Стандарт для OSM? Или у каждого автора свой?

Поэтому вопрос: не смог бы кто из OSM-гуру (людей умеющих делать вышеописанное) ответить, правилен ли этот путь, или подсказать, что должен содержать (создать образец) bat-файла, например, для острова Валаам (Ладожское озеро) или острова Сингапур (Южно-Китайское море) с пояснением, что есть что и зачем для разных видов карт (авто, вело, универсал).
Спасибо.

Давайте начнем с простого.

  1. нам нужна консоль (<Win+R> → cmd → ).
  2. Переходим в папку со скачанным mkgmap (cd <имя-папки>).
  3. Скачиваем с http://gis-lab.info/projects/osm_dump/ Амурскую область в формате pbf (на нем тренируемся) в папку mkgmap-а
  4. В консоли набираем: java -Xmx1G -jar mkgmap.jar <скачанный-кусок>
  5. После успешного запуска берем в папке mkgmap-а файл 63240001.img, заливаем в навигатор и “наслаждаемся” дефолтным стилем.

если п.4 выдает что-то вроде “Команда не найдена - java”, значит, надо установить JRE c сайта Оракла.

1 Like

Файл 63240001.img получился. Хоть какие то подвижки. “О Великий Larry0ua”:slight_smile:

Остается разобраться, что делали и что получилось.
Делали: запустили mkgmap (параметры по умолчанию), увеличили размер памяти виртуальной машины до 1GB, получили на выходе файл. Тут ПОКА все понятно
Что получили? Файл-карту Амурской области (Файл открывается в GPSMapEdit, на его базе можно создать контейнер - но в нем отсутствует routing).
Это ведь не контейнер для установки в навигатор? Почему Вы пишете “…заливаем в навигатор и “наслаждаемся” дефолтным стилем…”?
Спасибо.

Хорошо, раз получилось.

Мой Garmin Dakota 20, если ему этот файл положить в папку Garmin самого навигатора, воспримет как еще одну добавленную карту (поэтому не использую MapSource)

Продолжаем туториал.

Бывают довольно большие osm-файлы, mkgmap на них будет ругаться, с сообщением:


There is not enough room in a single garmin map for all the input data
   The .osm file should be split into smaller pieces first.

Такие файлы предварительно надо нарезать splitter-ом (http://www.mkgmap.org.uk/page/tile-splitter)

для этого:

  1. Скачаем Краснодарский край с уже известного источника, положим в папку с распакованным splitter.
  2. Запускаем: java -Xmx1G -jar splitter.jar RU-KDA.osm.pbf
  3. Получаем на выходе 63240001 - 63240004.osm.pbf, areas.list, template.args - их надо переместить в папку mkgmap-а
  4. Запускаем mkgmap: java -Xmx1G -jar mkgmap.jar --gmapsupp --route --generate-sea --code-page=1251 -c template.args
    Тут мы просим mkgmap собрать за нас все полученные файлы в один контейнер (остальные файлы все равно останутся, но нам будет нужен только gmapsupp.img), собрать карту с рутингом и морем, исправляем проблемы с кодировкой (если были, конечно), и используем файлы, нарезанные splitter-ом.

2Larry0ua
Сплиттер, я так понимаю, нужно класть туда же где и mkgmap?
Или можно класть в свою папку, а после переносить полученные файлы в mkgmap

Какая то куча-мала получается.

Можно в свою, потом файлы переносить. Вообще-то можно использовать разные папки для исходного файла, промежуточных порезанных и результата, но так проще объяснять