You are not logged in.
- Topics: Active | Unanswered
Announcement
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.***
#3251 2013-02-06 09:18:03
- dimuzz
- Member
- From: Екатеринбург
- Registered: 2009-09-10
- Posts: 1,843
Re: Конвертер OSM -> MP
liosha, с упразднением modify_road никак не придумывается короткий способ транслировать массогабаритные ограничения (maxweight, maxheight) в запрет проезда грузового транспорта. Только добавлять селектор routeparams в каждый тип дороги?
Offline
#3252 2013-02-06 09:20:11
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
Например хочу с украинского на русский, запускать так?
--lt-subst uk=ru ?
Нет, запускать --dl=uk --tl=ru
Тогда name будет считаться украинским (--dl=uk), а на выходе будут русские названия (--tl=ru).
Для перевода uk->ru есть два трансформера: subst_uk_ru (с дефолтным приоритетом 1) и yatr_uk_ru (приоритет -1). Для перевода будет использоваться тот, у которого приоритет больше, то есть subst_uk_ru. Если хочется использовать другой, надо повысить его приоритет.
Offline
#3253 2013-02-06 09:21:03
- chnav
- Member

- From: Russia, mapping Kazakhstan
- Registered: 2010-03-18
- Posts: 3,303
Re: Конвертер OSM -> MP
liosha, с упразднением modify_road
Обидно, этот модификатор отлично работал и микшировал разные теги ![]()
Offline
#3254 2013-02-06 09:21:04
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
с упразднением modify_road никак не придумывается короткий способ транслировать массогабаритные ограничения (maxweight, maxheight) в запрет проезда грузового транспорта. Только добавлять селектор routeparams в каждый тип дороги?
Можно вынести его в пресет.
PS
Вернее, можно будет вынести. Пока для этого ещё не готово.
Offline
#3255 2013-02-06 09:32:02
- Kostik
- Member

- From: Moscow
- Registered: 2011-01-02
- Posts: 2,114
Re: Конвертер OSM -> MP
liosha А для Китайских, Японских и т.п иероглифов какие преобразования будут применяться по умолчанию? В текущих файлах для них правил замены не нашёл, только перевод тындексом?
Last edited by Kostik (2013-02-06 09:50:00)
Offline
#3256 2013-02-06 09:46:22
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
А для Китайских, Японских и т.п иероглифов какие преобразования будут применяться по умолчанию? В текущих файлах для них правил замены не нашёл, только перевод тындексом?
Тындекса для них тоже нет.
Если для нужной пары языков нет ни одного трансформера, выполнится универсальная транслитерация через unidecode.
Offline
#3257 2013-02-06 09:50:05
- Kostik
- Member

- From: Moscow
- Registered: 2011-01-02
- Posts: 2,114
Re: Конвертер OSM -> MP
И ещё, например тут для Армении:
хочу собрать карту на латинице, как сперва брать названия из name:en, потом name:ru а уже после пробовать другие варианты? Так?
--lt-gme hy-en:trans-hy.dat --target-lang en --default-lang hy
?
Offline
#3258 2013-02-06 09:52:28
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
как сперва брать названия из name:en, потом name:ru а уже после пробовать другие варианты? Так?
--lt-gme hy-en:trans-hy.dat --target-lang en --default-lang hy
?
Да, так. Сначала возьмёт name:en, а если его нет, транслитерирует name
Offline
#3259 2013-02-06 09:56:47
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Конвертер OSM -> MP
запускать --dl=uk --tl=ru
А можно уточнить логику работы преобразования? То есть, если присутствует name:ru, то название берётся из name:ru, иначе считается, что name написано на украинском и делается транслитерация? Значит, если на карте встретится name на русском, он будет транслитерирован и получится чорт знает шо? Подозреваю, что "Ивановская улица" превратится в "Ывановская улыца" ![]()
И ещё вопрос: А если в релейшене улицы (associatedStreet) прописано addr:suburb=Іванівка, а рядом на карте есть точка с place=suburb, name=Іванівка, name:ru=Ивановка, то конвертер будет искать эту самую Іванівку, чтобі посмотреть её русское название? Я подозреваю, что не будет ![]()
Offline
#3260 2013-02-06 10:04:32
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
То есть, если присутствует name:ru, то название берётся из name:ru, иначе считается, что name написано на украинском и делается транслитерация? Значит, если на карте встретится name на русском, он будет транслитерирован и получится чорт знает шо?
Да, именно так. Проводить анализ, действительно ли name на украинском, он не будет. Предполагается, что на территории действуют одинаковые правила именования.
А если в релейшене улицы (associatedStreet) прописано addr:suburb=Іванівка, а рядом на карте есть точка с place=suburb, name=Іванівка, name:ru=Ивановка, то конвертер будет искать эту самую Іванівку, чтобі посмотреть её русское название?
Он может взять название с этой точки; для этого нужно включить эту точку в этот релейшен с ролью addr:suburb. Сам искать он ничего не будет
Offline
#3261 2013-02-06 10:05:39
- Kostik
- Member

- From: Moscow
- Registered: 2011-01-02
- Posts: 2,114
Re: Конвертер OSM -> MP
Сначала возьмёт name:en, а если его нет, транслитерирует name
А указать ему приоритет чтобы он преобразовывал name:ru или брал из int_name перед name?
--namelist label= --namelist place= --namelist street= больше не применимы?
Offline
#3262 2013-02-06 10:08:03
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
А указать ему приоритет чтобы он преобразовывал name:ru или брал из int_name перед name?
--namelist label= --namelist place= --namelist street= больше не применимы?
Применимы. --namelist label=int_name,name сначала попробует взять int_name, потом name
Offline
#3263 2013-02-06 10:23:10
- Kostik
- Member

- From: Moscow
- Registered: 2011-01-02
- Posts: 2,114
Re: Конвертер OSM -> MP
Тогда не понятно у чего больше приоритет если я задал --target-lang en --default-lang hy и тут же --namelist label=name:en,int_name,name:ru,name
По логике --default-lang hy должно брать названия из name:hy или я неправильно понял?
Last edited by Kostik (2013-02-06 10:24:16)
Offline
#3264 2013-02-06 10:25:28
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
Тогда не понятно у чего больше приоритет если я задал --target-lang en --default-lang hy и тут же --namelist label=name:en,int_name,name:ru,name
Кто так задал приоритет - сам виноват ![]()
Offline
#3265 2013-02-06 10:29:43
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
По логике --default-lang hy должно брать названия из name:hy или я неправильно понял?
Неправильно. --default-lang hy говорит о том, что языком тегов name без указанного языка будет считаться hy.
Offline
#3266 2013-02-06 14:45:49
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертер OSM -> MP
Ильин Роман wrote:Что я где пропустил?
SET PATH="путь к интерпретатору"
спасибо, просто добавил путь к нему.....странно раньше проходило все и без этого...
Offline
#3267 2013-02-08 13:33:42
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
Конвертер переехал на новую версию Math::Polygon::Tree, которая не полностью совместима со старой версией. Так что теперь если захочется работать со старыми версиями конвертера, нужно локально положить к ним старую либу в ./lib/Math/Polygon.
Offline
#3268 2013-02-10 19:58:08
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертер OSM -> MP
подскажите плз, может кто знает:
если изменить в output-polish 24,22,20... на 26,25,20..., то получается автоматическое расширение масштаба тоже до 26 бит, а этого совсем мне не нада...
как сделать, чтобы битность была 26, а расширение масштаба осталось без изменения?
изменил output-polish:
[% # default zoomlevels
levels = 6
Level0=26
LevelRange0=24
Level1=26
LevelRange1=22
Level2=22
LevelRange2=20
Level3=20
LevelRange3=18
Level4=18
LevelRange4=16
Level5=15
LevelRange5=14 ; -%]конвертер грит :усё Oк
mp выдаеёт вот это:
Загрузка данных из файла 'C:\Perl64\Navitel_Convert\_prim\Maps\RU-ARK-01_ark.mp'...
ПРЕДУПРЕЖДЕНИЕ (смещ. 81h): Неожиданное количество уровней (значение 'Levels'). Оно должно быть по меньшей мере 2.
ПРЕДУПРЕЖДЕНИЕ (смещ. 8Bh): Неожиданный формат входных данных. 'Level0' has incorrect value 0.
ПРЕДУПРЕЖДЕНИЕ (смещ. 14B5Fh): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 15E23h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 19582h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 197BAh): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1C359h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1D777h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1DD27h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1E3DAh): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1E5BDh): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 1EF15h): Неожиданный формат входных данных. Level0 should be empty. The element will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 8ECB3h): Элемент принадлежит несуществующему уровню 2. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. A1590h): Элемент принадлежит несуществующему уровню 3. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 29AC23h): Элемент принадлежит несуществующему уровню 2. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 29B828h): Элемент принадлежит несуществующему уровню 2. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 29BA1Bh): Элемент принадлежит несуществующему уровню 2. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 2D54B7h): Элемент принадлежит несуществующему уровню 1. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 3907BBh): Элемент принадлежит несуществующему уровню 1. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 419599h): Элемент принадлежит несуществующему уровню 1. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 419D21h): Элемент принадлежит несуществующему уровню 1. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 433ABCh): Элемент принадлежит несуществующему уровню 1. Элемент не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A6CAh): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A6D9h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A866h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A875h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A9A6h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119A9B5h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119AB42h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119AB50h): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119AC8Dh): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 119AC9Ch): Узлы дорожного графа определены на не-0 уровне. Они не будут загружены.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11B0D3Ah): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11B48B6h): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11B8AB0h): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11B8D7Bh): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11BC03Ch): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11CD064h): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11D072Fh): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11D2BD2h): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11D4911h): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ (смещ. 11D937Fh): Неожиданный формат входных данных. Unexpected index of element.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ: Неожиданный формат входных данных. Some [RESTRICT] refers to incorrect NodeID. It will be ignored.
ПРЕДУПРЕЖДЕНИЕ (смещ. 37B92h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 53C99h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 799AFh): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 79C5Eh): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 7A330h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. A123Fh): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. AAD50h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. F884Eh): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. F8971h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
ПРЕДУПРЕЖДЕНИЕ (смещ. 132741h): Объект не содержит ни одной вершины. Этот объект не будет загружен.
Итого предупреждений: 62.
Время загрузки 0.52 с.
ОШИБКА: карта пуста.шо делать???
Last edited by Ильин Роман (2013-02-10 19:58:39)
Offline
#3269 2013-02-10 21:22:12
- ~Jhellico
- Member
- From: Ukraine, Chernihiv
- Registered: 2012-09-28
- Posts: 79
Re: Конвертер OSM -> MP
levels = 6конвертер грит :усё Oк
mp выдаеёт вот это:Загрузка данных из файла 'C:\Perl64\Navitel_Convert\_prim\Maps\RU-ARK-01_ark.mp'... ПРЕДУПРЕЖДЕНИЕ (смещ. 81h): Неожиданное количество уровней (значение 'Levels'). Оно должно быть по меньшей мере 2.
Попробуйте поставить
Levels=6(без пробелов)
Offline
#3270 2013-02-11 05:46:50
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
Попробуйте поставить
Levels=6
(без пробелов)
Не поможет. Нужно вынести все эти Level* из кодовой секции в текстовую.
Offline
#3271 2013-02-11 08:14:45
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертер OSM -> MP
~Jhellico wrote:Попробуйте поставить
Levels=6
(без пробелов)Не поможет. Нужно вынести все эти Level* из кодовой секции в текстовую.
точно, не помогло.....куда вынести простите? я не совсем разбираюсь...
Offline
#3272 2013-02-11 08:24:23
- liosha
- Member

- From: Moscow
- Registered: 2008-03-04
- Posts: 8,447
- Website
Re: Конвертер OSM -> MP
куда вынести простите?
Всё, что написано внутри [% ... %] - это программа на языке TT, а всё что снаружи - непосредственный текст.
В дефолтных конфигах список уровней как раз генерится программой.
Так что если хочется этот список поменять, нужно или править эту программу, или снести её нафик и забить сам список целиком.
Offline
#3273 2013-02-11 08:55:15
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертер OSM -> MP
Ильин Роман wrote:куда вынести простите?
Всё, что написано внутри [% ... %] - это программа на языке TT, а всё что снаружи - непосредственный текст.
В дефолтных конфигах список уровней как раз генерится программой.Так что если хочется этот список поменять, нужно или править эту программу, или снести её нафик и забить сам список целиком.
честно говоря, я ничего не понял.... снес скобочки, тееперь с картой все хорошо, но нет заголовков....
скажите как для тупого, на пальцах, где что сделать...а то долго доходить будет...
----------------------
мееедленно....
это из ppm-a template-toolkit выгрузить?
Last edited by Ильин Роман (2013-02-11 09:01:53)
Offline
#3274 2013-02-11 10:28:19
- ~Jhellico
- Member
- From: Ukraine, Chernihiv
- Registered: 2012-09-28
- Posts: 79
Re: Конвертер OSM -> MP
Насколько я понял, надо в output-polish.yml заменить
[% # default zoomlevels
levels = [ 24, 22, 20, 18, 16, 15 ]; -%]
Levels=[% levels.size %]
[% FOREACH zoom IN [ 0 .. levels.max ];
key = "Level$zoom" -%]
[% key %]=[% opts.exists(key) ? opts.$key : levels.$zoom %]
[% opts.delete(key); END %] на
Levels=6
Level0=26
LevelRange0=24
Level1=26
LevelRange1=22
Level2=22
LevelRange2=20
Level3=20
LevelRange3=18
Level4=18
LevelRange4=16
Level5=15
LevelRange5=14 MP-файл получился вроде нормальный...
Offline
#3275 2013-02-11 13:14:46
- Ильин Роман
- Member

- Registered: 2011-02-01
- Posts: 280
- Website
Re: Конвертер OSM -> MP
Насколько я понял, надо в output-polish.yml заменить
[% # default zoomlevels levels = [ 24, 22, 20, 18, 16, 15 ]; -%] Levels=[% levels.size %] [% FOREACH zoom IN [ 0 .. levels.max ]; key = "Level$zoom" -%] [% key %]=[% opts.exists(key) ? opts.$key : levels.$zoom %] [% opts.delete(key); END %]на
Levels=6 Level0=26 LevelRange0=24 Level1=26 LevelRange1=22 Level2=22 LevelRange2=20 Level3=20 LevelRange3=18 Level4=18 LevelRange4=16 Level5=15 LevelRange5=14MP-файл получился вроде нормальный...
oooo---!!!
Спасибо! Заработалоо! 8)
Offline