You are not logged in.

#4501 2020-06-13 04:33:54

VadimK60
Member
Registered: 2019-02-07
Posts: 5

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

Perl - замечательный язык программирования для программистов на Perl !
Но не для пользователей... hmm
Ибо программы, написанные несколько лет назад, на обновлённом пёрле хрен запустишь. sad

Третий день безуспешно пытаюсь запустить osm2mp.pl на Win7x64. mad
Уже познал, что такое модули, что такое cpan.
Такими темпами скоро, чувствую, сам на пёрле начну пописывать.

На Active Perl одни ошибки, на Strawberry другие. Но результат и там и там один -- ни черта не запускается.

Последняя надежда на тех, у кого всё работает: поделитесь, плиз своей папкой C:\Strawberry или C:\Perl64 !!!

Или сборкой-EXEшниками, дохлые ссылки (нет счастья в этом мире) на которые зачем-то фигурируют в WIKI.

Спасибо заранее!!!

Offline

#4502 2020-06-13 07:23:32

pfg21
Member
From: Чебоксары
Registered: 2012-10-18
Posts: 3,796

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

заверните человеку осм2мп.пл с перлом в докер smile

Offline

#4503 2020-06-13 07:38:45

VadimK60
Member
Registered: 2019-02-07
Posts: 5

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

Успокоился, собрался и, вроде, разобрался. smile

Качнул Strawberry perl, установил.
В папку  C:\Strawberry\perl\bin\ закинул батник со следующим содержимым:

call cpan -T -i Config::Std
call cpan -i Template Text::Unidecode List::MoreUtils Encode::Locale Getopt::Long PerlIO::encoding
call cpan -i YAML  Data::Dump  Geo::Shapefile::Writer Geo::Openstreetmap::Parser Tree::R Math::Polygon
call cpan -i PerlIO::via::Unidecode PerlIO::via::PrepareCP1251 Inline::C
call cpan -i match::smart
call cpan -i Math::Polygon::Tree
call cpan -i Log::Any Log::Any::Adapter

Запустил.
В таком порядке строк в батнике всё установилось с первого раза (ждал 15-20 минут).

В результате Osm2mp.pl перестал ругаться на ошибки и нормально запускается. cool
Сегодня вечером попробую в деле.

В любом случае огромное спасибо автору скрипта !!!

PS: Ещё: перед запуском батника пришлось вручную скачать модуль DBD::XBase и закинуть содержимое архива в папку C:\Strawberry\perl\ (содержимое папки bin - в папку bin, папки lib - в папку lib и т.д.)
Иначе не будет работать экспорт в шейпы.

Last edited by VadimK60 (2020-06-13 08:07:36)

Offline

#4504 2020-06-20 23:21:04

Eugeny_B
Member
Registered: 2014-11-30
Posts: 288

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

Я так понимаю, что http://garmin.gis-lab.info/files/ru.moscow.mp.7z не обновляется?

Offline

#4505 2020-06-28 13:36:04

RezoVlad
Member
Registered: 2017-11-02
Posts: 26

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

White_54 wrote:
gryphon wrote:

Поправил getbound. Сейчас Молдова отработывает нормально. Предполагаю, что это все же не решает проблему окончательно, так что шлите примеры криво выгружаемых границ.

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

Полностью поддерживаю вышесказанное!
Ещё бы getbound внешние узлы на дорожном графе ставил - вообще бы цены не было программке.....

Last edited by RezoVlad (2020-06-28 13:36:36)

Offline

#4506 2020-06-30 07:39:55

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

gryphon wrote:

Поправил getbound. Сейчас Молдова отработывает нормально. Предполагаю, что это все же не решает проблему окончательно, так что шлите примеры криво выгружаемых границ.

Может быть есть возможность формировать границу методом слияния/вычитания полигонов границ по средствам закачки и + с использованием локальных полигонов уже присутствующих на домашнем ПК.

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

Offline

#4507 2020-07-01 11:10:39

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

White_54 wrote:

разрушена граница Хабаровского края (вот сейчас такой случай)

Если разрушена граница то её нужно починить! wink Я всегда по такому принципу действую.
Правило вычитания полигонов я просил для случаев политических, где трогать границу нельзя, но и использовать то что есть тоже не хочется.

Last edited by Kostik (2020-07-01 11:12:47)

Offline

#4508 2020-07-01 12:06:51

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Kostik wrote:
White_54 wrote:

разрушена граница Хабаровского края (вот сейчас такой случай)

Если разрушена граница то её нужно починить! wink Я всегда по такому принципу действую.
Правило вычитания полигонов я просил для случаев политических, где трогать границу нельзя, но и использовать то что есть тоже не хочется.

Граница починена по моему запросу тем кто сломал . Собственно там война откатов... А при откате вылезают бяки.
Однако если можно то лишним не будет. Особо убиваться по этой просьбе не надо. Выход всегда найдется (тем более если это единичный эпизод).
А вот на счет упрощения линий подумать было бы более желательно. OSMconvert не хочет работать с границами перенасыщенными точками вершин (если я это правильно называю) - слишком близко расположенными точками. Особенно это вылезает если граница идет по линии побережья скрупулёзно огибая все изгибы волны и берега. big_smile Их надо чуть чуть проредить.
Убился резать Приморский край в районе Владивостока. Граница там на столько замысловата, что конвертер просто таки кричит - файл или отсутствует, или слишком большой.

Пока так и пришлось руками допиливать нарезку. А режу я по причине убогости ПК. Не справляется он с разбухшими регионами.

Last edited by White_54 (2020-07-02 04:11:51)

Offline

#4509 2020-07-03 22:41:49

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

White_54 wrote:

А вот на счет упрощения линий подумать было бы более желательно. OSMconvert не хочет работать с границами перенасыщенными точками

Параметр --offset 0.01 с минимальным значением очень сильно упрощает линию. Я нарезаю по границам с --offset, а карты конвертирую уже по точным.

Last edited by Kostik (2020-07-03 22:43:42)

Offline

#4510 2020-07-04 04:44:36

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Kostik wrote:
White_54 wrote:

А вот на счет упрощения линий подумать было бы более желательно. OSMconvert не хочет работать с границами перенасыщенными точками

Параметр --offset 0.01 с минимальным значением очень сильно упрощает линию. Я нарезаю по границам с --offset, а карты конвертирую уже по точным.

Понятно. Спасибо. Как то не запал мне этот параметр. Теперь думаю должен отложиться в голове.

Offline

#4511 2020-07-11 11:49:22

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Всем хорошей погоды на выходные.
Скажите, никто не сталкивался на Windows системе с нештатной отработкой osmconverter.exe 0.8.10. Работает вроде хорошо, но выходной файл бракуется в osm2mp. Выходит ошибка parser.
Обработал исходник в osmconvert.exe 0.8.7 и osm2mp перестал ругаться?

Offline

#4512 2020-07-11 15:15:01

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Аха! Оказывается завершение процесса не полноценное. Проблемы памяти. Применение параметра -- hash-memory решает проблему osmconvert.exe на версии 0.8.10.

Offline

#4513 2020-07-22 07:52:15

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Яндекс уведомил:

Здравствуйте,
Спасибо, что пользуетесь API Яндекс.Переводчика.
С 31 июля 2020 года вы сможете бесплатно переводить 50 000 символов в день, а с 15 августа 2020 года мы закрываем доступ к бесплатному API Яндекс.Переводчика. Если вы хотите и дальше использовать технологии Яндекса для перевода, регистрируйтесь на сервисе Yandex Translate на платформе Яндекс.Облако.

И бесплатного перевода судя по всему не предвидится:
https://cloud.yandex.ru/services/transl … -translate

Что можно выжать из osm2mp?

--lt-priority <id>=<val>  set tranformer priority                   
 --lt-dump                 list registered transformers              
 --lt-equal <lang>=<langs> set language alias (comma-separated list) 
 --lt-gme <data>           GME table, data is <from_lang>-<to_lang>:<file>

Как этим воспользоваться? Как сделать таблицу в формате gme, и подключить её с помощью --lt-gme? Какое применение предполагает --lt-equal? Поискал, не нашел развернутого ответа. Может плохо искал.

Offline

#4514 2020-07-26 09:44:51

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Ещё раз перечитал  что есть по Language options, отложилось следующее:
!!! на примере Украины !!!

--target-lang ru --default-lang ru

вытянут "name:ru", где нет "name" что как правило соответствует "name:uk" (Перевод не предусмотрен)

--target-lang ru --default-lang uk

вытянут "name:ru", где нет "name:uk", где нет иное "name:ХХ" и если совсем ничего нет - "name".
В этом случае доступен перевод (транслитерация):

--lt-dump

покажет "Список" зарегистрированных трансформеров, заложены в файле "Subst.pm". Судя по всему можно корректировать.
К сожалению ссылки на ru.wikipedia.org устарели. Посему понять откуда ноги трудно.

--lt-yatr-key (--lt-yatr-cache-dir --lt-priority)

обеспечивали подключение к API Яндек.Пепеводчика. Перевод был не ахти какой, но был. Главное можно было вносить коррективы в словарь (базу sql) ручками. Канет в лето в ближайшие дни. Собственно платный вариант останется.

--lt-gme=uk-ru:trans-uk-ru.dat 

- обеспечивает транслитерацию из собственного файла. Пример файла можно взять в GPSMapEdit.
Нет четкого понимания можно ли использовать для полноценного перевода т.е. вместо символов прописывать целые слова и даже фразы?! Короткая практика применения не дает пока однозначного ответа.

Если есть дополнения или замечания по изложенному буду признателен. Спасибо!

Offline

#4515 2020-08-31 22:32:45

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

gryphon wrote:

Поправил getbound. Сейчас Молдова отработывает нормально. Предполагаю, что это все же не решает проблему окончательно, так что шлите примеры криво выгружаемых границ.

Привет. Заметил что getbound стал выдавать ошибку при попытке скачать границу:

C:\osm-getbound-master>getbound.pl 51490 -o 51490.poly
Downloading relation ID=51490
GET https://www.openstreetmap.org/api/0.6/relation/51490/full
Download failed: 500 Can't connect to www.openstreetmap.org:443
Failed, trying by parts
GET https://www.openstreetmap.org/api/0.6/relation/51490
Download failed: 500 Can't connect to www.openstreetmap.org:443
Failed to get relation ID=ARRAY(0x4179d78) at C:/osm-getbound-master/lib/App/OsmGetbound/OsmApiClient.pm line 92.

Это что то у меня поломалось или в консерватории? smile exe версия отрабатывает без ошибок.

Offline

#4516 2020-09-01 19:21:59

RezoVlad
Member
Registered: 2017-11-02
Posts: 26

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

Только, что попробовал perl-овским - скачивается всё идеально....

Last edited by RezoVlad (2020-09-01 19:23:40)

Offline

#4517 2020-09-01 21:49:33

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

RezoVlad wrote:

попробовал perl-овским

Вопрос конкретно про версию с этого репозитория. У меня в exe её более старая редакция.

Offline

#4518 2020-09-02 09:27:26

RezoVlad
Member
Registered: 2017-11-02
Posts: 26

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

Именно с указанного Вами репозитория!

PS: Сейчас специально зашёл, скачал и сравнил файлы - один в один (ну кроме добавления в алиасы Твери).
Из практики..... Смотрите, что и где были изменения в Perl.
С предыдущей версией так же голову ломал, почему либо только ехе-шная версия работает, либо только perl-овская.
Сейчас совершенно одинаково работают и та и другая.
"Вылечилось" переустановкой Perl и не только самой перестановкой, а подборкой версии.
Как-то всё это непонятно и очень "капризно" порой.....

Last edited by RezoVlad (2020-09-21 20:03:01)

Offline

#4519 2020-09-02 09:33:40

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

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

Я думаю это проблема из-за TLS 1.3, недавно активировали на серверах ОСМ. А старый софт в него не умеет. Какое-то время назад у меня перестал работать номинатим, и не работал пока я не стал форсировать соединения по 1.2

Offline

#4520 2020-09-02 13:55:58

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

RezoVlad wrote:

Смотрите, что и где были изменения в Perl.

В том то и прикол что Perl не трогал, не обновлял. Всё работало и перестало. smile

Offline

#4521 2020-09-02 17:43:43

White_54
Member
From: 101 километр
Registered: 2014-07-16
Posts: 672

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

Kostik wrote:
RezoVlad wrote:

Смотрите, что и где были изменения в Perl.

В том то и прикол что Perl не трогал, не обновлял. Всё работало и перестало. smile

Не могу проверить. Днём бы раньше, сейчас на выезде. И главное на прошлой недели обновлял карты. Границы не обновлял.
Хотя не совсем так. Грузию и Абхазию обрабатывал от и до. А толку? Может там и была ошибка да не заметил. Границы остались старые и остальные обработки прошли по маслу.

Надо делать доступ к ПК по удалёнке. Посмотреть дату границ и было бы ясно. Опять же у меня Linux. Может и отработало нормально.

Offline

#4522 2020-09-20 10:55:44

Kostik
Member
From: Moscow
Registered: 2011-01-02
Posts: 2,043
Website

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

freeExec wrote:

Я думаю это проблема из-за TLS 1.3, недавно активировали на серверах ОСМ.

Попробовал Лёшину версию getbound`а тоже перестала работать:

C:\osm-getbound-master>getbound.pl 51490 -o 51490.poly
Downloading relation ID=51490
GET http://www.openstreetmap.org/api/0.6/relation/51490/full
Download failed
Failed, trying by parts
GET http://www.openstreetmap.org/api/0.6/relation/51490
Download failed
Failed to get relation ID=51490 at C:/osm-getbound-master/lib/App/OsmGetbound/OsmApiClient.pm line 89.

Offline

#4523 2020-09-21 16:16:58

RezoVlad
Member
Registered: 2017-11-02
Posts: 26

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

Где-то у тебя нестыковка в библиотеках/файлах.
Видимо всё же не заметил как когда-то произошло автообновление файлов в Perl.
Gbnd_51490.md.jpg

Last edited by RezoVlad (2020-09-21 20:02:01)

Offline

Board footer

Powered by FluxBB