You are not logged in.

#1 2021-01-14 13:30:01

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Замена place=* на boundary=place

iWowik откопал какое-то локальное нидерландское предложение отмечать у себя place через boundary (https://wiki.openstreetmap.org/wiki/Tag:boundary=place). И давай это тихим сапом без обсуждения, правками на всю Россию исправлять у нас на новый лад.

В итоге сейчас он удаляет полигоны place. И хотя он их типа добавляет в отношение boundary, это на работает. Потому что place может быть либо замкнутой линией, либо отношением типа multipolygon.

Например в Османде контуры НП уже пропали. Возможно чуть получше ситуация с osm2pgsql, т.к. там на начальной стадии обработка
multipolygon и boundary одинакова. Но во всех остальных случаях, если тебе не интересны границы, то отношения type=boundary тебя тоже не интересует. В итоге полигонов place ты не получишь.

Схема не проходила классического proposal, да и не прошла бы, я думаю.

Из заявленных плюсов, это возможность указать точку place в роли label, чего нельзя сделать в отношении multipolygon.
Но уже вот 15 лет все сопоставляют одноимённую точка и полигон геометрически, и надобность в ручной связке отсутствует. Т.е. как таковой проблемы даже не существует.
Притом например рендерам ни эта связь, ни объект в роли label не нужен. Они просто подписывают точку place.
Так же это искусственное усложнение, когда создаётся дополнительное отношение с одним контуром (бывшим place).

Поэтому моё мнение, что нам это не нужно и то что уже сделано следует откатить.

Offline

#2 2021-01-14 14:25:02

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

freeExec wrote:

В итоге сейчас он удаляет полигоны place.

Ничего не удаляет. Ради красного словца не клейте, пожалуйста, ярлыки, представляя меня вандалом. Отношения остаются, тег place=* на отношениях границ остается. В основном пока менялись микрорайоны, восстанавливались удаленные границы locality и нп, а также создавались границы там, где их не было.

Маппинг границ нп в виде boundary, а не multipolygon вовсе не редкость, а изначально (15 лет назад, раз вы приводите это число) мало кто их вообще различал.

Какие "все остальные случаи"? Или перечисляейте, или не говорите за всех. Особенно избегайте говорить за меня. Если есть проблема с osmand можно поговорить с ними.

Граница в виде multipolygon плоха тем, что многими игнорируется вовсе, например рендер на главной странице (раз вы уж упоминули редеры), что постоянно приводит к попыткам размечать границы именно как boundary, но boundary administrative.
Такая ерунда произошла в Смоленской области, в Белоруссии все переделано boundary+label. На Ураине тоже у многих НП замаплены границы как boundary.
Причем эти границы не являются административными и было бы правильно их заменить на подходящие.

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

multipolygon описан как чисто геометрический объект, без возможности включить  дополнительно в отношение что-либо, кроме участков inner/outer. Это накладывает искуственные ограничения, благодаря которым, возможно, до сих пор в мировом масштабе границы place плохо приживаются.

У меня еще убедительная просьба изменить ваше эффектное название топика, чтобы оно таки отражало существо дела.
Нет никакой замены place=* на boundary=place, а есть добавление boundary=place к place=*

Last edited by wowik (2021-01-14 14:25:36)

Offline

#3 2021-01-14 14:38:21

KonTur
Member
From: SPB
Registered: 2010-03-10
Posts: 1,606

Re: Замена place=* на boundary=place

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

Offline

#4 2021-01-14 15:54:29

literan
Member
Registered: 2012-11-06
Posts: 3,548
Website

Re: Замена place=* на boundary=place

а насколько массовый характер носят эти правки?
можно ссылки на конкретные измененные объекты?

Offline

#5 2021-01-14 16:00:03

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Re: Замена place=* на boundary=place

wowik wrote:

Маппинг границ нп в виде boundary, а не multipolygon вовсе не редкость, а изначально (15 лет назад, раз вы приводите это число) мало кто их вообще различал.

Однако сейчас boundary это расширенная трактовка multipolygon и мешать их не нужно.

wowik wrote:

Граница в виде multipolygon плоха тем, что многими игнорируется вовсе, например рендер на главной странице (раз вы уж упоминули редеры), что постоянно приводит к попыткам размечать границы именно как boundary, но boundary administrative.

Это тут вообще причём. На главной place не отображается, хоть отношением, хоть линией. Если кто-то хочет мапить лишь бы видно было, то это в статью "не мапить под рендер".

wowik wrote:

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

Это имеет пользу для административных границ, где точечного объекта для них попросту нет, чтобы подписать название. Для place это не актуально, потому что у нас есть этот точечный объект. Хочешь подписывай полигон, хочешь точку.
Если мы подписываем полигон в месте label, то чем это отличается от просто подписи точки place, что указана в роли label. Это даже не шило на мыло, это шило на шило. Указать точку в роли label отличную от place мы не можем, согласно вики.
Притом, что в отношениях boundary в роли label выступает просто точка без тегов - место где вывести надпись.

wowik wrote:

Нет никакой замены place=* на boundary=place, а есть добавление boundary=place к place=*

Нет теперь никакого place, теперь есть отношение границы type=boundary. Этот тип отношения только для границ, никакие другие теги в нём не имеют значения.
Всё дело именно в переносе place в отношения, не подходящего типа.
Это равносильно, если я начну переносить скоростные ограничения maxspeed с дорого на отношения запретов поворота. Ну а что, maxspeed ведь никуда не делся.

Offline

#6 2021-01-14 16:07:12

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Re: Замена place=* на boundary=place

literan wrote:

а насколько массовый характер носят эти правки?
можно ссылки на конкретные измененные объекты?

https://overpass-turbo.eu/s/12nC

Offline

#7 2021-01-14 17:20:37

literan
Member
Registered: 2012-11-06
Posts: 3,548
Website

Re: Замена place=* на boundary=place

протыкал 10 случайных мультиков, и все 100% - Версия #1. Так что, наверное, речь идет о создании новых объектов, а не об удалении старых

А что, отсутствие полигона/мультиполигона place ломает поиск, в том же номинатиме?

Так-то пусть тешится, делает полигоны boundary, лишь бы существующие полигоны place не трогал...

Last edited by literan (2021-01-14 17:21:25)

Offline

#8 2021-01-14 18:08:05

AnakinNN
Member
From: Нижний Новгород
Registered: 2017-08-07
Posts: 717
Website

Re: Замена place=* на boundary=place

wowik wrote:

Граница в виде multipolygon плоха тем, что многими игнорируется вовсе, например рендер на главной странице (раз вы уж упоминули редеры)

Справедливости ради, на главной не отображается ни старый вариант, ни новый.

Offline

#9 2021-01-14 18:26:13

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Re: Замена place=* на boundary=place

Номинатим скорей всего пережуёт, потому что он основывается на osm2pgsql. Собственно, отношения границ в osm2pgsql захардкожены и приравнены к мультиполигонам и они не используют ни каких ролей в отношениях, кроме outer и inner, чтобы построить геометрию. Поэтому махать с торону рендера, что это ему как-то поможет в нынешних условиях - враньё. Замена не привносит ровным счётом ничего.
А вот у imposm3, мапбокс, может и отвалится.

literan wrote:

лишь бы существующие полигоны place не трогал...

Не туда смотришь. https://www.openstreetmap.org/way/870549774/history
Старые полигоны теряют свои теги и становятся просто контуром для отношения границы. Теперь теги place идут в довесок к type=boundary где по логики не должны учитываться.

Offline

#10 2021-01-14 18:49:29

AnakinNN
Member
From: Нижний Новгород
Registered: 2017-08-07
Posts: 717
Website

Re: Замена place=* на boundary=place

Но, кстати, как минимум один плюс есть - теперь задвоения имён на глагне не будет происходить, т. к. place и landuse часто ходят парами, а теперь name от них переехал на новое отношение.

Offline

#11 2021-01-15 05:59:48

literan
Member
Registered: 2012-11-06
Posts: 3,548
Website

Re: Замена place=* на boundary=place

freeExec wrote:

Не туда смотришь. https://www.openstreetmap.org/way/870549774/history
Старые полигоны теряют свои теги и становятся просто контуром для отношения границы. Теперь теги place идут в довесок к type=boundary где по логики не должны учитываться.

а, если так, то да, это вредоносная деятельность. Пиши в ДВГ. По крайней мере это массовое перетегирование на спорную схему без согласования с сообществом

Offline

#12 2021-01-15 08:09:18

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,940

Re: Замена place=* на boundary=place

У меня неоднозначное отношение к этой инициативе. Посмотрел окрестности Петербурга, увидел Ниуккузи - бывшую финскую деревню, которая в 1960-е (?) вошла в черту посёлка Аннино. Часть домов той деревни осталось как есть, часть домов построено позже. Какой была граница деревни Ниуккузи - вопрос спорный, но сейчас в ОСМ к Ниуккузи отнесена жилая застройка. Каких-то документов, устанавливающих границу Ниуккузи я не нашёл, возможно они существуют (хотя и сомневаюсь), но их нужно искать и скорее всего оффлайн.

Всё же граница (type=boundary) подразумевает явное наличие границы (принцип верифицируемости), это не отношение которое включает несколько домов без чёткой зафиксированной границы.


Бывший редактор ОСМ

Offline

#13 2021-01-15 08:23:48

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,940

Re: Замена place=* на boundary=place

Аналогично деревня Загвоздка в 2013 году вошедшая в черту Гатчины. И ОСМ и 2ГИС и Яндекс показывают эту часть Гатчины, но почему-то у всех граница разная smile Кадастровая карта тоже не очень помогает.

Всё же граница подразумевает что-то явно утверждённое, такой объект как и любой объект ОСМ должен быть верифицируем.


Бывший редактор ОСМ

Offline

#14 2021-01-15 12:55:41

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

freeExec wrote:

И что там такого плохого видно?
Если внимательно присмотреться не к истории, а к самой линии, https://www.openstreetmap.org/way/870549774
То увидим, что линия границы теперь в отношении https://www.openstreetmap.org/relation/12153963 , и там place=* и name=* присутствуют.

Давайте отличать мух от котлет.
1) Замена маппинга границы замкнутым веем на маппинг отношением.
2) Каким типом отношения мапить границу.

Last edited by wowik (2021-01-15 12:55:59)

Offline

#15 2021-01-15 12:58:27

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

fserges wrote:

Всё же граница (type=boundary) подразумевает явное наличие границы (принцип верифицируемости), это не отношение которое включает несколько домов без чёткой зафиксированной границы.

Немного странная избирательность.
То есть в мультиполигон можно лепить всякую неверифицируемую хрень, а в boundary только точные координаты, которые любой может проверить своим нивелиром.

Границы у НП существуют или нет?
Они верифицируемы?
Если нет, то надо их снести.
Если да, то тогда переходить к поиску точных сведений про них и выбору метода их отрисовки

Last edited by wowik (2021-01-15 13:01:04)

Offline

#16 2021-01-15 13:12:12

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

freeExec wrote:

Если кто-то хочет мапить лишь бы видно было, то это в статью "не мапить под рендер".

Заметьте, не я эту тему рендеринга предложил:

freeExec wrote:

Притом например рендерам ни эта связь, ни объект в роли label не нужен. Они просто подписывают точку place.

Да, помню, как возник этот костыль.
Сначала подписывали границу и было удвоение, для обхода придумали костыль писать place_name, потом придумали костыль с нерисование имени границы, потом выпилили первый костыль.

Last edited by wowik (2021-01-15 13:25:55)

Offline

#17 2021-01-15 13:31:54

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Re: Замена place=* на boundary=place

wowik wrote:

То увидим, что линия границы теперь в отношении https://www.openstreetmap.org/relation/12153963 , и там place=* и name=* присутствуют.

Давайте отличать мух от котлет.
1) Замена маппинга границы замкнутым веем на маппинг отношением.
2) Каким типом отношения мапить границу.

Технически теги дороги могут и на точке присутствовать и в отношении это границы, но это не делает объект валидным.
В отношении type=boundary должны присутствовать теги отвечающие за свойства границ и только, admin_level например и прочие. Никаких других самостоятельных тегов там быть не должно.

Котлеты давно отделены, и границы населённого пункта мапятся через place, и если она требует отношения, то это только type=multipolygon.

Offline

#18 2021-01-15 15:24:41

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

freeExec wrote:

Технически теги дороги могут

Вы хоть и топик стартер, но вроде тут обсуждаем не дороги. Хотя, как я уже писал, название топика содержит неверную информацию, наверно поэтому вы полагаете, что про дороги тут стоит обсуждать

Offline

#19 2021-01-15 16:11:46

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

freeExec wrote:

границы населённого пункта мапятся через place, и если она требует отношения, то это только type=multipolygon

Это не так. Опять напомню вам пример Белоруссии, а так же примкнувщей к ней Смоленской области

Last edited by wowik (2021-01-15 16:13:25)

Offline

#20 2021-01-15 16:32:02

freeExec
Moderator
From: Ульяновск,Модератор всех слоёв
Registered: 2012-07-31
Posts: 8,286

Re: Замена place=* на boundary=place

wowik wrote:

Вы хоть и топик стартер, но вроде тут обсуждаем не дороги. Хотя, как я уже писал, название топика содержит неверную информацию, наверно поэтому вы полагаете, что про дороги тут стоит обсуждать

wowik wrote:

Это не так. Опять напомню вам пример Белоруссии, а так же примкнувщей к ней Смоленской области

Причём тут Беларусь и Смоленск, мы вроде их тут не обсуждаем? Они что авторитетней вики?

Offline

#21 2021-01-15 17:12:16

fserges
Member
From: St.Petersburg/Russia
Registered: 2010-11-08
Posts: 3,940

Re: Замена place=* на boundary=place

wowik wrote:
fserges wrote:

Всё же граница (type=boundary) подразумевает явное наличие границы (принцип верифицируемости), это не отношение которое включает несколько домов без чёткой зафиксированной границы.

Границы у НП существуют или нет?
Они верифицируемы?
Если нет, то надо их снести.
Если да, то тогда переходить к поиску точных сведений про них и выбору метода их отрисовки

Границы НП верифицируемы, хотя и не on the ground. А вот границы suburb/neighborhood редко описываются точно (как границы), обычно понятно где находится микрорайон, но вот точность определения не так велика (например, включает соседний парк или нет), поэтому простой мультиполигон точнее определяет суть.

По сути "граница — это реальная или воображаемая линия в пространстве или во времени, отделяющая один объект (тело, процесс или состояние) от другого; одна и та же определённость, разделяющая два «нечто». Граница может быть пространственной, временной, качественной или количественной", т.е. нечто явно разделяющее сущности.


Бывший редактор ОСМ

Offline

#22 2021-01-18 07:06:38

lenux
Member
Registered: 2011-12-06
Posts: 665

Re: Замена place=* на boundary=place

... И тут я понял про что речь раз и два.

http://atd.openstreetmap.ru/r3338659.html - не определяется , когда точка, полигон и мультиполигон.
http://wowik.byethost7.com/places/ru-ya … 422000.htm - определяется.

Посмотрев на практике считаю, что такое обозначение не оправдано, оно избыточное. Мультиполигон для деревни! У нас 6000 деревень  в ЯО . И если для каждой деревни делать кроме полигона ещё и мультиполигон, то это практически не реальная задача.

Почему не вариант: boundary предполагает какую-то установленную законодательно границу. имхо на местности не определишь где эти границы проходят. Есть ПКК и ген планы. Но имхо перерисовывать эти длинные , большие области вокруг домов бессмысленно для ОСМ. Так как при использовании карты нужно понимать: Вот точка деревни, вот жилая  зона, вот дома. А такая перерисовка трата бесценного времени + эта деревня выбивается из общего стиля региона.   


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

Offline

#23 2021-01-18 14:35:12

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

lenux wrote:

оно избыточное

Это не значит, что обязательно надо удалять.

lenux wrote:

У нас 6000

В Белоруссии 23000 нп и все  имеют замапленые границы через отношения.

lenux wrote:

бессмысленно для ОСМ

замечание очень странное, как вам удается судить за весь осм? Очень многие именно бьются за то, именно чтобы перерисовать "эти длинные , большие области", так как именно они хотя иметь в осм именно "официальные границы".

lenux wrote:

Одного полигона более чем достаточно

Если не считаете нужным рисовать границы place, то можете рисовать только ваши "вот жилая  зона", но техника отождествления landuse с границами place для НП в одном объекта давно порицаема.

Last edited by wowik (2021-01-18 17:24:07)

Offline

#24 2021-01-18 14:36:30

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,086

Re: Замена place=* на boundary=place

lenux wrote:

не определяется ,

Какой именно не определился?
P.S. А! Вижу! В landuse был не убран place. Поправил.

Last edited by wowik (2021-01-18 17:24:25)

Offline

#25 2021-01-18 18:25:23

langoor
Member
Registered: 2013-02-03
Posts: 162

Re: Замена place=* на boundary=place

Голландцы пообсуждали у себя на форуме и полтора месяца назад выкатили статью в wiki, почему-то на английском. При этом указали, что boundary=place - это там, где граница как бы есть, но она не администативная (неофициальная, надо понимать, а стало быть к границам нп неприменима), и ставят они их только на suburbs, quarters and neighbourhoods. В русскоязычной варианте дописали: "а так же и самих населенных пунктов, village, hamlet,..."
wowik, у меня только один вопрос: почему такие фундаментальные изменения делаются без обсуждения?

Offline

Board footer

Powered by FluxBB