Конвертер OSM -> MP

Исправил

liosha
Если можно в список todo:
Опционально добавить поле Text= в полиш.
По умолчанию делать его отключенным, принудительно ставить по ключу –namelist description=

Возможное использование

--namelist description=description
--namelist description=official_name
--namelist description=fixme
--namelist description=note
--namelist description=opening_hours

Спасибо

Это можно в конфигах сделать для конкретных типов.
http://code.google.com/p/osm2mp/source/browse/trunk/cfg/polish-mp/nodes-garmin-custom-univ.yml#14

liosha
По аналогии сделал файл nodes-navitel-custom-test.yml

Добавил его загрузку в navitel-ru.cfg

Точка создается, но поле Label в полише отсутствует.

А fixme в таглисте прописан?
http://code.google.com/p/osm2mp/source/browse/trunk/cfg/settings-garmin.yml#6

  1. Можно ли добавить полигонам type=boundary+place=city/town/village/hamlet обработку, аналогичную обработке type=multipolygon+place=city/town/village/hamlet?
  2. Если такую обработку добавить нельзя, т. к. абы какие type=boundary+place=city/town/village/hamlet могут соседствовать с нормальными type=multipolygon+place=city/town/village/hamlet или обозначать что-то не то, нельзя ли добавить обработку type=boundary+place=city/town/village/hamlet+тег_показывающий_что_этот_полигон_нужно_сконвертировать_как_type=multipolygon?

Пояснение: есть страны, где вместо простановки type=multipolygon+place=city/town/village/hamlet предпочитают ставить type=boundary+place=city/town/village/hamlet. Получается, в них без обработки type=boundary+place=city/town/village/hamlet не отличить населённый пункт от межселенной местности и населённые пункты друг от друга (чтобы корректно работал адресный поиск).

Они и так обрабатываются одинаково

Точно? Давно ли так было сделано?

Я просто встречался с населёнными пунктами, адресация по которым в навигационных картах не работала (не определялась принадлежность улицы к населённому пункту), смотрел, как они обозначены в OSM и натыкался на полигоны type=boundary. И мне казалось, что адресация не работала даже в тех случаях, когда в отношении был проставлен тег place=city/town/village/hamlet. А вот в населённых пунктах, у которых тип отношения был type=multipolygon, адресация работала.

Например, Париж: type=boundary+place=city.
Правда, я не могу проверить, был ли проставлен place=city в момент генерации карты (возможно, он был проставлен после), т. к. при нажатии на посмотреть историю мне пишут “Извините, данные для отношения с id 7444 слишком длинные для извлечения.”

Так было всё время.

liosha, а admin_center в случае type=boundary не мешается?

не мешается

Есть подозрение, что osm2mp не понимает включение одних отношений в другие.

Да, не понимает

Это можно вылечить?

Можно, но вряд ли в ближайшем будущем.

А как насчёт поддержки addr:suburb на домах?

В настоящий момент есть есть линия 1 “name=Центральная улица” с домом “addr:housenumber=1+addr:street=Центральная улица” и линия 2 с “name=Центральная улица+addr:suburb=Район” с домом “addr:housenumber=2+addr:street=Центральная улица+addr:suburb=Район”, то формируются “Центральная улица” с домами 1 и 2 и “Центральная улица (Район)” без домов.

А должны быть “Центральная улица” с домом 1 и “Центральная улица (Район)” с домом 2.

Это странно. Можно ссылку на этот дом?

Дом должен привязываться к одной улице, а привязывается к другой.

Вроде всё правильно:

; WayID = 148888712
; building = yes
[POLYGON]
Data0=(59.8212310,30.0868219),(59.8212767,30.0870220),(59.8212014,30.0870900),(59.8211557,30.0868899),(59.8212310,30.0868219)
Type=0x13
HouseNumber=3
Label=3
StreetDesc=Спортивная улица (Володарский)
[END]

Это странно, т. к. практика показывает, что в СитиГиде, карты для которого, насколько я понимаю, получаются с использованием osm2mp:
а) добавление дома, обозначенного линией, в соответствующее отношение улицы работает
б) указание на доме addr:suburb не работает

По идее, в чём-то должно быть отличие. Может быть, типы пробелов разные (а визуально кажутся одинаковыми), может быть, какой-то параметр отличается. Т. к. если бы всё было одинаково, а отличались бы только номера домов, то и обрабатывались бы дома одинаково.

Предлагаю проверить.
вот дом 3:

вот дом 5:

Дом 5 включён в отношение “name=Спортивная улица (Володарский)+type=street” с ролью house.

Если всё работает корректно, мы должны получить два дома, отличающиеся только номером и координатами. И привязаться эти дома должны к одной и той же улице “addr:suburb=Володарский+highway=residential+maxspeed:practical=5+name=Спортивная улица+source=bing+surface=unpaved”.

Чтобы проверить, как обрабатываются дома, нам нужно будет ждать обновления выгрузок?