Mkgmap

Начал понемногу разбираться с Mkgmap. Ух, могучая штука! Скорость работы вообще не поддается каким-либо сравнениям - ну, очень быстро. В общем, процесс идет с удовольствием. Но по ходу действия возникло несколько непонятностей. Может кто-нибудь их сможет разрешить?

Странность номер раз. Это глобальный поиск. Индекс генерится, и в Мапсорсе активируется волшебная кнопочка. Тут все замечательно. Но. Найти ни чего не получается, т.к. при вводе любых символов латинского или русского алфавита, вылезают исключительно умляуты:

Кодировка в конфигах аж 2 раза прописана вполне конкретным образом:
charset:cp1251
code-page:1251
При этом на карте все русские названия отображаются вполне корректно. Настроек кодировки именно для поискового индекса я не нашел.
Куда копать?

Вторая нерешенная задача - это создание из одного объекта ОСМ 2-х разных в Гармине. Например, имеется замкнутый вей с тегами landuse=military и barrier=fence. Необходимо на выходе получить полигон и линию. Так вот, прописав в конфигах Mkgmap и то, и другое, в карту попадает только линии. Полигоны пропадают. Если отключить обработку линий, в нашем примере это barrier=fence, то тут же начинают рендериться полигоны. Как бы поженить эти две субстанции на одной карте?

И, наконец, третья задача, с которой очень хотелось бы разобраться. Как известно к Mkgmap еще есть и Splitter, который режет исходный большой ОСМ-файл на несколько, в зависимости от плотности данных. Но режет он прямоугольными областями. Делал ли кто-нибудь обрезку по форме областей РФ? В доках сказано, что для определения такой области годится KML-файл. Я сделал такой файл, но нифига не вышло. Результирующий файл получается тупо пустым. :confused:

Есть параметр continue - см. документацию. Тупо в конце квадратных скобок его ставишь и - вуаля - обработка этого объекта продолжается.

А не проще нарезку с гислаба брать? Даже сверхплотная Московская область нормально обрабатывается и без резки на кусочки.

Спасибо, работает!

Проще. Но совершенно определенно не интереснее. :slight_smile:

А кто-нибудь из местных участвует в процессе разработки mkgmap? Я время от времени захожу поглядеть на тамошний форум-транслятор почтовой рассылки
http://gis.638310.n2.nabble.com/
Достаточно живо и продуктивно там общение происходит. Например, победили глобальное индексирование. Планируют склеить с основной транк-веткой версий. Но вот беда, поддержки русских букв там никто не предусмотрел. Я бы и сам поучаствовал, но не программер ниразу… :roll_eyes:

ЗЫ:
Да и вообще. Активность этой темы наводит на мысль, что или mkgmap у нас практически никто не пользуется, или все те, кто пользовался - перестали. Надо бы как-то оживлять тему!

Почему перестали? Как работала так и работает.

О! Это радует.
А никто не смотрел - насколько рабочим получается? И насколько можно управлять индексированием (статусные части etc)?
И кстати, по какой схеме там адресация строится?

Не, пока не пробовал, т.к. в index-ветке с русскими буквами проблема. Не понимает она их.
Сегодня, кстати, о способе решения там написали:
http://gis.638310.n2.nabble.com/Global-index-branch-tp6067663p6071425.html
Но для меня вся эта Java как китайская грамота… :roll_eyes:

Ну ява там не причем - как я понял, для сортировки, нужен просто файлик с русскими символами от а до я.

Я пользуюсь тоже. Индексирование и поиск улиц как-то никогда особо не нужны были, зато очень радует скорость компиляции.

Т.к. некоторое время назад у меня появился свой небольшой сервер, то решил организовать на нем ежедневные сборки из full.osm ГИС-Лаба
Доступно это все тут:
http://maptourist.org/file/category/3-garmin

Стараюсь время от времени править стили с расчетом на удобство использования карт разнообразными туристами. Кое-что уже получается, что-то еще только предстоит сделать. Но в любом случае буду рад, если все это будет еще кому-нибудь кроме меня интересно.
Конструктивная критика и дельные предложения весьма приветствуются!

А разбивка на регионы планируется?

а разве мкгмап умеет по регионам?

Точно. Пока он такого не умеет.

Интересно :slight_smile:
Кстати, а где-нибудь можно посмотреть на ваши стили?

Да, стили тоже надо бы расшарить. Сделаю как-нибудь.

А с какой битностью собирается карта? Почему размер на порядок больше Лешиного?

На порядок - это если б она весила больше гига, как минимум. И битность тут не при чем.
У меня собирается не только Россия, а все, что попало в full.osm. Т.е. СНГ и другие страны бывшего Союза.

Кстати насчёт битности. Недавно собрал карту свежим mkgmap, а домики там какие-то кривые. Вот не могу вспомнить, раньше также было или нет. :slight_smile: Вообще в mkgmap битность регулируется?

Конечно регулируется. В файле options находятся как раз эти настройки, отвечающие за количество слоев и их битность. У меня так:
levels = 0:24, 1:22, 2:21, 3:19, 4:18, 5:16

Про домики: Лучше не было, т.к. больше 24-х Mkgmap не умеет.

Найден на просторах мейл-архива mkgmap пост http://www.mkgmap.org.uk/pipermail/mkgmap-dev/2010q4/009488.html
Вкратце - сделать картинку на экране навигатора очень похожей на мапник: http://wiki.openstreetmap.org/wiki/User:Petrovsk/FR:My_Garmin_map_styles#Mapnik
строка запуска
java -Xmx1G -jar mkgmap.jar --gmapsupp --charset=windows-1251 --style-file=mapnik/mapnik --family-id=42 --ignore-osm-bounds --output-dir=output myfile.osm mapnik.TYP
42 - прописана в TYP-файле (находится по второй ссылке). Осторожно, есть на просторах интернета еще один mapnik.typ, у которого FID 2000

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

Если кого-то заинтересует, могу подробней рассказать-показать.