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

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

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

Конгениально! Я в восхищении, краткость - сестра таланта.
Лёша, если бы в природе существовал актуальный мануал, расписывающий правила и условия, вопросов бы не возникало.
Я правильно понял, что копать нужно в 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

ОК, Спасибо, Лёша.
Я еще покопаюсь в конфигах, может чего и получится.

Лёша, а как бы допилить конвертер в шейпы. Ведь совсем чуток осталось ;).

А вот еще спрошу: а как osm2mp определяет condition: inside_city?
По каким критериям?

Судя по всему, по попаданию внутрь полигона населенного пункта.

А если у населенного пункта нет полигона? А есть только релейшн с admin_level, boundary=administrative, type=boundary.
Где-то в конфигах можно задать что считать полигоном НП для inside_city?