Статьи

Как выходить за рамки в QGIS – дайте свободу объектам на карте!

Картография Туториалы
Время прочтения: 6 минут
null
Карта острова Борнео с краями, выходящими за рамку
Давайте посмотрим на эту карту Южной Америки. Заметьте, как ее южная часть выходит за рамку:
null
Источник: Tablespace
Если присмотреться к старым картам, такое встречается часто. Например, эта геологическая карта Европы XX века заступает за рамку в нескольких местах:
null
Источник: Wikimedia
Можно уместить объекты внутри четких границ, а можно не загонять себя в рамки и добавить на карту новый, но как будто давно знакомый эффект. Этот прием придаст карте исторический вид и сделает привычные формы оригинальнее.
В видео "Smash Neatlines" картограф Джон Нельсон показал, как выйти за рамки при работе в ArcGIS, но наша статья отличается от его подхода, потому что работа с макетом в QGIS устроена по-другому – мы коснемся режимов смешивания и внезапных багов.
Что есть в этом туториале?
  • использование открытых стилей от Stamen в QGIS;
  • выход за рамки с помощью инструмента отсечения ("Clipping");
  • использование текстур в макете QGIS.
А почему бы не сделать этот эффект в графическом редакторе?
Да, по сравнению с фотошопом возможности QGIS ограничены, но красивую карту можно сделать и здесь. Это позволит добавлять новые данные в проект, не меняя оформление по несколько раз после экспорта.
Но в конце по желанию можно отшлифовать элементы и вне QGIS.
Начнем!
Шаг 1. Выбираем карту, которая будет выходить за рамки
Для примера добавим в проект карту Stamen Terrain, используя плагин OpenMapServices – готовое решение, с которым приятно работать. Как и Джон Нельсон, я выбираю остров, только в моем случае это не Исландия, а Борнео. Здесь выход за границы имеет дополнительный смысл – это поможет сделать карту менее вытянутой по вертикали.
На этом моменте в свойствах слоя Stamen Terrain я добавляю яркость, но пока не смотрю на оформление – им займемся позже.
Открываем макет и вставляем нашу карту:
null
Карта острова в самом начале работы – вид в макете, QGIS 3.26
Шаг 2. Рисуем рамку, за которую будем выходить
Добавляю сетку – она поможет при совмещении. Чтобы эффект был виднее, сделаем саму рамку заметной. Для этого проекта выбираю две стандартные рамки в параметрах Макета QGIS – линию и зебру. В этом туториале я не делаю идеальную карту, а смотрю, что предлагает оформление, поэтому многие параметры оставляю стандартными.
null
null
В параметре "Цвета заливки" у рамки-зебры меняю цвет с черного на темно-синий, чтобы выглядело менее резко
Шаг 3. Дублируем нашу карту и убираем у копии рамку
Делаю копию карты, выставляя в ней тот же масштаб, что и в оригинальной карте. Только меняю границы, чтобы теперь на карте остров помещался целиком:
null
Карта с рамкой, а поверх – карта всего острова без рамки
null
Уменьшаю у копии непрозрачность – это помогает при наложении
Шаг 4. Выступающие элементы карты
Cамое интересное – добавляю полигон той формы, которая будет заступать за рамку.
null
Так добавляем полигон
null
Делаю полигон полупрозрачным и довожу его форму до нужной с помощью редактирования узлов (на боковой панели).
Теперь смотрим в свойства копии карты:
null
Настройки отсечения в свойствах карты (или "Clipping Settings")
null
В поле "Отсечь по элементу" выбираем полигон
Содержимое карты вне этого полигона исчезает. Кстати, таким же образом в QGIS можно сделать круглую или треугольную карту.
null
То же самое делаем для других выступающих частей, но можно сделать и одну маску для всех выступов
Сетка выступающих частей осталась вне полигона – маскирую ее с помощью режима смешивания "Затемнение" и радуюсь, что все получилось. Карта выглядит так, как нужно.
null
У сеток выступающих частей меняю режим смешивания ("Blending mode")
Шаг 5. Дополнительное оформление
Скачиваю текстуру бумаги от Olga Thelavart – изображения с сайта Unsplash можно использовать в любых проектах.
null
Добавляю изображение текстуры поверх объектов, повышаю прозрачность и меняю режимы смешивания, пока результат не понравится
Возвращаюсь к своему проекту и меняю настройки яркости, контраста и тонировки слоя Stamen Terrain – вот в таких случаях и полезно делать оформление в макете.
null
Новые настройки стиля
Добавляю в пустой угол текст шрифтом Harlow Solid Italic, чтобы сделать мою экспериментальную мини-карту веселее. Экспортирую изображение и удивляюсь тому, что на нем снова появилась сетка. Странно, не так ли? Долго не могу понять, что же не так.
null
Оказывается, сейчас есть баг – при отсечении по маске не работают режимы смешивания… Когда он будет исправлен, на этом шаге карта будет готова.
Можно оставить без сетки:
null
Результат экспериментов в QGIS
Но если сетка нужна, оставляем ее на главной карте и дорисовываем на выступающих элементах в графическом редакторе.
Шаг 6. Доработка в графическом редакторе
Если мы уже открыли графический редактор, то можно сделать карту еще органичнее. Меня беспокоили резкие края и в оригинальном туториале, поэтому применяю размытие для резких границ и добавляю сетку там, где ее не хватает.
null
Здесь я убираю текстуру, чтобы применить размытие по Гауссу и добавить недостающую сетку, а потом снова накладываю текстуру поверх
null
Текстура могла быть побледнее, но в этом эксперименте мне слишком понравилась грубая бумага
Эффект можно использовать и в современных картах, оформленных под винтажную эстетику – например, он дважды встречается на этой карте французского журналиста Xemartin Laborde:
null