Адресная схема, используемая osm2mp (гармин/навител)

очень приближенно к этому. неплохой сервис, жаль что он ограничивается только украиной

По поводу валидатора и одноимённых улиц: есть идея выводить в отдельной колонке количество несмежных между собой кусков улиц. И ссылочки на эти куски. Такие улицы сразу вызовут подозрение. И их исправят.
Как сделать эту проверку - не знаю :frowning:

Как минимум вот тут это вполне штатная ситуация: http://osm.org/go/2EGaYVv4

ЗЫ
Не говоря уж про мелкие улочки, пересекающие крупные, нарисованные двухвейками

Здравствуйте. Как вытащить точки адресов, если контуры домов ещё не обозначены? Например, имеем такую картину https://www.openstreetmap.org/#map=18/54.75236/25.42184 , видно, что не все дома обозначены контурами, но точки адресов уже проставлены. Скачиваю, конвертирую в .mp, этих точек адресов нету. Наша курьерская программа работает с картой формата .mp, просто беда! Пока не обозначишь дом, адрес не определяется :frowning:

Брать адрес не только way, но и node.

Эх, знать бы ещё, как это сделать! Пользуюсь готовой сборкой из вики. Правда, хватило мозгов переделать под литовский контент, но чисто интуитивно. Может подскажете куда что добавить, прописать? Спасибо.

Попробуйте так в nodes-common.yml:

#Address on address points
- condition:
    - addr:housenumber = *
    - building != *
    - amenity != *
    - shop != *
    - office != *
    - tourism != *
    - craft != *
    - only_node
  action:
    - action: write_poi
      type: 0x6100
      contacts: no

Спасибо за совет! Однако, пока ничего не получилось. Эти строки добавил в файл nodes-common.yml, что находится в сборке по пути cfg-garmin/polish-mp . Верно ли я понял?

Вот пример карты: https://www.openstreetmap.org/#map=18/55.72796/21.19027 Точки адресов проставлены, вопрос, как их вытащить в карту польского формата, если у них есть только такие ключи, как пример:
addr:city=Ginduliai
addr:housenumber=22B
addr:postcode=91276
addr:street=Kalnelio g.

Если вручную добавляю к адресу building=house, то такую точку вытянуть можно, и она отображается на карте точкой с номером. Другое дело, что наша программа всё-равно не определяет эту точку как адрес, однако, хоть на карте она видна.
Но таких точек тысячи, и они с правильными координатами! Немыслимо вручную добавлять теги. Вот незадача…

Тогда наверное вам надо научить понимать тип ПОИ 0х6100 свою программу.

зачем вообще это промежуточное звено со своими тараканами?

То есть, Вы хотите сказать, что с этими записями в файле nodes-common.yml ПОИ 0х6100 в карте.mp уже всё-же присутствуют, только наша программа их не видит?

Действительно скачались! Только что проверил редактором MicroGISEditor, без записей ПОИ 0х6100 на карте отсутствуют, а с записями есть! Спасибо! Далее, пусть программисты чешут репу!

В Литве что Яндекс, что Google почти ноль! Само-собой имеются и местный ресурс ArcGIS, который за каждую точку адреса своими расценками снимет штаны. Карта польского формата в программе выполняет роль адресной базы и для построения маршрутов. “Страшный” её вид никто и не видит, ни операторы, ни водители. У них же отображается только оболочка в виде тех же карт, Google, Yandex или того же OSM, что точнее отображает действительность! Потому, что сами же и редактируем её и постоянно пополняем на проекте OSM. Файлы с точками адресов начала любезно делиться IT служба местной администрации, так они и попадают на карту OSM. Но только точки адресов, на более пока не договорились. Вот отсюда и желание их сделать видимыми у нас.

Файл .мр - текстовый. Сделайте поиск 0х6100 по нему - если есть, то найдете.

Спасибо, свой пост поправил. ПОИ на карте с записями присутствуют:)

Получил ответ от разработчиков по поводу обучить программу распознавать эти ПОИ. Они посоветовали отредактировать карту, заполнив или добавив параметр “Label=”, и делов-то. Точки в данный момент имеют такой вид:

; NodeID = 4876489437
[POI]
Data0=(55.7621701,21.2063510)
Type=0x6100
Label=
CityName=Trušeliai
CountryName=Lietuva
HouseNumber=5
RegionName=12345 Sendvario seniūnija
StreetDesc=Advernio g.
Zip=92337
[END]

У многих точек самого параметра Label= просто нету!

Попробовал в текстовом редакторе добавить запись в параметр Label=Advernio g., 5

; NodeID = 4876489437
[POI]
Data0=(55.7621701,21.2063510)
Type=0x6100
Label=Advernio g., 5
CityName=Trušeliai
CountryName=Lietuva
HouseNumber=5
RegionName=12345 Sendvario seniūnija
StreetDesc=Advernio g.
Zip=92337
[END]

Действительно, адрес в программе стал определяться, как пункт, имеющий правильные координаты, маршрут прокладывается. Чего в принципе и добивались. Однако этих точек на карте более 20000! А они говорят - не беда, дай нам карту, мы её вмиг переделаем. Всё прекрасно, но карта на проекте OMS постоянно обновляется, как мною, так и коллегами. И скачиваю её каждую неделю почти, по мере обновления. И тут уж точно разработчики не станут заниматься коррекцией карты постоянно.
Можете посоветовать каким редактором можно отредактировать карту? Или может можно добавить какие-нибудь записи в раздел:

action:
    - action: write_poi
      type: 0x6100
      contacts: no

которые добавляли бы сам раздел (если его нету) или добавляли в пустой Label= название улицы и номер дома? На вопрос к разработчикам “Чем собираетесь редактировать такое количество точек?” - ответа не последовало…

Ivaness2, когда себе конвертил Литву, у меня получалось так:

В nodes-common.yml было так:

  • condition:
    • or:
      • and:
        • building = *
        • building != no
        • addr:housenumber = *
        • only_node
      • and:
        • building != *
        • addr:housenumber = *
        • addr:street = *
        • only_node
          action:
    • action: write_poi
      type: 0x2800
      Label: %house
      contacts: yes
      inherit_address: no

Спасибо, сейчас попробую. Однако, речь шла не о адресах зданий, а о проектных точках будущих зданий Type=0x6100, выложенных из официальных источниках и с разрешения их.

Да, эти точки на карте стали видимыми:) Однако, в поиске не находятся, потому, что параметр Label прописались только номера домов без названий улицы. Но, как мне кажется, решение где-то близко.

Так у меня на картинке и стоят точки без контуров зданий. И свойства показаны для одной из таких точек, которая в кружочке :).

Может надо по другому написать Label: %house? Как-нибудь Label: %street, house

Получилось Label=Gulbių g., house:D Значит надо Label: %street, %house верно?

То есть у вас адреса ищутся не по адресным данным (они есть на моей картинке), а по Label.

Можно в settings-mp.yml дописать, например, так:
— taglist:
streetlabel: [ addr:street ]

Ну а в предыдущем исправить на
action:
- action: write_poi
type: 0x2800
Label: %streetlabel %house
contacts: yes
inherit_address: no