You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#776 2009-08-20 12:38:43

Kotelnikov
Member
From: Krasnodar, RU
Registered: 2009-05-07
Posts: 2,854
Website

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

liosha wrote:

А вот сделать обрезку карты по релейшену - о таком подумываю.

Кстати, да только сегодня подумывал предложить. smile Ибо сейчас релейшенами границы всех субъектов прорисованы. А конвертер распознает только Адыгею, т.к. ее границы я одним полигоном сделал. smile


1 000 000 points: 80% complete

Offline

#777 2009-08-20 15:01:36

zgremlin
Member
Registered: 2008-07-31
Posts: 332

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

liosha wrote:

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

Ну так что мешает сделать osm2mp первым таким софтом ? wink
Например собирать мультиполигоны если в наличии все члены (а иначе ругаться в лог и делать то же что и сейчас - т.е ничего)?
Кстати, а какая поддержка целостности релейшенов подразумевается?
Так получение всех членов есть в API и поддерживается JOSM'ом.

Offline

#778 2009-08-20 16:04:15

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

zgremlin,
osm2mp НЕ работает с базой, а получает готовый файл. И вот в этом файле половины мемберов релейшена запросто может не хватать, соответственно и границу города восстановить не получится. А веи почти всегда присутствуют целиком.

Offline

#779 2009-08-20 16:09:55

zgremlin
Member
Registered: 2008-07-31
Posts: 332

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

liosha wrote:

zgremlin,
osm2mp НЕ работает с базой, а получает готовый файл. И вот в этом файле половины мемберов релейшена запросто может не хватать, соответственно и границу города восстановить не получится. А веи почти всегда присутствуют целиком.

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

Offline

#780 2009-08-20 16:28:12

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

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

В любом случае, сейчас API целостность релейшенов не поддерживает (целостность - это выдача всех мемберов того релейшена, который попал в bbox). Вот когда будет - тогда будет смысл это обсуждать.

Offline

#781 2009-08-21 09:10:17

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

Поддержки границ и advanced multipolygon-нов хотелось бы и для таких вещей:
http://www.openstreetmap.org/browse/relation/165029
mapnik то нормально все понимает.


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#782 2009-08-21 09:17:17

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

а почему бы этот же лес не сделать нормальным мультиполигоном?

Offline

#783 2009-08-21 09:17:39

zgremlin
Member
Registered: 2008-07-31
Posts: 332

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

Aleksandr Dezhin wrote:

Поддержки границ и advanced multipolygon-нов хотелось бы и для таких вещей:
http://www.openstreetmap.org/browse/relation/165029
mapnik то нормально все понимает.

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

Offline

#784 2009-08-21 09:44:32

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

liosha wrote:

а почему бы этот же лес не сделать нормальным мультиполигоном?

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


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#785 2009-08-21 09:45:23

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

zgremlin,
причём тут C-образные озёра??
Конвертер уже больше года понимает нормальные мультиполигоны.
Но только полноценные замкнутые ПОЛИГОНЫ, а не собранные из отрезков.

UPD.
Сравнение с костлайнами немного не в кассу.
Моря действительно полигоном не сделать - никакой памяти не хватит.
Кроме того, по костлайну хотя бы понятно, где тут вода, а где земля. А по обкусанному мультиполигону -  нет

Offline

#786 2009-08-21 09:58:45

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

liosha wrote:

Моря действительно полигоном не сделать - никакой памяти не хватит.

Отчего же? Можно порезать сеточкой, как это делает Kotelnikov на краснодарских лесах.
А допилить osmget.pl, чтобы он догружал неполные релейшны проблемы никакой нет.


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#787 2009-08-21 10:04:36

MacTen
Member
Registered: 2009-08-21
Posts: 21

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

подскажите, не теряется ли после конвертации osm -> mp информация по barrier=gate, access=private?
в mp файле по id ноды 25439 нашел только такие ограничения (судя по всему на повороты):

[Restrict]
Nod=25439
TraffPoints=12352,25439,12352
TraffRoads=14175,14175
[END-Restrict]

[Restrict]
Nod=25439
TraffPoints=11174,25439,11174
TraffRoads=12863,12863
[END-Restrict]

на каком этапе инфа по закрытым воротам потерялась? при конвертации osm->mp или уже при mp->nm2 в mapedit?

Last edited by MacTen (2009-08-21 10:06:50)

Offline

#788 2009-08-21 10:10:11

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

Сеточка - это зло однозначно, потому что плодит сущности без лишней на то надобности.
Имхо, один объект в жизни должен отображаться (по возможности) одним объектом в базе.
Во всяком случае, надо к этому стремиться  smile

Что касается догрузки релейшенов, то это проблема вообще плохо решаемая. Раз уж релейшены сами могут состоять в релейшенах, то целостностью по ним может обладать только ПОЛНАЯ база.

В общем, моё мнение такое: полигоны из отдельных сегментов есть смысл собирать только для реально крупных объектов. Разделение, имхо, проходит где-то между городами и регионами: города надо описывать обычными полигонами, регионы - собирать из границ.

Offline

#789 2009-08-21 10:11:43

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

MacTen, сами по себе барьеры пока не обрабатываются.
Надо указывать access=private у самой дороги.

А рестрикшены эти - это запреты разворотов, добавляются автоматически для нодов с двумя линками.

Offline

#790 2009-08-21 10:26:32

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

liosha wrote:

Что касается догрузки релейшенов, то это проблема вообще плохо решаемая. Раз уж релейшены сами могут состоять в релейшенах, то целостностью по ним может обладать только ПОЛНАЯ база.

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


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#791 2009-08-21 10:36:01

MacTen
Member
Registered: 2009-08-21
Posts: 21

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

liosha а есть в планах добавить обработку барьеров?
ведь это неправильно каждые закрытые ворота делать путем разбивания дороги на кусочки и присваивания одному куску access=private

Last edited by MacTen (2009-08-21 10:37:27)

Offline

#792 2009-08-21 10:36:44

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

Понятно, что это всё локально решаемо, но лично я пока не вижу смысла заморачиваться с advanced полигонами. Во всяком случае, мне ещё не попадалось ситуаций, где они были бы реально необходимы или хотя бы предпочтительны.

Кстати, у мультиполигонов, в отличие от boundary, роли должны быть прописаны, а тут их нет: http://www.openstreetmap.org/browse/relation/165029


UPD.
Барьеры в планах есть, так же как и светофоры и лежекопы (понижают скоростной индекс дороги).
A access=private надо ставить не у кусочка, а у ВСЕЙ дороги, куда приватный доступ.

Offline

#793 2009-08-21 10:45:49

zgremlin
Member
Registered: 2008-07-31
Posts: 332

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

liosha wrote:

Конвертер уже больше года понимает нормальные мультиполигоны.
Но только полноценные замкнутые ПОЛИГОНЫ, а не собранные из отрезков.

Угу и проводить пять линий через сотню точек? Не говоря уж о захламлении базы, назови инструмент, который позволит это сделать, если не заморачиваться со скриптами или ручным редактированием xml? Вот вкажем в JOSM?
Хорошо хоть в JOSM есть способ выбрать линию из нескольких, хоть и не самый удобный...

liosha wrote:

UPD.
Сравнение с костлайнами немного не в кассу.
Моря действительно полигоном не сделать - никакой памяти не хватит.
Кроме того, по костлайну хотя бы понятно, где тут вода, а где земля. А по обкусанному мультиполигону -  нет

А почему тогда большая часть морей по побережью не создается?

Небольшой offtopic: Как с помощью костлайна:
1. указать название водоема (а то подпись "like" на море или водохранилище мало того, что неинформативна, но еще и недостоверна);
2. разделить несколько водоемов (например Черное и Азовское моря)?

Last edited by zgremlin (2009-08-21 10:46:54)

Offline

#794 2009-08-21 10:47:27

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

liosha wrote:

Кстати, у мультиполигонов, в отличие от boundary, роли должны быть прописаны, а тут их нет: http://www.openstreetmap.org/browse/relation/165029

Когда вика работала, в ней было написано:"If no role is given outer is assumed". Какая тут может быть неоднозначность, для которой надо заполнять все роли?

Last edited by Aleksandr Dezhin (2009-08-21 10:48:27)


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

#795 2009-08-21 10:51:13

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

zgremlin wrote:

А почему тогда большая часть морей по побережью не создается?

где не создаются?

zgremlin wrote:

Небольшой offtopic: Как с помощью костлайна:
1. указать название водоема (а то подпись "like" на море или водохранилище мало того, что неинформативна, но еще и недостоверна);
2. разделить несколько водоемов (например Черное и Азовское моря)?

Никак, насколько я понимаю

Aleksandr Dezhin wrote:

Когда вика работала, в ней было написано:"If no role is given outer is assumed". Какая тут может быть неоднозначность, для которой надо заполнять все роли?

да, действительно, написано... как-то я это дело упустил...

Offline

#796 2009-08-21 11:18:25

zgremlin
Member
Registered: 2008-07-31
Posts: 332

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

liosha wrote:
zgremlin wrote:

А почему тогда большая часть морей по побережью не создается?

где не создаются?

Почти нигде: Черное, Азовское, Финский залив, Охотское.... в общем, все "внешние" моря, кроме пары отдельных кусочков на севере.

liosha wrote:
zgremlin wrote:

Небольшой offtopic: Как с помощью костлайна:
1. указать название водоема (а то подпись "like" на море или водохранилище мало того, что неинформативна, но еще и недостоверна);
2. разделить несколько водоемов (например Черное и Азовское моря)?

Никак, насколько я понимаю

Создал новую тему

Offline

#797 2009-08-21 11:42:41

MacTen
Member
Registered: 2009-08-21
Posts: 21

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

A access=private надо ставить не у кусочка, а у ВСЕЙ дороги, куда приватный доступ.

речь шла вот про что.
есть дачный массив. у него центральные ворота открыты всегда и для всех.
а по периметру есть еще несколько ворот и подъезды к ним как с самих дач, так и снаружи. но эти заборы всегда закрыты на ключ. т.е. проезда там нет.
ставить access=private на всю дорогу на даче - ведь неправильно так.
я ставлю barrier=gate, access=private - это на будущее, когда обработка барьеров будет работать.
а также, чтобы уже сейчас можно было пользоваться выделяю маленький кусочек дороги перед забором и ему ставлю access=private, чтобы не было роутинга через этот кусочек. цель достигнута. ведь карту составляем для того чтобы ей пользоваться.
как только будет корректная обработка барьеров (открытых, закрытых, временных и т.п.) - эти кусочки дорог с access=private удаляются и все становится на свои места (т.к. barrier=gate, access=private уже прописано где надо).

Offline

#798 2009-08-21 15:43:12

liosha
Member
From: Moscow
Registered: 2008-03-04
Posts: 8,447
Website

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

Так, обработку барьеров вроде бы сделал.  cool
Завтра посмотрим, что получится...

Offline

#799 2009-08-21 22:12:11

MacTen
Member
Registered: 2009-08-21
Posts: 21

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

liosha
скачал PolygonTree.pm с svn
дает ошибку

syntax error at /usr/local/share/perl/5.8.8/PolygonTree.pm line 26, near "] ~"
Compilation failed in require at osm2mp.pl line 32.
BEGIN failed--compilation aborted at osm2mp.pl line 32.

Offline

#800 2009-08-22 02:35:06

Aleksandr Dezhin
Member
From: Msk
Registered: 2008-05-25
Posts: 2,109
Website

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

MacTen wrote:

liosha
скачал PolygonTree.pm с svn
дает ошибку

о, так я не один такой. MacTen см. выше. Нужен перл 5.10 или переписать, чтобы не было smart match.


[ Проверка границ и НП | Дампы | Валидатор рек | Кое-что ещё ]
- Нет! Не надо пытаться. Делай. Или не делай. Не надо пытаться. (c) Йода

Offline

Board footer

Powered by FluxBB