Вопросы новичков (Part 1)

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

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

в данный момент building:part отдельный объект с отдельным четко описанным тегом, никак не пересекающийся по тегам с обычными зданиями. если рендер его не знает, то он его исключает из дальнейшей обработки, и в конечную карту уходит “правильное” полноценное здание.

  1. почему нет ?? имеется правило что что значение building:part обрабатывать также как и обычное здание и он ему следует. и все правильно отображает. если он не умеет building:part он его не отображает.

Нью-йорк.
Отношение-граница имеет admin_level=5: https://www.openstreetmap.org/relation/175905
А точка не имеет admin_level вообще: https://www.openstreetmap.org/node/61785451

Это нормально? А то я тут при помощи

osmconvert --all-to-nodes

вытаскивал список населенных пунктов, так Нью-Йорк вытащился в виде точки без admin_level и потерялся среди мелких городов. У столиц других штатов тоже самое (да, Нью-Йорк не столца, а особый случай, но речь не об этом).

В России, кстати, все наоборот, на отношении admin_level не висит (https://www.openstreetmap.org/relation/3368701), а на точке - висит (https://www.openstreetmap.org/node/27503945).

Моя цель - получить список населенных пунктов с полями place, admin_level, name, name:ru.

admin_level, прежде всего, к административным границам.
Потом некторые ставят на административный центр того, что охватывает административная граница, шоб на карте поярче виднелось.
Но если центр один у нескольких admin_level, то будет ерунда.
Правильнее для этого смотреть таки admin_centre в отношении административной границы

Приведенная граница https://www.openstreetmap.org/relation/3368701 это не административная граница, а граница населенного пункта.

Все эти admin_level не на boundary=administrative от лукавого. По возможности лучше на них не обращать внимания.
place и admin_level на прямую не очень-то связаны, да и связь не однозначна.
Да и в разных странах эта каша намаплена по-разному.

Если нужны “населенных пунктов” то достаточно node[place]. С получением admin_level можно через overpass заморочиться.

Ясно, спасибо. Но как в таком случае предложите получить список населенных пунктов с каким-нибудь параметром, отвечающим за “старшинство”? Чтобы если они окажутся рядом, знать, какой из них обязательно рисовать, а какой можно и скрыть если не поместился.

http://overpass-turbo.eu/s/xBJ

По населению.

Ясно. Кстати, обнаружил ключ Capital (https://wiki.openstreetmap.org/wiki/Key:capital?uselang=en-US), он почти везде проставлен, кроме, почему-то, России.

Тут вроде ответили уже, но повторюсь :stuck_out_tongue:
В реальности здание будет одно, а в ОСМ — два. А если у здания есть адрес, то как его поделить на два объекта в ОСМ?
type=building хоть и рекомендован, но я почти перестал с ним связываться. Его тяжело поддерживать актуальным, если приходить перерисовывать здание (отчасти это неудобство программы-редактора).

Вики не против [1][2]

Не уверен, что где-то расписано, что считается отдельным зданием, а что его частью. Так что как здравый смысл подсказывает. Я привык считать объект с одним адресом — единым зданием.

в Америке Вашингтон по рангу выше Нью-йорка и по населению очень сильно ниже :slight_smile:
вхождение в боундари в виде члена admin_centre, по максимальному admin_level из подключенных отношений

Capital в много"республиканской" стране бессмыслененн. Казань так-то тоже столица респблики Татарстан. так что на ентот атавизм можно не смотреть.

Так capital это не yes/no, а число, обозначающее уровень (страна/область/…), такой же как admin_level. Фактически это аналог admin_level для столиц-точек.

Короче, я возьму place, admin_level, capital, population и напишу какую-нибудь формулу, которая учтет все эти поля.

А еще как-нибудь сяду и проставлю capital всем столицам субъектов РФ.

Уже обсуждали вроде.

  • Типа они же не столицы.
  • Да и в России все по admin_cеntre замечательно выуживается, это в заграницах со столицами бардак, а у нас строго.

Буквально осенью было дело:
https://forum.openstreetmap.org/viewtopic.php?id=55959

Вырезал внутренний “цилиндр” из внешнего здания. Теперь точно всё должно во всех программах срастись)

*осенью 2016 года

То есть мы имеем 2 варианта тегирования:

  • сделать Node-столицу частью отношения с ролью admin_centre
  • повесить на Node-столицу тег capital=(4 или что там)

Причем одно другому не мешает. А у нас вообще на многих столицах висит admin_level=4, хотя этот тег не должен использоваться для точек. Если его заменить на capital, будет как минимум не хуже. А нужен ли тег capital для точек, уже имеющих роль admin_centre, это глобальный вопрос и с учетом его массового распространения ответить на него непросто.

capital и admin_level на точке НП исторически это подсказка для рендера рисовать жирнее.
В Росиии c ролью admin_centre прнактически всё вплоть до района включительно, да и поселения в подавляющем большинстве проставлены, где границы нанесены.

На точке НП это дублирующая информация, в отличии от отношения границы. И если для регионов это ещё стабильно, то поселения у нас как горячие пирожки. И выйдет в итоге на 3 поселения 5 административных центра.

а в европиях отсуствует admin_centre ??
деление имхо везде есть и соответственно управляющие заведения, обычно расположенне в н.п.

Как посмотреть, что было до внесения правки?
В частности https://www.openstreetmap.org/changeset/57392773

Вырезали из поля лесополосу https://nrenner.github.io/achavi/?changeset=57392773

Achavi не помогает? http://nrenner.github.io/achavi/