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.***
#3926 2016-06-22 22:46:51
- Renord
- Member
- From: 27RUS
- Registered: 2016-02-03
- Posts: 162
Re: Конвертер OSM -> MP
Второй вариант (тот, который "либо взять гарминовские") гораздо более, вопрос где их взять.
------
Полигон реки точно неполный - Автор ухитрился протянуть его через Приморский край в Хабаровский на тысячу километров. Однако в той mp-шке, что выкладывается на гис-лаб, он отображен, хотя там обрезано по границе края. Как там сделано?
------
Про МапЭдит я уже сказал - необходимость заставляет прибегать к его услугам. Например, требуется отображение рельефа, который в ОСМ не поддерживается в принципе, В некоторых местах требуются данные, которые возможно получить только из недопустимых в ОСМ источников (генштабовские карты, например).
Самопересечения большей частию заложены в исходнике - типо разворотных колец: http://www.openstreetmap.org/way/229367084 , почему-то конвертором не обработано, и таких набегает много. Это точно не от МапЭдита.
Проблем от огрубления координат им я не имел (по крайней мере в массовом количестве). Они возникают в-основном при копировании - вставке объектов с разных карт - получаются нестыковки, почти незаметные, но дороги автоматом не срастаются.
Last edited by Renord (2016-06-22 22:49:10)
Offline
#3927 2016-06-23 13:21:40
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Несколькими постами выше liosha давал ссылку.
Для обрезки карты по заданным границам есть ключ --bpoly. Читайте документацию на вики по osm2mp.
Вам не приходило в голову, что в большой стране каких только ошибок на карте нет, а ведь она собирается регулярно, и никто эмпешки вручную не правит.
Проблема может и не в огрублении координат (всё равно cgpsmapper расставляет все точки по той же 24-битной сетке) а в том, что мапэдит их тупо округляет, местами плодя недопустимые элементы (напр., слишком короткие дороги из одного ребра). Дело-то ваше, конечно, раз нравиться вам раз за разом делать бесполезную работу, никто вас не будет отговаривать.
Допустим, данные не чисты лицензионно, но незаменимы - ну так сливайте их с основным массивом ещё до osm2mp - второй раз вам говорю - только не заливайте их в общую базу. Насчёт рельефа, зачем его вообще каждый раз сливать с остальными данными, нужно скомпилировать для него отдельную карту, хранить её и при необходимости включать в мапсет для mapsource или прибора.
Покажите место в Приморье, где нет открытых данных, по которым можно нарисовать и добавить в osm дорогу, мне просто интересно.
Last edited by igitov (2016-06-23 13:22:00)
Offline
#3928 2016-06-23 14:15:31
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Но и дубликаты дорог там отсутствуют.
Дубликаты дорог и в гарминовском mp отсутствуют, это именно вы их создаёте своими неквалифицированными действиями посредством мапэдита.
Да, некоторые дороги представлены невидимой полилинией "дорога без покрытия", включенной в роутинг и видимой полилинией типа, поддерживающего роутинг, но не включённого в него.
Почему нельзя было сделать видимые линии нероутинговыми типами? В разных приборах дефолтный стиль дорог общего пользования очень разный, на мой взгляд, довольно удачный в большинстве случаев, и к тому же масштабируемый. Если я возьму произвольный тип линии и нарисую ему стиль, то он может соответствовать только стилю дороги на каком-то одном зуме определённого типа навигатора. Перерисовать стили всех дорог, как это сделано у Валентина или Максима - плохая идея. У них сборки под определённые типы навигаторов, у нас универсальная. В целом результат будет хуже. К тому же для десятка типов дорог придётся найти полсотни свободных типов полилиний, с ними в гармине напряг.
Last edited by igitov (2016-06-23 14:20:22)
Offline
#3929 2016-06-23 14:45:05
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Почему вообще не отказаться от удвоения дорог, вернуть, как было 3 года назад? Ну тогда роутинг будет менее адекватный или же будут ситуации, когда какая-нибудь асфальтированная tertiary будет иметь на своём протяжении участки с типом "тропа" или "дорога без покрытия", обычные же деревенские улицы все подряд будут тропами и грунтовками.
Последнее слово за Лёшей, но я лично против такой переделки.
Может вы, поковырявшись в конфигах, найдёте лучшее решение, и мы им воспользуемся.
Offline
#3930 2016-06-23 15:56:00
- LLlypuk82
- Member

- Registered: 2012-12-23
- Posts: 2,512
- Website
Re: Конвертер OSM -> MP
[чуть-чуть off topic]А гарминовские векторные карты вообще как-то развиваются? Или там достигнут «предел мечтаний» по мнению экспертов? Ведь всякие выкрутасы требуются из-за несовершенства формата или ещё чего-то, я правильно понимаю?[/чуть-чуть off topic]
Offline
#3931 2016-06-23 16:51:54
- esaulenka
- Member

- From: Москва
- Registered: 2010-08-21
- Posts: 1,194
- Website
Re: Конвертер OSM -> MP
Гарминовские векторные карты давным-давно развились в новый, более защищённый формат. Насколько я знаю, прогресс по его вскрытию околонулевой.
А вскрытый формат, с которым все сторонние (не-гарминовские) конвертеры работают, да, так и застыл в том убогом состоянии...
Offline
#3932 2016-06-23 17:13:59
- Renord
- Member
- From: 27RUS
- Registered: 2016-02-03
- Posts: 162
Re: Конвертер OSM -> MP
Может вы, поковырявшись в конфигах,
Видимо я что-то не так установил? Например ворота в конфигах есть
- condition:
- barrier = gate
action:
- action: write_poi
type: 0x3315, однако POI в mp не появляется. Хотя точка установки ворот на дороге маршрутизируется как непроезжабельная.
Точно так же есть описание забора:
- condition:
- or:
- barrier = fence|hedge
- fenced = yes
action:
- action: write_line
type: 0x010f12
name:-не рисуется линия и всё тут. С лестницей то же самое.
Может со структурой папок чего не так, с именами файлов? Или еще чего?
Last edited by Renord (2016-06-23 17:14:58)
Offline
#3933 2016-06-23 17:43:06
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Главный конфиг по-умолчанию дефолтный используется, а не гарминовский. Нужно явно указывать --config garmin-ru.cfg
Дефолтный конфиг default.cfg не знает о файлах nodes-garmin-custom-univ.yml и ways-lines-garmin-custom-univ.yml и поэтому их игнорирует, как и остальные со словом garmin в имени.
Last edited by igitov (2016-06-23 17:44:38)
Offline
#3934 2016-06-23 18:01:21
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Гарминовские векторные карты давным-давно развились в новый, более защищённый формат. Насколько я знаю, прогресс по его вскрытию околонулевой.
Мне кажется, это мало кому надо. Какие там преимущества? 26-битная точность координат, псевдо-3D здания и развязки, больше контактной информации у POI - как-то это неуникально. Кому это нужно - юзают что-то другое.
Offline
#3935 2016-06-23 18:28:39
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Меня старый гарминовский в целом формат устраивает и возможности cgpsmappera бы устраивали, если б он не сдох. Пусть бы и не развивался, но лишь бы техподдержка была и найденные баги правились.
Да, хотелось бы более гибких настроек стиля карты, как в джосме или маперитиве, но такого в гарминовском формате можно не ждать.
Вот что реально могли бы решить с кастомными стилями - масштабирование полилиний (а может и POI) с изменением зума, задаваемый порядок отрисовки полилиний. А то сейчас дороги понад усе, а остальное - хрен поймёшь как, никакой системы. Чтобы число цветов полилинии и полигона не ограничивалось двумя, а то иногда приходится вместо одного полигона рисовать два, а то и три один поверх другого. Чтобы можно было задавать обводку полигонов, аналогично линиям.
Offline
#3936 2016-06-23 22:17:07
- Renord
- Member
- From: 27RUS
- Registered: 2016-02-03
- Posts: 162
Re: Конвертер OSM -> MP
Нужно явно указывать --config garmin-ru.cfg
Ну так... Предупреждать же надо было!!!
Всё заработало. Теперь буду пробовать разбираться дальше.
-----------------------------------------------------------------
-----------------------------------------------------------------
...действительно, "удовольствие то ещё"... Три попытки установки разных версий PERLа - пока получилась работающая. Потом экспериментальный подбор размера скачиваемой области, не приводящий к out of memory, Установка PITHON для реализации докачки недоскачанных мультиполигонов. Собственно разбирательство с устройством конфигов...
Но теперь имею хотя бы общее представление как это работает.
------------
Попутно выяснилось, что наравне с "natural","landuse" и "waterway" недокачанным может оказаться и например полигон "place = city" - а это еще хуже: не поддается докачке скриптом, так как не мульти, а без него поломается очень много чего, завязанного на "condition: inside_city" - например, лестница за городом маршрутизируется, а в городе - нет (так и не понял зачем так сделано).
Да и собственно в данном случае докачка , как я понимаю, не помогла бы - это было бы "махать руками после драки", то есть пристроить полигон туда, где уже все посчитано без его участия.
=========================================
Как сделано дублирование дорог разобрался, но необходимость в этом понять так и не могу.
Проблема невидимости какого-либо типа прекрасно решается TYP-файлом, тем более что практически всегда он с картой применяется. А иначе даже зданий не видно.
Можно принять это как попытку разрешить заложенное в OSM противоречие между ролью дороги (primary, secondary...) и ее физическим состоянием (шоссе, грунтовка...) - то есть, изображать согласно роли, но маршрутизировать согласно состоянию. Ну не знаю...
------------
Насчет автоматической постройки графа в МапЭдите - соглашаюсь, что это плохая идея. Можно получить множество неожиданностей, и даже не узнать об них.
Вот.
Last edited by Renord (2016-06-24 11:46:05)
Offline
#3937 2016-06-28 18:59:56
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
Надо вам было новое сообщение создавать, а не редактировать предыдущее. Я сразу и не увидел.
Недокачанный полигон place - это странно. Если вы вырезаете .osm точно по границам, таких быть вовсе не должно. Если с запасом - ну да и пусть, они всё за пределами целевой территории.
Пеший и вело-роутинг внутри нп убит по двум причинам: 1) из-за кучи тротуаров вдоль дорог плохо джипиэсмапперу (много близких узлов) и вообще из-за обилия пешеходных дорожек и троп пухнет дорожный граф, ограничивая тем самым размеры покрытой одной картой области; 2) велика вероятность, что гармин заведёт в определённых обстоятельствах на тротуар или лестницу автомобиль, даже если на этих отрезках имеются все ограничения. Как я говорю по этому поводу, в гарминовском роутинге есть правило: "если нельзя, но очень хочется, то можно":) В альтернативных сборках эти проблемы не так критичны. Сборка осуществляется программой mkgmap, а целевая аудитория - туристы и велосипедисты.
Про двойные линии дорог - гадать тут нечего, я уже всё подробно описал, повторяться не хочу. Если считаете, что есть решение лучше - предлагайте что-то конкретное, желательно, подкрепляя предложение исправленным кодом.
Last edited by igitov (2016-06-28 19:00:15)
Offline
#3938 2016-06-29 00:51:39
- Renord
- Member
- From: 27RUS
- Registered: 2016-02-03
- Posts: 162
Re: Конвертер OSM -> MP
Недокачанный полигон place - это странно
Если выкачать квадрат, из которого потом можно было бы вырезать например Хабаровский край по границе - у меня гарантированно получается out of memory при дальнейшей обработке (не супер же компъютер
).
А при более мелких квадратах запросто может отрезаться кусок города (цепочка квадратиков вдоль Амура от Хабаровска через Комсомольск до Николаевска). Ну следить, конечно, надо...
Offline
#3939 2016-06-29 14:50:25
- igitov
- Member

- From: Kotel'nich
- Registered: 2011-12-08
- Posts: 1,430
Re: Конвертер OSM -> MP
igitov wrote:Недокачанный полигон place - это странно
Если выкачать квадрат, из которого потом можно было бы вырезать например Хабаровский край по границе - у меня гарантированно получается out of memory при дальнейшей обработке (не супер же компъютер
).
А при более мелких квадратах запросто может отрезаться кусок города (цепочка квадратиков вдоль Амура от Хабаровска через Комсомольск до Николаевска). Ну следить, конечно, надо...
Понятно, но режьте же по границам районов, у нас многие регионы и страны так и собираются.
Offline
#3940 2016-07-19 17:27:29
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Конвертер OSM -> MP
Я скачал сегодня osm2mp (https://code.google.com/archive/p/osm2m … ult/source). Запустил с параметром --config=c:\Perl\site\osm2mp\cfg-navitel\navitel-ru.cfg
Программа ругается:
Loading configuration...
YAML Error: Stream does not end with newline character
Методом тыка выяснил, что в файл \osm2mp\cfg-navitel\polish-mp\nodes-navitel.yml нужно добавить пустую строчку в конце файла.
И ещё вопрос:
В программе упоминается список типов данных garmin-custom. Я так понял, что это дополнение к стандартному тайпсету Гармина. Где взять его описание?
Offline
#3941 2016-07-19 18:32:11
- gryphon
- Member

- From: Pskov
- Registered: 2010-09-16
- Posts: 1,690
Re: Конвертер OSM -> MP
osm2mp какое-то время назад переехал сюда https://github.com/liosha/osm2mp
кофиги под гармин тут же, рядом https://github.com/liosha/osm2mp-garmin-open
Offline
#3942 2016-07-19 18:52:25
- dimonster
- Member
- Registered: 2012-07-08
- Posts: 1,501
Re: Конвертер OSM -> MP
Спасибо. Скачал. Изучаю. Дело в том, что в первом сообщении темы указаны ссылка на google.code. Наверное, надо исправить.
Кстати, а куда делись навителовские конфиги? Раньше были папки с конфигами под навител и "Семь дорог". А теперь только дефолтные и гарминовские.
Или их теперь здесь брать? https://github.com/dimuzz/osm2navitel/
Offline
#3943 2016-07-19 20:31:04
- gryphon
- Member

- From: Pskov
- Registered: 2010-09-16
- Posts: 1,690
Re: Конвертер OSM -> MP
навител похож на правильный, а про 7 дорог лучше в их в теме спрашивать
Offline
#3944 2016-12-13 16:25:18
- White_54
- Member

- From: 101 километр
- Registered: 2014-07-16
- Posts: 835
Re: Конвертер OSM -> MP
Не могу допетрить. Если конвертировать с переводом (скажем target_lang: ru - default_lang: uk) и задействованием --lt-yatr-key, то если попадается надпись на другом языке (скажем Английский) - не переводятся на "ru"? А если нет name:uk=*, то берется имя из name=* без перевода?
Есть settings-ххх.yml. В нем последовательность (приоритет) тегов. Если тянем без перевода вроде понятно - name, нет такого - следующий по списку. Но name то есть всегда?!
И как эти приоритеты сочетаются в случае с переводом. Задано жестко - вытянуть "ru", если нет взять "uk" и перевести. А если нет "ru" или нет "uk", скажем есть только "name". Что должен делать переводчик?
Что же получается - если на объекте есть name:ru, то оно берется без перевода?! А если на соседнем name:ru нет, то оно пойдет из name:uk через перевод?! Появляется разночтение при наличии в имени "Ё", перевод даёт только "Е"... Похоже есть проблема переводчика с понимаем "i" (Английское написание как то разнится с Украинским)?
Последнее - переводчик работает только с name=*? Если на объекте (точке) принудительно указан addr:street, то он не переводится или должен переводиться и в моём случае вмешалось пресловутое "i"?
Спасибо.
Offline
#3945 2016-12-13 19:56:22
- gryphon
- Member

- From: Pskov
- Registered: 2010-09-16
- Posts: 1,690
Re: Конвертер OSM -> MP
Когда-то разбирался, но многое уже позабыл.
default_lang определяет то, на каком языке name, если поставить туда какой-нибудь мусор, вроде default_lang=fake, он будет name использовать только в самом крайнем случае, заворачивая в транслит
переводить будет все языки, но что из этого будет потом использовать, и в каком порядке, не могу сказать (но там есть опция с приоритетами)
"перевод дает только Е" - надо полагать, это прикол Яперевода, osm2mp, вроде как, результат не правит
ну и в гарминосборке сделано так (перевод используется, если нет родных тегов)
-tl=ru -dl=uk --lt-yatr-key=@yatr.key --lt-yatr-cache-dir /data/garmin/cache/yatr --lt-priority yatr_uk_ru=2 --textfilter PrepareCP1251
/надеюсь не совсем фигню написал, а то я очень давно переводом не пользовался/
Last edited by gryphon (2016-12-13 19:57:51)
Offline
#3946 2017-01-05 13:41:53
- White_54
- Member

- From: 101 километр
- Registered: 2014-07-16
- Posts: 835
Re: Конвертер OSM -> MP
Еще прошу помощи в вопросе отладки mp-postprocess.pl.
Сокращения в целом были отстроены, что то добавил - работает.
Не могу справиться с задачей сокращения такой записи - Label=Князів Острозьких вулиця (Шелушкова вулиця)
Первая "вулиця" сокращается и встаёт в конец за текстом в скобках, а вот вторую "вулиця", ту что в скобках, надо либо сократить тоже, либо вовсе убрать. Не понимаю как эту процедуру следует описать.
Первая сокращается так: [ 'вул(?:|иця)' => 'вул.' ],
Что бы удалить вторую не цепляя первой, пытаюсь её привязать к скобкам. Но для языка скобка имеет некий смысл. Обработка обрывается. Как удалить одну из двух, а оставшуюся сократить?
Спасибо!
Last edited by White_54 (2017-01-05 13:42:42)
Offline
#3947 2017-01-05 14:40:29
- freeExec
- Moderator
- From: Ульяновск,Модератор всех слоёв
- Registered: 2012-07-31
- Posts: 8,547
Re: Конвертер OSM -> MP
Обычно чувствительные символы префексуют слешем -> '\('
Offline
#3948 2017-01-05 17:26:24
- White_54
- Member

- From: 101 километр
- Registered: 2014-07-16
- Posts: 835
Re: Конвертер OSM -> MP
Обычно чувствительные символы префексуют слешем -> '\('
Буду пробовать. Спасибо!
Last edited by White_54 (2017-01-09 10:13:38)
Offline
#3949 2017-01-16 21:25:00
- Pashka2017
- Member
- From: Киев
- Registered: 2017-01-16
- Posts: 4
Re: Конвертер OSM -> MP
Привет, друзья
Подскажите, пожалуйста, как сделать Label на нескольких языках.
В osm-файле есть name и name:en.
Попытка создать новую переменную в settings-navitel.yml, например, label1: [ 'name:en' ] приводит к ошибке.
Может у кого есть готовый конфиг для мультиязычной карты?
Offline
#3950 2017-01-17 05:37:04
- Marych73
- Member

- From: Ташкент
- Registered: 2011-01-18
- Posts: 283
Re: Конвертер OSM -> MP
Pashka2017, вам надо чтобы в label попадали названия из языка отличного name (например из name:en) или чтобы name и name:en одновременно в label прописывались?
Offline