Ежедневная сборка OSM для Garmin с помощью Mkgmap

https://www.google.com/search?newwindow=1&sxsrf=ALeKk003DAc9wT0mc8zU7sZx9B7n_SQeNA%3A1591097114916&ei=GjfWXqOqN8GimwXTr4moBA&q=%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0+%D0%BA%D0%B0%D1%80%D1%82+%D0%BD%D0%B0+Garmin&oq=%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0+%D0%BA%D0%B0%D1%80%D1%82+%D0%BD%D0%B0+Garmin&gs_lcp=CgZwc3ktYWIQAzIGCAAQBxAeMgIIADIECAAQHjIECAAQHjIECAAQHjIECAAQHjIECAAQHjIGCAAQCBAeMgYIABAIEB46BAgAEEc6BQgAEM0CUKbuAViVggJgpIwCaABwAXgAgAGUAYgBmQKSAQMwLjKYAQCgAQGqAQdnd3Mtd2l6&sclient=psy-ab&ved=0ahUKEwijn9nSguPpAhVB0aYKHdNXAkUQ4dUDCAw&uact=5

Сборки Европы сломаны - выпадает очень много данных. Обновляться пока не стоит. Разбираюсь в чем причины. Пока не понятно. Уже второй раз такое…

Сегодня Европа собралась удачно. Можно пользоваться. Но еще нужно понаблюдать за стабильностью процесса, т.к. не удалось выяснить причину сбоя.
Так же на пробу получилось сделать сборку всей Европы целиком. Если все пойдет нормально, то и она будет доступна на ежедневной основе.
OSM-MapTourist-Europe-gmapi-EN.zip
Аккуратнее, объем архива 11 гигабайт!

https://maptourist.org/osm-garmin/CurrentConfigs/OSM-2018.txt
В самом конце файла прилип мусор.
[_point]
Type=0x11711

[end]???#!"
мусор^^^^^^^ и далее

И что-то у тебя с TYP файлами неладное. Сообщение №827 читал, но у меня такого нет. Что-то с кодировками самого файла и параметра CodePage=
По памяти, что-то писали про: файл TYP.txt в кодировке UTF-8 закоментировать строки:
[_id]
;ProductCode=1 set from --product-id
;FID=8094 set from --family-id
;CodePage=65001 set from --code-page
[End]
смотри файл mapnik.txt из поставки mkgmap: r4517

Вот как раз про то и изменения, что произошел переход на UTF-8, а указание кодировок в typ-файле конвертером более не воспринимаются. После праздников переведу сборку всех карт в юникод, да.

add:
typ-файл поправил, спасибо.

Здравствуйе.
Спасибо за вашу сборку.
Вчера скачал СНГ EN. Названия улиц в приборе отображаются “недоквадратиками” Прочие названия отображаются нормально, если навести курсор на улицу во всплывающем окне тоже нормально. В MapSource отображается правильно.
Со сборками с других ресурсов такой проблемы не наблюдаю. Подскажите, как победить?

Проверил последнюю EN-сборку. Никаких ошибок в ней выявить не получилось. Во всех моих приборах названия отображаются корректно. Даже и не знаю, что вам посоветовать и чем помочь.

На старых Гарминах есть такая проблема, У меня была на E-Trex, вроде как не лечится, как вариант самим собирать карту и в конфигах прописывать чтобы все названия выводились заглавными буквами.

Я сперва тоже подумал об этом. Но не должны ли тогда отображаться первые заглавные буквы?

Только что mkgmap-r4523 файл TYP.txt в кодировке Win 1251 в mkgmap.cfg code-page: 1251
в TYP.txt
[_id]
ProductCode=1
FID=1500
CodePage=1251
[End]

[_polygon]
Type=0x01
;GRMN_TYPE: Urban Areas/LARGE_CITY/Large urban area, 200 000 or more inhabitants/Non NT
String1=0x19,Города
String2=0x04,City
ExtendedLabels=N
Xpm="0 0 1 0"
"1 c #BDBD6A"
[end]

[_line]
Type=0x01
;GRMN_TYPE: Roads/INTERSTATE, MAJOR_HWY/Primary, divided, limited-access highway, akin to an interstate in the US/Non NT, NT
UseOrientation=Y
Xpm="32 2 2  1"
"! c #809BC0"
"  c none"
"                                "
"                                "
;12345678901234567890123456789012
String1=0x19,[Автомагистраль]
String2=0x04,[Motorway]
ExtendedLabels=N
[end]

[_point]
Type=0x001
SubType=0x00
;GRMN_TYPE: Political Entities/CITY_10M/Large city with >10 million inhabitants/Non NT
String1=0x19,Мегаполис
String2=0x04,Mega City
ExtendedLabels=Y
FontStyle=LargeFont
CustomColor=No
DayXpm="8 8 2 1"   Colormode=0
"!	c #FF0000"
"#	c #101010"
"########"
"#!!!!!!#"
"#!!!!!!#"
"#!!!!!!#"
"#!!!!!!#"
"#!!!!!!#"
"#!!!!!!#"
"########"
;12345678
[end]

Все отлично. В полученном TYP-файле присутствуют и русский и английский.
Ни на UTF-8 ни на CodePage=65001 я не переходил.

Так и есть, на других улицах показывает только заглавные буквы, а на скрине ulitsa Ibragimova, почему-то I не хочет.

Небольшая полянка в лесу https://www.openstreetmap.org/#map=19/55.84585/37.30053 Но на вашей карте она почему-то закрашивается и подписывается, как “parking”.

И ещё, я предлагаю рисовать natural=wetland + wetland=swamp, т.е. заболоченный лес, как синие чёрточки на зелёном фоне, чтобы можно было бы понять, что на этом месте нет открытого участка. Так сейчас рисуется natural=wetland на фоне полигона леса. Зелёный можно немного другого тона, чтобы было ясно, что это прямо совсем болото-болото, а не просто подтапливаемый участок леса.

Тогда вам нужно используя вот этот инструмент переделать все названия на заглавные буквы.
http://gmaptool.eu/en/content/gmaptool

Там в этом треугольнике адская мешанина из мультиполигонов и противоречивых тегов. Добавил в настройки и такую защиту от дурака. В завтрашней сборке будет уже луг.

По болотам: Аналогичное предложение ранее уже обсуждалось. Расплывчатость и некоторая противоречивость в описании тегов не позволяют однозначной их трактовки. Так что текущий выбор стиля отображения вполне осознан. Да, не идеально, но так меньше ошибок.

Да. Если отдельно компилировать typ-файл. Но как только начинаешь собирать карту к конкретным указанием --code-page, то все уже не так красиво.

Вот моя строка запуска создания карты:
java -Xmx12288m -Dlog.config=“e:\OSM\Tools”\mkgmap_log.props -jar “e:\OSM\Tools\mkgmap\mkgmap.jar” --max-jobs=2 --output-dir=“e:\OSM\Work\1501-Travel-Map-NW-5m\Output_Map” -c “e:\OSM\Work\1501-Travel-Map-NW-5m\Output_Splitter\osmmap.args” “e:\OSM\Styles\Tourist\Tourist.txt”

osmmap.args содержит:

family-id: 1501
product-id: 1
code-page: 1251

TYP.txt в кодировке Win 1251 содержит:
[_id]
ProductCode=1
FID=1500
CodePage=1251
[End]

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

А теперь попробуй с 1250.

Но я у тебя скачиваю карту RU в которой должно быть 1251, а не 1250 или 1252 и вот в ней TYP без русского. А только ангельский.
Если установить 1252 то русского не будет, это я давно проверял. Почему у тебя в RU не пишется 1251?

Полдня разбирался. Выявилась еще одна чувствительная последовательность ключей в команде запуска. Сперва нужно указывать --code-page: и только потом путь к текстовому исходнику typ-файла.
Переход русских сборок на юникод откладывается.

Где-то в документации читал, файл TYP.txt должен быть последним в командной строке, но сходу эти строки в документации не нашел, но ее недавно меняли (может по этому). Но нашел в options.txt :
The order of the options is significant in that options only apply to
subsequent input files. If you are using splitter, you probably will need to
put most of your options before ‘-c template.args’ (this file is generated by
splitter).
Порядок параметров важен тем, что параметры применяются только к последующим
входным файлам. Если вы используете сплиттер, вам, вероятно, потребуется
поместить большинство ваших опций перед ‘-c template.args’
(этот файл генерируется сплиттером).

А еще про --description=text читай.
И по этому у меня в файл osmmap.args сначала записываются все опции, потом в него добавляется файл template.args и в конец записывается общий --description и потом --gmapsupp. А в конец командной строки TYP.txt

Ну в общем, когда что-то поправляешь надо сверяться с документацией. :slight_smile:

Удачи!
PS. Нет не в документации, а у немцев в bat-файле было написано. Видно раньше было в документации.
Rem Порядок параметров имеет значение.
Rem Параметр -c должен быть после опции --output, а файл typ должен быть последним
Это я для себя переводил.

В силу особенностей настроек при сборке карт различных континентов, у меня всего один общий optionsfile.args. Так что в командной строке необходимо указание языковых параметров на каждую карту в отдельности.

Да знаю я. Я про то, что сначала указываем куда, потом опции (что с файлами делать), потом файлы OSM далее дескриптион и gmapsupp и в конце TYP вот и вся командная строка или optionsfile.args. У меня тоже один optionsfile.args, только вписывается в него и добавляется информация автоматом. Есть же переменные, оператор IF, перенаправление вывода. Запустил один файл и данные обновляются, на территории разбиваются и т.д. все карты собираются, а ты в это время на рыбалке :slight_smile: