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.***

#376 2018-03-05 02:16:57

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

Re: Mkgmap

Валентин, я тебе присылал файл status, обрати внимание, что для рабочего поиска сокращение "ул." вместо "улица" нужно делать в ТРЕХ местах: 1. highway=* & name 2. addr:street 3. mkgmap:street
То есть "Имя улицы" должно до буквенно совпадать с addr:street указанной на доме и совпадать в момент производства карты с внутренней переменной mkgmap:street при создании индекса.
А иначе поиск работать не будет. Пример твоя уже вчерашняя карта: город Нарва, улица Александра Пушкина, дом 17 на твоей карте не ищется, потому что, в тегах имени улицы есть name:ru=улица Александра Пушкина, а в тегах дома 17 прописано addr:street=Aleksander Puškini, возможно пример не корректный так как в тегах дома 17 прописано еще addr:city=Narva, но поверь, что даже без тега addr:city=Narva поиск все равно работать не будет, так как name:ru и addr:street не совпадают.
Теперь разложим твою строку: Если страна Россия и внутренняя переменная mkgmap:street ничему не равна и highway любой, то установить addr:street='без названия'. И сразу вопрос, а куда или кому/чему установить addr:street='без названия'.
Ведь нам надо чтобы этот тег был установлен на здании, а highway в данном населенном пункте получил имя 'без названия' иначе совпадения не будет и поиск не сработает.
https://www.openstreetmap.org/query?lat … n=38.14211 вот тут хоть и стоит тег на здании addr:place=Скоропусковский и вроде можно его скопировать в addr:street=Скоропусковский, но как проездам, улицам и дорогам прописать name=Скоропусковский я не знаю, мой стиль подставляет не всем этим проездам и т.д. только в этом нас. пункте имя улицы А-108 и поиск работает по ней. Скоропусковский, А-108, дом 2, 3, 6 только три дома. Но это в этом, а в других? Позже проверю как на туристическом приборе, а на Nuvi из этой ситуации выхожу просто: Искать адрес -> Город  -> Прибор просит ввести улицу, а ничего не ввожу и нажимаю "Готово" -> получаю список улиц в этом населенном пункте (даже притянутые) Выбираю -> Просит ввести №дома, опять готово и выбираю из того что есть (Но не все дома получают притянутый адрес), да и хочется решить эту проблему тоже.

Last edited by Eugeny_B (2018-03-05 02:42:31)

Offline

#377 2018-09-03 14:04:10

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Сокращения нужны только для повышения читабельности надписей на экранах с невысоким разрешением. Для целей организации поиска нужно просто наладить разделение слов в названиях (компиляция с ключем --split-name-index) и отделение их от префиксов и суффиксов (улица, бульвар, шоссе и др.). Для этого в конфигах есть специальный файл, где оно настраивается - roadNameConfig.txt

# russian
prefix1:ru = "улица", "переулок", "проспект", "проезд", "разъезд", "тракт", "площадь", "бульвар", "шоссе", "дорога", "тупик", "микрорайон", "аллея", "линия", "набережная"
prefix2:ru = "им.",   "имени" 
suffix:ru  = "улица", "переулок", "проспект", "проезд", "разъезд", "тракт", "площадь", "бульвар", "шоссе", "дорога", "тупик", "микрорайон", "аллея", "линия", "набережная"

lang:RUS = ru

Еще одна ежедневная сборка OSM для Garmin.

Offline

#378 2018-09-03 14:17:22

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

Re: Mkgmap

Ну хоть через 4 месяца ответил, спасибо.
Сокращения я использую на туристических приборах как ты и говоришь для повышения читабельности. Пользователи автомобильных приборов попросили без сокращений, так как злая тетка плохо понимает сокращения и получается забавное произношение улиц. А перенос префиксов в конец имени (то есть делая из них суффиксы) я делал что бы получить однообразие отображения улиц при поиске. Все это я делал до введения в mkgmap функции roadNameConfig.

Offline

#379 2018-09-12 17:55:13

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Два дня бился с проблемой. Оказывается TYPViewer работая под Windows 10 портит тхт-файл исходника, сволочь! Причем как изощренно это происходит - он перемешивает картинки POI с кодом какой-нибудь другой. В итоге смотришь на карту и офигеваешь, не понимая, что происходит. И никак это побороть не получилось. mad
В итоге вернул обратно старый SSD с Windows 7 и все опять нормально заработало. Ахренеть.


Еще одна ежедневная сборка OSM для Garmin.

Offline

#380 2018-09-13 20:33:28

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Так. Вроде начинает все немного проясняться.
Сегодня вернулся к разбору описанной выше проблемы более подробно. TYPViewer под Windows 7 сохраняет коды точек в таком виде:

[_point]
Type=0x11711

А вот в Windows 10 ровно тот же TYPViewer уже пишет вот так:

Type=0x117
SubType=0x11

И это Mkgmap уже отказывается корректно  транслировать. Если открыть готовый TYP-файл, то мы увидим следующее:

Type=0x001
SubType=0x11

При этом коды линий и полигонов остаются в прежнем виде, когда одной строчкой описывается и тип, и подтип. Корежит  только блок с точками. Завтра попробую связаться с разработчиком TYPViewer.
Такие дела... roll


Еще одна ежедневная сборка OSM для Garmin.

Offline

#381 2018-09-13 23:20:38

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Победил, блин. Бессмысленно и беспощадно "с умом" потрачена куча времени. Кто бы мог подумать, что сие находится в настройках самого TYPViewer. lol

1bb5377c5e41fcb5aba8932fb4c94323.gif


Еще одна ежедневная сборка OSM для Garmin.

Offline

#382 2018-09-14 07:00:11

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

Re: Mkgmap

А у меня давно оказывается так, только вместо французского - русский

Offline

#383 2018-09-27 17:55:25

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Eugeny_B wrote:

В файле style-manual.pdf нашел такие строки, может с помощью их что-то получится?
if (mkgmap:option:routing=car) then
    include "inc/car-rules"
end
Если поменять routing=car и car-rules на нужные нам code-page=1251 и status
как думаешь, получится?

Немного иначе, но получилось!
Для того, что бы заработала эта логика нужно ввести свою собственную переменную при компиляции карты. В моем случае она выглядит так:

--style-option=code-page=1250
или
--style-option=code-page=1251

И вот тогда уже можно сделать переключение разных настроек в зависимости от языка:

if (mkgmap:option:code-page=1251) then
include "inc/name-ru";
end
if (mkgmap:option:code-page=1250) then
include "inc/name-en";
end

Я вынес в отдельные файлы все, что касается переводов и имен по умолчанию.
Единственный момент - при внедрении такого переключения в файл настроек линий, при компиляции все они просто пропадали. Природа этого явления мне пока не понятна. Так что пришлось сделать два логических блока if-then внутри файла lines отвечающих за языковое разделение, без ссылки на внешние файлы.

Last edited by ValentinAK (2018-09-27 17:55:58)


Еще одна ежедневная сборка OSM для Garmin.

Offline

#384 2018-10-08 15:35:50

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Прорыв года, практически, блин. Я нашел способ, как отображать в моем ущербном Nuvi-1490 некоторые важные точки! Например светофоры и броды. До этого я безуспешно пытался подобрать какой-то из пригодных для этого типов poi но без особых результатов. И вот я-таки нащупал логику. Смысл в том, что у точки должно быть имя. И только с ним навигатор считает нужным такую точку показать на экране. Пускай в typ-файле отображение названия отключено, но в данных оно быть должно. В своем файле настроек русскоязычных названий я это сделал вот так:

(highway=traffic_signals | crossing=traffic_signals) & name!=* {set name='светофор'}
(highway=ford | ford=yes) & name!=* {set name='брод'}

Но еще есть Nuvi-2797LMT, который точки показывает вообще от балды, по-моему. Как к его логике найти подход, вот вопрос.


Еще одна ежедневная сборка OSM для Garmin.

Offline

#385 2018-10-09 06:08:24

borism346
Member
From: Minsk
Registered: 2008-11-12
Posts: 910

Re: Mkgmap

ValentinAK wrote:

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

Такая же логика и у моего Garmin-Asus M10e. Также при конвертации пришлось давать имена многим объектам и отключать отображение в typ-файле smile.

Offline

#386 2018-11-25 00:42:38

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

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

whitewater=put_in;egress

Еще одна ежедневная сборка OSM для Garmin.

Offline

#387 2018-11-25 16:46:05

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

Re: Mkgmap

; - перечисление
т.е whitewater=put_in;egress равноцено одновременному присутствию на объекте  и whitewater=put_in и whitewater=egress

Offline

#388 2018-11-25 21:26:17

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

pfg21 wrote:

; - перечисление
т.е whitewater=put_in;egress равноцено одновременному присутствию на объекте  и whitewater=put_in и whitewater=egress

Нет. И Overpass это недвусмысленно подтверждает.


Еще одна ежедневная сборка OSM для Garmin.

Offline

#389 2018-11-25 21:57:02

wowik
Member
From: Zelenograd
Registered: 2009-09-29
Posts: 9,367

Re: Mkgmap

; - перечисление
Но оно не приветствуется и не всеми и не везде поддерживается.

Offline

#390 2018-11-25 22:02:55

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Это я знаю, но хотелось бы придумать способ прикладного применения в случае обсуждаемого конвертера.


Еще одна ежедневная сборка OSM для Garmin.

Offline

#391 2018-11-26 07:29:51

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

Re: Mkgmap

не мапьте под рендер. автор оверпаса мог вполне решить что не будет  поддерживать ";" smile
но применения в данном случае такое, что на объекте два тега, как я и написал.

Offline

#392 2018-11-26 11:00:11

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Как раз все строго наоборот: whitewater=put_in;egress находится. А вот whitewater=put_in & whitewater=egress - нет. Что вовсе не удивительно по причине отсутствия такой связки тегов в базе, ибо нет технической возможности иметь на одном объекте два ключа с одинаковым названием.


Еще одна ежедневная сборка OSM для Garmin.

Offline

#393 2018-11-26 12:10:56

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

Re: Mkgmap

значит я вас не правильно понял.
потому и ввели перечисление. к примеру в shop очень часто попадаются.

Offline

#394 2018-11-28 19:31:57

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

ValentinAK wrote:

Граждане. А как обрабатывать значение у ключа, которое содержит в себе точку с запятой?

Получилось через применение регулярного выражения.

whitewater ~ 'put_in\p{Punct}egress' [0x6516 resolution 24]

Еще одна ежедневная сборка OSM для Garmin.

Offline

#395 2018-11-29 13:43:21

ValentinAK
Member
From: notMoscow, Russia
Registered: 2010-07-06
Posts: 721
Website

Re: Mkgmap

Умные люди подсказали еще боле простое и изящное решение - просто забрать значение ключа в одинарные кавычки. big_smile

whitewater='put_in;egress' [0x6516 resolution 24] 

Еще одна ежедневная сборка OSM для Garmin.

Offline

#396 2019-01-10 06:48:35

Lazarev
Member
From: Смоленск
Registered: 2019-01-10
Posts: 17

Re: Mkgmap

Загрузка данных OSM и сопутствующих файлов.
Загрузку я осуществляю с помощью программы wget запуская 1_run_download.bat файл.
Ссылку на весь комплект программ я приведу ниже или можете самостоятельно поискать в интернете.
@echo off
set BASEDIR=%CD%
:: =============================================================
echo .
echo .   OSM data download files
echo .
cd %BASEDIR%\input
rem Скачиваем файл данных OSM с http://download.geofabrik.de/index.html
"%BASEDIR%\wget\bin\wget.exe" "http://download.geofabrik.de/russia-latest.osm.pbf" –N

rem Скачиваем файл данных OSM с http://gis-lab.info/projects/osm_dump/
rem "%BASEDIR%\wget\bin\wget.exe" "http://data.gis-lab.info/osm_dump/dump/ … al.osm.pbf" –N

rem Скачиваем файлы данных границ и береговых линий
"%BASEDIR%\wget\bin\wget.exe" "http://osm2.pleiades.uni-wuppertal.de/b … bounds.zip" -N
"%BASEDIR%\wget\bin\wget.exe" "http://osm2.pleiades.uni-wuppertal.de/s … st/sea.zip" –N

rem Скачиваем файлы данных географических имен (нужен какой-нибудь один, а можно и никакой)
"%BASEDIR%\wget\bin\wget.exe" "http://download.geonames.org/export/dump/cities1000.zip" -N
"%BASEDIR%\wget\bin\wget.exe" "http://download.geonames.org/export/dump/cities5000.zip" -N
"%BASEDIR%\wget\bin\wget.exe" "http://download.geonames.org/export/dum … s15000.zip" -N
"%BASEDIR%\wget\bin\wget.exe" "http://download.geonames.org/export/dump/RU.zip" –N

Доброго всем дня.
Пытаюсь создать этот файл по описанию, но выдает ошибку что не может скачать bounds.zip и sea.zip.
Подскажите так же если мне нужна объединенная карта Могилёвской области и Смоленской области то мне нужно скачивать карту России и Беларусь или карту всего мира.

Чтобы создать самостоятельно, надо в навигаторе или программах BaseCamp или MapSource создать маршрут по границе территории которая Вам нужна и сохранить в формате GPX. Затем зайти на сайт по ссылке http://www.geocaching-dresden.de/tools/ … /index.php и преобразовать маршрут в poly файл. Маршрут должен быть кольцевым (замкнутым, первая точка, она-же и последняя)

Этот инструмент сейчас не работает, есть ли альтернатива?

Last edited by Lazarev (2019-01-10 07:07:24)

Offline

#397 2019-01-10 17:49:51

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

Re: Mkgmap

http://www.mkgmap.org.uk/download/mkgmap.html
Вот здесь смотрите и найдете.
нужно скачивать карту России и Беларусь вырезать свои области, объеденить и обработать.
И вот это прочитай https://rutracker.org/forum/viewtopic.p … 6#74969416
http://www.gps-forum.ru/forum/viewtopic.php?f=3&t=39189

Last edited by Eugeny_B (2019-01-10 17:52:50)

Offline

#398 2019-01-10 17:54:40

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

Re: Mkgmap

Вот копирнул с рутрекера свой пост.

Описание создания карты.
1. Для того чтобы сделать горизонтали с нужным шагом и для создания 3D карты надо скачать файлы покрывающие нужную территорию вот от сюда (возможно есть и другие места) http://viewfinderpanoramas.org/Coverage … s_org3.htm
Для обработки этих файлов можно использовать https://wiki.openstreetmap.org/wiki/Srtm2Osm или https://wiki.openstreetmap.org/wiki/OSM … aphic_maps я использовал https://github.com/FSofTlpz/Hgt2Osm2 и получил файл данных горизонталей в формате osm.pbf (понадобится программа https://wiki.openstreetmap.org/wiki/Osmosis или https://wiki.openstreetmap.org/wiki/Osmconvert) я пользовался Osmosis
2. Данные OSM в формате osm.pbf для создания карты можно скачать http://download.geofabrik.de/ или http://gis-lab.info/projects/osm_dump/ сами выбирайте что вам подходит. Я качал http://data.gis-lab.info/osm_dump/dump/ … al.osm.pbf это территория бывшего СССР. Обратите внимание на Poly-файлы: http://data.gis-lab.info/osm_dump/poly/ и на http://download.geofabrik.de/ они нужны для вырезания из данных OSM необходимых территорий (на пример: я создав Poly-файл http://www.gps-forum.ru/forum/viewtopic.php?f=3&t=39189 вырезаю из СССР только перечисленные в первом сообщении области и республики).
3. Соединяем в один файл данных данные OSM и данные горизонталей. Для этого (для соединения и вырезания) используем программы Osmosis или Osmconvert.
4. Далее приступаем к созданию карты с помощью https://wiki.openstreetmap.org/wiki/Mkgmap я уже описывал процесс создания https://forum.openstreetmap.org/viewtop … =9249&p=14 здесь немного добавлю.
Программа Mkgmap сама может создать карту 3D для Garmin.
Если знаете английский можно писать разработчикам о проблемах http://gis.19327.n8.nabble.com/Mkgmap-D … 24443.html
Примеры стилей для Mkgmap https://wiki.openstreetmap.org/wiki/Use … map_styles
Для правильного адресного поиска данные OSM необходимо обрабатывать, понадобится программа https://wiki.openstreetmap.org/wiki/Osmfilter
Вот и все.
P.S. Всем удачи в Ваших начинаниях.

Last edited by Eugeny_B (2019-01-10 17:56:55)

Offline

#399 2019-01-10 20:54:31

Lazarev
Member
From: Смоленск
Registered: 2019-01-10
Posts: 17

Re: Mkgmap

Пытаюсь создать этот файл по описанию, но выдает ошибку что не может скачать bounds.zip и sea.zip.

Нашел вписал новые ссылки на файлы заработал 1_run_download.bat

заработал 2_run_cut_poly.bat (пока остановился на Смоленской обл.)

установил osmosi заработал 3_run_boundary.bat

установил GPSBabe для 4_run_splitting.bat заработало.

Возникла ошибка при выполнении 5_run_create.bat
Пишет
1 - maptourist - стиль карт с http://maptourist.org/file/category/3-garmin/
2 - stranger - стиль карт с http://velo100.ru/gps/download
3 - My-style - стиль карт Mkgmap default + J-Typ-v161.typ
.
Enter NAME Style - 1
NAME Style is - 1
.
.    Cleaning the target directory for Creating.
.
Не удается найти указанный файл.
.
.    Create a map using MKGMAP...
.
Error occurred during initialization of VM
Could not reserve enough space for 3145728KB object heap

Подскажите как исправить?
выполняется команда при выборе 1 пункта
:style1
set MYSTYLE=p-map
set MYFID=480
set MYTYP=p-map
goto pusk

Стили скачал в папку styles\p-map
брал из https://wiki.openstreetmap.org/wiki/Use … yles#P-Map

Last edited by Lazarev (2019-01-10 21:14:49)

Offline

#400 2019-01-10 21:14:40

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

Re: Mkgmap

1 - maptourist - стиль карт с https://maptourist.org/osm-garmin/CurrentConfigs/
Остальные не помню так как не пользуюсь


Смотри https://forum.openstreetmap.org/viewtop … =9249&p=14 разбирайся в батфайлах, редактируй команды, пути
Jawa установлена? jawa.com

Там выделяется 3 гига памяти
java -Xmx3G -jar "%BASEDIR%\mkgmap\mkgmap.jar" ^
Если у тебя столько нет, то пробуй 1 гиг
java -Xmx1024m -jar "%BASEDIR%\mkgmap\mkgmap.jar" ^
Только тут надо не раскоментировать/закоментировать, а поменять местами

Last edited by Eugeny_B (2019-01-10 21:25:32)

Offline

Board footer

Powered by FluxBB