Карты OSM для Garmin (osm2mp+cgpsmapper)

скрипты для скачки квадрата есть в svn: osmget.pl и osmsort.pl
они кривоватые, но в целом их хватает
скрипт для конвертации - osm2mp.pl

ещё один скрипт, который это всё последовательно запускает: скачать, конвертнуть в .mp,
скомпилировать img, собрать мапсет, заархивировать, залить на ftp.
он несложный, но сильно завязан на конкретно мой комп, поэтому выкладывать его нет смысла

А конвертация из mp в img какой программой делается?
А typ редактируется руками? Хранится ли этот typ в svn?

из mp в img - http://cgpsmapper.com/buy.htm
typ пока тупо взят iagsoft-овский: http://veloservis.ur.ru/charting/typ.html
но свой всё равно надо будет делать

Наверное глупый вопрос, но в мапсурце контуры домов видны а в самом ХТ невидно. Это связано с typ файлом?

связано.
без typ-а XT контуры домов не показывает

Яссно, и еще один вопрос. Поиск по адресам в Питере пока тоже не работает и что для этого надо? в самом ОСМ вроде улицы есть, адреса местами тоже присутствуют, где нет, там по возможности добавляю… может еще что надо делать? я готов приложить усилия в этом направлении, а то во всем Питере по поиску только улицу Кропоткина выдает…

Договориться какую схему адресации использовать

Соответственно надо предложить варианты и прийти к компромиссу голосование либо пусть сообщество гуру примет волевое решение и будем ему следовать.

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

Технически не сложно добавить каждому дому имя улицы (ближайшей по расстоянию), района , города и тд.
по крайней мере в СПб и Выборгском районе области.
Но сначала хотелось бы закончить добавлять имена улиц.

Меня вот эта схема очаровала - http://wiki.openstreetmap.org/index.php/Relations/Proposed/Postal_Addresses
Кста, в Беларуси она же вовсю используется.

В каком районе питера начинать копать с именованием улиц?

Опять же геморрой будет, если делать точно по этой схеме, в работе с рилейшнами - тут опять вложенные рилейшны, плюс каждый рилейшн надо привязывать к какому-нибудь физическому объекту, а то потом ты его больше никогда не достанешь автоматом - только руками. Плюс этой схеме не хватает наглядности - попробуй вспомни, что означают эти a0, a1 и т.д. Надо делать пресеты и дорабатывать жосм, а потом уже обсуждать ее повсеместное использование. Хотя потенциал в ней большой, это без сомнения. Но вот “дуракоустойчивость”…

Я могу эту схему добавить в своего бота cladr2osm, там где кладры присвоились будут созданы и эти релейшены.
И вообще, я не уверен что эта схема для ручного редактирования, лучше это все роботу скармливать.

Дуракоустойчивость низкая у всех схем адресации. Тут только автоматическая обработка спасёт…

меня ранее испугало в схеме с релейшенами не это.
сейчас по судя по Id всего на карте около 70 тыр релейшенов
если добавть например РБ+области+районы+наспункты+улицы минска получится ещё тысяч 40
не говоря уже о том что по этой схеме надо создать отдельный релейшен для каждого здания

Кто-нибудь задумывался “как это будет по-русски”?
Я вижу примерно так:

a1 Регион: Москва (7700000000000)
a2 Район: Москва (7700000000000)
a3 Город: Зеленоград город (7700000200000)
a4 Населенный пункт: Алабушево поселок (7700000200700)
a5 Район: Не используется (нет доступного источника информации по России)
a6 Улица: Колхозная (77000002007151200)
sts Статусная часть улицы: улица
hno Номер дома, числовая часть: 5
hns Номер дома, буквенная часть: к2

А что в этом страшного?

Один из недостаткой данной схемы - это то, что потребуется многопроходность (скорее всего хватит двух проходов). Но это же вылезет для почти всех других схем адресации. BTW, тут можно “сжульничать” примерно так, как это делает TeX: писать в конце прохода уточненную информацию в файл, а при очередном прогоне предзагружать ее оттуда - тогда программе не понадобится разного поведения при разных проходах, можно будет использовать несколько устаревшую информацию от предыдущего конвертирования… плюс (что может оказаться иногда очень полезно - можно разделять эту информацию между фрагментами карты, если она делается из нескольких кусков).
Кстати можно и модифицировать эту идею - вместо (а скорее в дополнение к) релейшина использовать физический объект (area, way, node) более высокого уровня.
Так не понадобится плодить миллионов отношений (да еще и взаимозависимых) и появится привязка к физическому объекту (и к координатам).

Добрался таки твой робот до Самары :slight_smile:

Дуракоустройчивость тем выше, чем проще метод или инструмент. Не зря же АК (Автомат Калашникова) по миру разбежался…
Автоматизировать то можно, но только как автоматизируешь определение номеров домов на карте? :slight_smile: Перед этим придется использовать какую то промежуточную схему нумерации, которую потом после робота куда-нибудь девать…