А где в мр-файле такая запись?
У меня в мр-файле нет никаких разделителей.
А зачем в OSM район города указывать в name улицы? Для этого есть place=suburb.
Разве не так?
Относительно скобок и слешей - они могут выполнять двойные функции = собственные и программные. Один из слешей как раз и выполняет функцию определения что за ним следует = обычный знак или программный элемент.
Ваша проблема скорее всего в файле пост процесса. Я тоже далек от программирования. Как смог , извините.
Можно почитать https://www.opennet.ru/base/dev/pcre_perl_intro.txt.html
Вам повезло. Вот два примера:
https://www.openstreetmap.org/way/148882551
https://www.openstreetmap.org/way/533487528
Я не знаю, зачем это сделано так, но в результате в .mp получается вместо () - //. А мне надо чтобы было \
Описанное получается до постпроцессинга. Сразу после завершения osm2mp. В связи с чем и возник мой вопрос.
Тогда надо больше конкретики. Это тот объект?
https://www.openstreetmap.org/way/148882551#map=11/56.3056/44.0036
Вы что то меняли в ozm2mp?
Нет. Сейчас используется скрипт вроде от gryphon, где названия станций метро на входы копируются.
А как это выглядит. Могли бы вы привести цитату из файла *.mp?
И дайте ссылку на то как это в OSM.
У себя не могу воспроизвести то что происходит у вас.
; WayID = 155408702
; building = yes
[POLYGON]
Data0=(56.3042604,43.9941972),(56.3042312,43.9940442),(56.3043521,43.9939693),(56.3043813,43.9941223),(56.3042604,43.9941972)
EndLevel=1
Type=0x13
Label=13
CityName=Нижний Новгород
Floors=1
HouseNumber=13
RegionName=Нижегородская область городской округ Нижний Новгород
StreetDesc=Цветочная ул. /Советский район/
[END]
Ну так это после постпроцесса - mp-postprocess.pl. Что и говорю. Это не osm2mp делает, а постпроцесс.
Вспоминайте что правили в mp-postprocess.pl?
Вероятнее всего правили эту строку:
[ 'ул(?:|ица)' => 'ул.' ],
К вопросу, строку не удалял, а сделал так (пробел с обеих сторон):
$line =~ s/ город //i;
Я уже писал, что это в .мр сразу после osm2mp. постпроцесса у меня пока нет. что видно по несокращенным области и району
А почему у вас вместо “улица” - “ул.”?
В OSM сокращения нет - https://www.openstreetmap.org/way/155408702
Сокращения это как раз опция постпроцесса. Вы правы. У вас его нет, а сокращение есть. Странно.
Я не знаю чем вам помочь. Я просто помогаю вам вспомнить где и что вы правили. Другой помощи пока все равно нет.
улица сокращается пока другой тулзой. самописной от Zkir
Так это тоже постпроцесс. В этой программе и искать надо. Она виновница на 99%.
Всё понятно… Это результат неверного обозначения теми, кто вносил (или правил) объект (улицу).
Теперь только либо исправлять в OSM, либо править в МР-файле (что проще) текстовым редактором (опция замены).
*PS: скачайте и попробуйте сейча эти улицы. *
Вы исправили не тот объект. Или точно не все объекты. Он не единственный - Цветочная улица (Советский район) 13. Кроме того там есть ещё аналогичная адресация по Приокскому району - Цветочная улица (Приокский район) 13. Там не только на самой улице, но и на домах в addr:street район прописан.
https://www.openstreetmap.org/way/627592743
https://www.openstreetmap.org/way/155408702
Видимо местные так решили разнести одноименные улицы одного города.
Да и вопрос был про другое - вместо (район) у пользователя получается /район/. Человек вместо /район/ хочет \район. Я так понял вопрос.
Вы исправили не тот объект. Или точно не все объекты.
Все объекты я не смотрел. Мне было важно понять суть, поэтому исправил ту часть, что автор указывал.
Да и вопрос был про другое - вместо (район) у пользователя получается /район/. Человек вместо /район/ хочет \район. Я так понял вопрос.
Может быть!
Но я понял автора так, что вначале его интересует откуда в принципе взались скобки (любые), а уж только потом возник вопрос о слэшах.
Ну слэши элементарно меняются в редакторе.
Что касаемо превращение обычных скобок в слэши, то это вероятнее всего (только как мысль) из-за того, что обычные скобки могут не допускаются, поэтому при конвертировании автоматом заменяются на прямые, которые автор считает слэшами.
Сегодня пошла ошибка при поиске неполных полигонов:
python getbrokenrelations.py < MAPS/M8/OSM/RU-KOS.osm >MAPS/M8/OSM/RU-KOS0.osm
2020-05-17 07:03:30,191 INFO start
2020-05-17 07:03:30,191 INFO parsing input stream
2020-05-17 07:03:59,104 INFO found 1 broken multipolygons
2020-05-17 07:03:59,104 INFO set([2612495L])
2020-05-17 07:03:59,105 INFO creating overpass query
2020-05-17 07:03:59,105 INFO sending http request
2020-05-17 07:03:59,466 ERROR can't send request: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)>
2020-05-17 07:03:59,624 ERROR can't send request: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)>
2020-05-17 07:03:59,782 ERROR can't send request: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)>
2020-05-17 07:03:59,782 INFO finish
Это на той стороне проблема или на моей? Спасибо.
Сегодня пошла ошибка при поиске неполных полигонов:
python getbrokenrelations.py < MAPS/M8/OSM/RU-KOS.osm >MAPS/M8/OSM/RU-KOS0.osm ... 2020-05-17 07:03:59,782 ERROR can't send request: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)> 2020-05-17 07:03:59,782 INFO finish
.
Ну не знаю?! Будем считать Решено. Перебрал тучу overpass_api=, не помогало. С третьего захода сработало.
А вчера аналогично пришлось менять в JOSM.
Доброе утро! Скажите, есть ли в osm2mp механизм отбора (селекции) объектов по длине?
Селекция по площади есть:
selector: thresholds
value: !!perl/code |
{ _get_obj_area_size(shift) }
То ли не предусмотрено, то ли я не вижу по необразованности.
Спасибо и хорошего дня.
Поправил getbound. Сейчас Молдова отработывает нормально. Предполагаю, что это все же не решает проблему окончательно, так что шлите примеры криво выгружаемых границ.
Какой же вы молодец! Пробую разные варианты - объединяю, исключаю… Всё работает на ура! Огромное, преогромное спасибо!
Perl - замечательный язык программирования для программистов на Perl !
Но не для пользователей…
Ибо программы, написанные несколько лет назад, на обновлённом пёрле хрен запустишь.
Третий день безуспешно пытаюсь запустить osm2mp.pl на Win7x64.
Уже познал, что такое модули, что такое cpan.
Такими темпами скоро, чувствую, сам на пёрле начну пописывать.
На Active Perl одни ошибки, на Strawberry другие. Но результат и там и там один – ни черта не запускается.
Последняя надежда на тех, у кого всё работает: поделитесь, плиз своей папкой C:\Strawberry или C:\Perl64 !!!
Или сборкой-EXEшниками, дохлые ссылки (нет счастья в этом мире) на которые зачем-то фигурируют в WIKI.
Спасибо заранее!!!