AMDmi3
1
В рамках экспериментов с alaCarte (http://shtosm.ru/all/alacarte/#comments) накидал очередной стиль для walking papers с покером и куртизанками, возможно кому-то пригодится.
В двух словах - контрастный чёрно-белый стиль пригодный для печати, не перегруженный подписями и пестротой, выделяющий объекты, требующие внимания и годный для рисования относительно существующих объектов (дворовые проезды, например). Затачивал под себя, поэтому присутствуют элементы задротства (типа подъездов).
Начнём со скринов. Город: тёмные здания “готовы” - на них есть адрес и building:levels, есть POI: чёрные кружки банально значат что “тут что-то уже отмечено”, белые - не хватает информации (магазины без opening_hours, остановки без route_ref, подъезды без номеров квартир). Пачку POI сверху различить невозможно, но это и не нужно, потому что понятно что нужно уточнить весь ряд.

Сельскость: обрисовано зимой по BING, почти ничего кроме геометрий нет: белые дома требуют адресов и этажности, белые точки требуют всего подряд, слева внизу видно инвертированный номер дома - такое значит что на нём нет ни addr:street ни addr:place.

Подробное описание:
- для удобства чтения карты и сравнения с местностью в фоновом слое
бледно-серым заливаются landuse, площадные amenity и немного темнее
природные объекты (лес, вода), а также тонко рисуются линейные
barrier и рельсы
- основные улицы (выше service) рисуются жирно, в идеале чтобы
вместить названия, значки ограничений и препятствий типа лежачих
полицейских
- service рисуются тонко чтобы не загружать карту и “быть совместимыми”
с нарисованными карандашом/ручкой недостающими проездами
- path, footway, steps, track рисуются различными пунктирами
- здания заливаются одним из трёх цветов:
- тёмным - “готовые” здания с addr:housenumber и building:levels
тёмный как-бы намекает нам что на нём рисовать ничего не нужно
(в то же время он не слишком тёмный чтобы тратить лишний тонер
и мешать прочим пометкам)
- светлее - здания с building:levels, но без адреса
намекает что нужен адрес, но ненавязчиво, так как адрес может быть
на точке (сельская местность) либо на другой части здания
- почти белым - здания без building:levels
этажи почти всегда можно добавить, и в “неокученных” районах
скорее всего означает что на доме нет никакой информации
- адреса рисуются везде где они есть, полупрозрачно (чтобы быть
читаемыми, но не закрывать подробности)
- адреса без и addr:street и addr:place рисуются инвертированно
(белом на чёрном), что должно намекать на необходимость уточнения
- чёрными точками рисуются различные POI (amenity, shop, craft,
автобусные остановки, подъезды, лежачие полицейские и переходы).
Основная задача - показать что объект нанесён на карту
- белыми точками рисуются объекты, требующие дополнительной
информации. Это, например, POI без opening_hours, остановки без
route_ref, historic без name, подъезды без номеров квартир
(addr:flats)
- подписи к POI не рисуются. С ними карта будет перегружена и не
сильно подойдёт в качестве путевого листа
- fixme точки рисуются жирными белыми, fixme линии рисуются со
штрих-пунктирным кортуром (не слишком наглядно, но лучше не придумал)
Репозиторий: https://github.com/AMDmi3/walking-papers.mapcss
Надо у вас этот стиль ку.
Круть. Логика очень нравится
loir
5
Так, глядишь, и маперитив больше не понадобится.
Zverik
(Ilya Zverev)
6
Осталось понять, как его эффективно печатать.
AHTOH
(Антон)
7
А мне нра… Особенно подъезды.
Порой встречаются такие с право на лево
AMDmi3
8
vvoovv советовал всякие bigmap (https://wiki.openstreetmap.org/wiki/Bigmap) аналоги, сейчас буду посмотреть http://ruessel.in-chemnitz.de/osm/qbigmap
С подъездами встречается вообще всё. Я теперь точно понял что с интерполяцией подъездов и адресов нужно быть очень осторожным, ибо повсеместно последовательность адресов типа “1 ? ? 7” (есть не все таблички) оказывается какой-нибудь “1 1A 1Г 7” вместо “1 3 5 7”, а с подъездами возможно такое: http://www.openstreetmap.org/browse/way/36447862 (четырёхэтажка, 4 подъезда, в 1-м 11 квартир, во втором 13, в 4-м 15; на 3-м таблички нет, и я даже боюсь ставить туда очевидный промежуток). source=interpolation в таких случаях всегда обязательна.
Zverik
(Ilya Zverev)
9
Я имел в виду с самого начала, как делать тайлы. Не посоветуешь же новичкам поставить alaCarte, вогнать в него выгрузку города, поставить скрипт bigmap, сделать из тайлов картинку и затем отправить на печать.
AMDmi3
10
Так для начала самому бы научиться. А для новичков потом можно будет поднять сервис который всё делает сам.
В alaCarte, к слову, по идее можно добавить поддержку рендеринга сразу нужного куска без разрезов.
Все, первый канал теперь будет юзать этот стиль
Ну у у, я прототип генератора атласа написал, он пока многого не умеет, но пдфку по шаблону страницы карты и масштабу генерит.
Nikolya
(Николай)
15
AMDmi3
16
stamen color не сильно подходит для walking papers - как минимум, там есть не все здания, нет 17+ зумов и он не обновляется.
Хотя на mapcss написать его аналог по идее не сложно. Можно попробовать для тренировки.
Удалось скомпилить импортёр, но он выдает десяток другой
[WARN] [Importer] Bad osm id[182040232]. Entity is skipped!
Насколько это нормально ?
AMDmi3
18
Скорее всего в исходном дампе нет некоторых нод, упомянутых в веях. Можно игнорировать.
Неполные way-и можно автоматом прибить при помощи osmosis, ключ --bb clipIncompleteEntities=true