Картостиль veloroad для печати маршрутов

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

В помощь тем, кто начал расставлять surface: http://osmz.ru/surface.html
Дороги от secondary и выше. Синий — необычные значения, они подписаны.

Здравствуйте!
Поднял аналог Вашего http://tile.osmz.ru/get/ на виртуалке. С osm стилями все ок (экспорт работает). А вот при использовании Вашего стиля veloroad возникает проблема в момент экспорта сгенерированных тайлов в png,svg,pdf посредством nik4.py
Все время выскакивает такая ошибка при передаче параметров:


Traceback (most recent call last):
  File "./nik4.py", line 313, in <module>
    mapnik.load_map_from_string(m, style_xml, False, style_path)
mapnik.load_map_from_string(m, style_xml, False, style_path)
RuntimeError: ERROR:  column "living_street" does not exist
LINE 1: SELECT * FROM (select way, highway,(case when living_street ...
                                                        ^
Full sql was: 'SELECT * FROM (select way, highway,(case when living_street is not null or service is not null then 1 else 0 end) as service from planet_osm_line where highway in ('path', 'cycleway', 'footway', 'service', 'track','pedestrian','living_street','residential', 'unclassified', 'tertiary', 'secondary', 'primary', 'trunk', 'motorway', 'tertiary_link', 'secondary_link', 'primary_link', 'trunk_link', 'motorway_link') and tunnel in ('yes', 'true', '1') order by z_order) as tunnels LIMIT 0'
  encountered during parsing of layer 'tunnels' in Layer at line 762

Действительно, в бд такой колонки нет.
Объясните ,пожалуйста, лучше подправить бд, или стиль? Если стиль, то где правильно править этот SQL запрос - в готовом xml файле или в исходниках из которых carto xml собирает? Как лучше избавиться от этого hardcode-а?

При загрузке данных в базу нужно использовать veloroad.style (он подходит и для обычного стиля osm).

Перезалил данные в базу используя Ваш стиль и все заработало. Спасибо!

На прошедшем мероприятии узнал, что оказывается на https://github.com/Zverik/veloroad лежит проект для tilemill.
Положил, импортировал базу с нужным стилем, скачал скриптом шейпы, открываю -

Все эти свойства в стиле есть. Очень странно. Шрифты PT Sans у тебя установлены? Каталог icons присутствует?

Шрифты установлены, каталог icons есть.
Почему-то установился millstone, который не ставился полтора месяца назад, но при запуске мапника с сгенерированным в carto стилем выдаётся
“RuntimeError: Unknown child node in ‘Map’: ‘Parameters’”

Попробую на чистую Ubuntu Server поставить PostGIS/osm2pgsql/tilemill, и повторить там.

Развернул всё на Ubuntu Desktop 14.04
Теперь при открытии проекта tilemill вываливается

[tilemill] [millstone] processing layer 'route'
[tilemill] [millstone] finished processing '/home/trolleway/Documents/MapBox/project/veloroad'
[tilemill] Error: child process: "tile" failed with signal "SIGSEGV"
[tilemill] Closing child process: core (pid:5365)
[tilemill] Closing child process: tile (pid:5367)
[tilemill] Closing child process: client (pid:5377)
Exiting [tilemill]

segfault? это что-то новое :slight_smile:

Аналогично, tilemill на убунте не удалось вылечить от сегфолтов даже пересборкой почти всего.

Долго плясал с бубном - развернул tilemill на винде, пробросил postgres из виртуалки в винду - тот же глюк с непонятными ошибками в стиле. Непонятно.

Я кажется понял в чём дело. Стиль использует операторы CartoCSS, которые работают в tilemill только с версии 0.10.2, а у них на сайте бинарники 0.10.1

Нет, у меня 0.10.1.

Итак, у меня полтора месяца не разворачивался стиль veloroad, но я нашёл в чём дело. Он работает с версиями tilemill >=0.10.2, а стабильная версия сейчас - 0.10.1 Я взял dev-бинарник на странице https://www.mapbox.com/blog/tilemill-adds-support-for-esri-filegdb-format/, и теперь наслаждаюсь рендерами Сахалина вместе с Северной Кореей.

Привет.
Я упаковал get veloroad в контейнер Docker.
В сборке настроены
Postgresq, Postgis, Mapnik, Apache2, mod_tile, renderd, osm2pgsql, carto и Nik4
Тоесть теперь если вы хотите поднять на VDS или на локальной машине стек рендеринга осм но не хотите тратить 2 дня на установку и настройку, достаточно проделать установить Docker, сделать pull образа https://registry.hub.docker.com/u/dkiselev/nik4web/ и запустить контейнер


sudo apt-get install docker.io
sudo docker pull dkiselev/nik4web
sudo docker run -p 8081:80 -i -t dkiselev/nik4web /bin/bash
startup

После чего, если вы зайдете по адресу localhost:8081/nik4 - вы получите локальную копию http://tile.osmz.ru/get/ с загруженой свердловской областью.

Само по себе это безусловно не достижение, но теперь вы можете редактировать стиль (установлены openstreetmap-carto и veloroad) и легко получать свгшки с отредактированным стилем. Можете загрузить нужную вам область, если ее нет на http://tile.osmz.ru/get/ При этом в основной рабочей системе у вас не болтаются apache, mod_tile и остальные элементы стека рендеринга.

  • Секономленное на установке и настройке мапника и сотоварищей время можно потратить на свой собственный стиль.

Вот за это просто громадное спасибо!

присоединяюсь к предыдущему оратору! спасибо!

Проверьте в начале, все ли работает :slight_smile:

как минимум запускается