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

Оставить в конфигах конвертации только то, что нужно.

Спасибо. Конфиги поменял, которые в cfg-garmin/polish-mp. Просто закомментил то, что не нужно и вроде нормально.

Приветствую!
Подскажите пожалуйста, такая вот проблема выявилась…
osm2mp на домики с номером но без улицы навешивает StreetDesc из названия города, в результате:

  1. Валидатор это пропускает (улица в адресе ведь есть)
  2. В Ситигиде этот дом имеет адрес по городу, что неправильно.

Что убрать в addressing.yml чтобы osm2mp оставлял улицу пустой?
Заранее спасибо.

Это задуманное поведение.
Можно в основных конфигах отключить адресацию для таких домиков

Ну это смотря в каком городе.

А можно попросить чуть подробнее указать, где и что подправить, чтобы адресацию отключить?
Спасибо.

Записать два отдельных условия: для домиков с адресами и без

Конгениально! Я в восхищении, краткость - сестра таланта.
Лёша, если бы в природе существовал актуальный мануал, расписывающий правила и условия, вопросов бы не возникало.
Я правильно понял, что копать нужно в ways-area-common.yml?

- condition:
    - building = *
  action:
    - action: write_polygon
      type: 0x13
      presets: [ building ]
      level_h: 1
    - action: address_poi

и как тут разделить домики с addr:street и без нее?
Спасибо.

Да, вот эту запись разделить на две: одну с addr:street=, другую addr:street!=

Спасибо, попробую.

Вот сделал так:

- condition:
    - building = *
    - addr:street != *
  action:
    - action: write_polygon
      type: 0x13
      presets: [ building ]
      level_h: 1
#    - action: address_poi

- condition:
    - building = *
    - addr:street = *
  action:
    - action: write_polygon
      type: 0x13
      presets: [ building ]
      level_h: 1
    - action: address_poi

один хрен, если в осм у домика нет addr:street, то osm2mp в StreetDesc лепит название города.
Кто может помочь?

presets: [ building ] тоже надо отключить

UPD
Сорри, наврал.
Действительно, при наличии addr:housenumber адрес всегда вычисляется.
Тогда да, конфигами такое не получится

Хм… Если это тот preset для зданий, что в setting-mp.yml, то там только Label, и Floors… не считая ситигидовых фиговин.
Ладно, попробую без presets.

И что тогда делать?

И еще один вопрос:
Если у домика есть набор из addr:housenumber, addr:street и addr:suburb, то в .mp у этого домика StreetDesc получается как “addr:street (addr:suburb)”. В результате валидатор заносит этот домик в ошибки “улица не найдена”.
Это можно вылечить?

Я не совсем понимаю, чего хочется в результате получить.
Как-то отдельно выделить домики без addr:street?

А что тут не так? Зачем лечить?

Да. Чтобы валидатор показывал ошибку типа 2 “улица не задана”. http://peirce.gis-lab.info/qa/RU-MOS/addr/2

Сейчас получается такая вот фигня:
Домик http://www.openstreetmap.org/way/230836833#map=19/50.64864/136.92987&layers=D
В .mp у него получается так:
Валидатор ругается, что такой улицы нет поблизости.
Нужно убрать добавление suburb.

Конвертим под валидатор?

Можно, например, добвавить в mp дополнительный ключ


- condition:
    - building = *
  action:
    - action: write_polygon
      type: 0x13
      presets: [ building ]
      level_h: 1
      extra_fields:
        HouseWithoutAddrStreet:
          selector: if
          condition: addr:street != *
          then: Yes
          else: No

А suburb в данном случае надо убирать с объекта: он не является частью адреса

Ну почему? Ведь добавление названия города в адрес при отсутствии улицы - неправильное поведение конвертора.

А можно ли все-таки сделать так, чтобы suburb не прилеплялся к улице? Или это тоже захаркодено?

Это правильное поведение.
Адрес типа “Уездный район, деревня Гадюкино, дом 18Б” - вполне годный и часто встречающийся.
Но потребители mp-формата требуют StreetDesc, поэтому приходится там дублировать “деревня Гадюкино”.

Можно вообще убрать suburb в cfg/addressing.yml