Настройка векторных стилей#

Картостиль - это описание цветов, текстур, значков, толщины линий, подписей и прочих особенностей отображения слоёв на экране. Эти настройки хранятся отдельно от географических данных, их можно сохранять в отдельные файлы и копировать между слоями. Настройка осуществляется через Слой Свойства слоя Стиль или Слой Свойства слоя Подписи. Для каждого слоя задаётся отдельное стилевое оформление.

Настройка стиля векторных слоёв#

В описании стиля векторного слоя используется 3 типа символов:

  1. Тип символов.

  2. Тип символьного слоя.

  3. Тип классификации.

  • Тип символа - символы различаются по типу: для точечных, линейных и полигональных слоёв символы различаются. Это не изменяется. Сами символы могут состоять из одного или нескольких символьных слоёв.

../../_images/ngq_styles_types.png

Рис. 1229. Примеры символов для точечных, линейных и полигональных слоёв.#

  • Тип символьного слоя - задаёт способ заливки: цветом, штриховкой, SVG, маркерами, или способ рисования линии: пунктирная линия, линия из маркеров.

../../_images/styles_layer_type_point_ru.png
../../_images/styles_layer_type_line_ru.png
../../_images/styles_layer_type_polygon_ru.png

Рис. 1230. Варианты типов символьного слоя доступные для точечных, линейных и полигональных слоёв.#

  • Тип классификации - задаёт способ, как рисовать разные символы для разных объектов в одном слое: все одинаково или по-разному.

../../_images/styles_type3_ru.png

Рис. 1231. Варианты типов классификации#

Для настройки стиля выделите нужный стиль в списке слоёв, и откройте окно настройки стиля: Слой Свойства слоя Стиль.

../../_images/styles_stylewindow_simple_ru.png

Рис. 1232. Окно настройки стиля в режиме классификации Обычный знак, которое открывается по умолчанию.#

Цифрами обозначено: 1. Список типов классификации. 2. Изображение знака. 3. Список символьных слоёв в текущем символе. 4. Кнопки добавления-удаления символьных слоёв. 5. Параметры знака. 6. Библиотека знаков.

Если в списке символьных слоёв выбрать один слой, то появится окно настроек символа. Его вид будет разным в зависимости от выбранного типа символьного слоя.

../../_images/styles_stylewindow_fill_simple_ru.png

Рис. 1233. Окно настроек символа#

Доступные типы символьных слоёв#

  • Для точечных слоёв:

    • Эллипс: отрисовка с использованием геометрических примитивов (эллипс, прямоугольник, треугольник, перекрестие).

    • Маркер с заливкой: маркер представляет собой фигуру, имеющую контур и заливку (цвет, градиент, штриховка и т.п.).

    • Шрифтовой маркер: отрисовка с использованием определенного символа заданного шрифта.

    • Генератор геометрии: при помощи синтаксических выражений позволяет генерировать геометрию в процессе отрисовки.

    • Маска: используется для улучшения читаемости маркеров нескольких слоев, близких по цвету.

    • Растровый маркер: позволяет использовать в качестве маркера растровое изображение.

    • Простой маркер: (по умолчанию) отрисовка с использованием одного из предустановленных маркеров.

    • SVG маркер: отрисовка с использованием SVG изображения.

    • Маркер векторного поля: отрисовка векторным полем с использованием значений атрибутивной таблицы.

  • Для линейных слоёв:

    • Стрелка: добавляет элементы оформления, например, стрелку для указания направления линии.

    • Генератор геометрии: при помощи синтаксических выражений позволяет генерировать геометрию в процессе отрисовки.

    • Штрихи вдоль линии: линия отрисовывается повторяющимися короткими отрезками, перпендикулярными ее направлению.

    • Интерполированная линия: от одного конца линии к другому меняются ее толщина (или размер составляющих ее маркеров) и цвет.

    • Линия с градиентной заливкой: переход цвета перпендикулярно направлению линии.

    • Маркерная линия: отрисовка линии повторением маркерного символа.

    • Линия из растров: отрисовка линии повторением растрового изображения.

    • Простая линия: обычная отрисовка линии (с указанными шириной, цветом и стилем).

  • Для полигональных слоёв:

    • Отрисовка центроидов: отрисовка центроида полигона при помощи одного из предустановленных маркеров.

    • Генератор геометрии: при помощи синтаксических выражений позволяет генерировать геометрию в процессе отрисовки.

    • Градиентная заливка

    • Заливка штриховкой: заливка полигона линейной штриховкой.

    • Заливка точками: заливка полигона регулярно расположенными точками заданного вида.

    • Заливка маркерами со случайным размещением: заливка полигона заданными маркерами, разбросанными случайным образом.

    • Заливка растром: использование растрового изображения для заливки.

    • Заливка SVG узором: Заливка полигона SVG изображением.

    • Заливка градиентом из центра

    • Простая заливка: обычная отрисовка полигона (с определенным цветом заливки, шаблоном заливки и контуром).

    • Обводка: Стрелка: добавляет элементы оформления (например, кружки) к контуру полигона.

    • Обводка: Штрихи вдоль линии: контур отрисовывается повторяющимися короткими отрезками, перпендикулярными ее направлению.

    • Обводка: Интерполированная линия: от одного конца линии к другому меняются ее толщина (или размер составляющих ее маркеров) и цвет.

    • Обводка: Линия с градиентной заливкой: переход цвета перпендикулярно направлению контура.

    • Обводка: Маркерная линия: контур отрисовывается путем повторения маркерного символа.

    • Обводка: Линия из растров: отрисовка контура повторением растрового изображения.

    • Обводка: простая линия: обычная отрисовка контура (с указанными шириной, цветом и стилем).

Доступные типы классификации слоев#

Возможные типы классификации слоев зависят от типа геометрии слоя.

Для слоев с любой геометрией доступны следующие типы:

  • Без отрисовки

  • Простая символика (по умолчанию)

  • Символизация по уникальным значениям

  • Символизация по диапазонам значений

  • Символизация на основе правил

  • Встроенные символы (для слоев, содержащих встроенные стили)

Только для слоев с точками доступны помимо того:

  • Смещение накладывающихся точек

  • Кластеризация точек

  • Тепловая карта

Для слоев с линиями доступна также:

  • Символизация с автоматическим объединением объектов

Для слоев с полигонами доступны также:

  • Символизация с автоматическим объединением объектов

  • Инвертированные полигоны

  • 2.5 D

Простая символика#

Используется для отрисовки всех элементов слоя с использованием одного, определенного пользователем, символа. Свойства, которые можно задать во вкладке «Стиль», частично зависят от типа слоя.

../../_images/dialogue_rendering_simple_values_ru.png

Рис. 1234. Диалог отрисовки обычным знаком#

Используемый знак или тип заливки может быть многоуровневым и состоять из комбинации разных элементов.

Пример комбинированной заливки

Задача: создать заливку полигона полосами двух цветов.

  1. Нажмите на зеленый знак плюса справа и добавьте к простой заливке заливку штриховкой.

  2. Задайте желаемый цвет и толщину линии штриховки.

../../_images/stripes_settings_width_ru.png

Рис. 1235. Параметры линии, используемой в штриховке#

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

../../_images/stripes_settings_offset_ru.png

Рис. 1236. Параметры штриховки#

../../_images/stripes_result.png

Рис. 1237. Получившаяся заливка с полосами двух цветов#

Символизация по уникальным значениям#

Объекты с разным значением какого-нибудь атрибута рисуются разными цветами.

Отрисовка уникальными значениями используется для отрисовки всех элементов слоя единым, определенным пользователем, символом, цвет которого отражает значение выбранного атрибута элемента. Вкладка «Стиль» позволяет выбрать:

  1. Поле (в списке полей).

  2. Знак (в диалоге Выбор условного знака).

  3. Градиент (в списке цветовых шкал).

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

../../_images/dialogue_rendering_unique_values_ru.png

Рис. 1238. Диалог отрисовки уникальными значениями#

Можно создавать свои градиенты, выбрав «Новый градиент» из выпадающего списка «Градиент». В появившемся окне можно выбрать тип градиента: «Градиент», «Случайный» или «ColorBrewer», для каждого из которых можно задать желаемое количество цветов.

Символизация по диапазонам значений#

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

../../_images/graduated_mark_ru.png

Рис. 1239. Фрагмент диалога свойств слоя - Градуированный знак#

Символизация на основе правил#

Используется для отрисовки всех элементов слоя с помощью символов, базирующихся на определенных правилах. Задаётся несколько выражений/правил. Каждое выражение выдаёт несколько записей и оформляется по-своему. Может быть разным не только цвет, но и другие параметры.

../../_images/style_rule_line_ru.png

Рис. 1240. Фрагмент диалога свойств слоя - Символизация на основе правил#

Смещение накладывающихся точек#

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

../../_images/styles_point_offset.png

Рис. 1241. Фрагмент карты после применения стиля «Смещение накладывающихся точек»#

Кластеризация точек#

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

../../_images/styles_point_cluster_ru.png

Рис. 1242. Фрагмент карты после применения стиля «Кластеризация точек»#

Тепловая карта#

Вся карта заливается фоновым цветом (можно сделать прозрачным). Вокруг каждой точки рисуется размытый круг, если рядом много точек, то круг более насыщенный.

../../_images/styles_heatmap_00.png

Рис. 1243. Исходные точки#

../../_images/styles_heatmap_01.png

Рис. 1244. Теплокарта с настройками по умолчанию#

Параметры теплокарты можно настроить в свойствах слоя.

../../_images/styles_heatmap_dialog_ru.png

Рис. 1245. Настройки теплокарты#

В настройках градиента можно выбрать свои цвета, в том числе прозрачный.

../../_images/styles_heatmap_02_owngradient.png

Рис. 1246. Свой градиент#

../../_images/styles_heatmap_03_gradienttransparent.png

Рис. 1247. Градиент, начинающийся с прозрачного цвета#

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

../../_images/heatmap_discrete_ru.png

Рис. 1248. Дискретный градиент#

Качество отрисовки обозначает размер пикселей.

../../_images/styles_heatmap_04_quick.png

Рис. 1249. Самый быстрый#

../../_images/styles_heatmap_05_quality.png

Рис. 1250. Самый качественный#

../../_images/styles_heatmap_06_discret-quality.png

Рис. 1251. Дискретный градиент - качественный#

../../_images/styles_heatmap_07_discret-quick.png

Рис. 1252. Дискретный градиент - быстрый#

../../_images/styles_heatmap_08_bigradius.png

Рис. 1253. Средний радиус#

../../_images/styles_heatmap_09_smallradius.png

Рис. 1254. Радиус увеличен#

../../_images/styles_heatmap_10_radiusverybig.png

Рис. 1255. Радиус уменьшен#

../../_images/styles_heatmap_11_maxvalueauto.png

Рис. 1256. Максимальное значение - авто#

../../_images/styles_heatmap_11_maxvaluelow.png

Рис. 1257. Максимальное значение занижено#

../../_images/styles_heatmap_13_complexgradient.png

Рис. 1258. Сложный градиент с промежуточными цветами.#

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

../../_images/styles_heatmap_14_weightauto.png

Рис. 1259. Взвешивание - автоматическое. Интенсивность обозначает концентрацию точек.#

../../_images/styles_heatmap_15_weightattr.png

Рис. 1260. Взвешивение - по атрибуту (количество мест). Интенсивность обозначает суммарное количество мест в заведениях.#

Символизация с автоматическим объединением объектов#

Доступна для полигональных и линейных слоев. Соприкасающиеся объекты объединяются и отрисовываются как один.

../../_images/styles_all_outlies_ru.png

Рис. 1261. Обычный стиль: показаны границы районов#

../../_images/styles_merged_ru.png

Рис. 1262. Автоматическое объединение объектов: показана только общая внешняя граница города#

Инвертированные полигоны#

Только для полигональных слоёв. При использовании данного стиля (вкладка «Свойства слоя ‣ Стиль») происходит заливка цветом областей за пределами полигона (снаружи полигона), сам полигон остается прозрачным.

../../_images/styles_inverted_polygons.png

Рис. 1263. Фрагмент карты До и После применения стиля «Инвертированные полигоны».#

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

Посмотреть видео на youtube, rutube.

2.5 D#

Доступно только для полигональных слоев. Представляет полигоны как имеющие определенную толщину, с видимой сбоку «стенкой». Можно задать цвет и прозрачность «крыши» и «стенки» объемного полигона.

../../_images/style_2point5D_ru.png

Рис. 1264. Районы города отрисованы в режиме 2.5D#

Рисование своих условных обозначений в SVG#

SVG - открытый формат для векторных картинок, внутри него XML, описывающий линии и фигуры.

Большая коллекция значков в SVG есть на Wikimedia Commons - https://commons.wikimedia.org/wiki/Category:SVG_icons, туда можно добавлять и свои. Если вам, например, нужен логотип известной организации, то возможно он там есть.

Чтобы использовать такой маркер, в QGIS в настройках SVG-маркера в выпадающем меню выберите «Из URL» и вставьте ссылку на файл. Этот же стиль можно использовать и в NextGIS Web.

../../_images/style_SVG_URL_ru.png

Рис. 1265. Добавление SVG-маркера по ссылке#

Если вам нужны специальные значки, то вы можете нарисовать их сами. Картинки в формате SVG рисуются в Inkscape, CorelDRAW. Также эти файлы можно писать вручную: http://svgpocketguide.com/book/

Для добавления своего значка в стиль QGIS или в стиль для слоя NextGIS Web есть следующие варианты:

  1. Встроить файл в стиль.

В QGIS в настройках SVG-маркера в выпадающем меню выберите «Встроить файл». Затем сохраните стиль. Значок будет встроен в него в виде стандартной строки base64.

../../_images/style_SVG_embed_ru.png

Рис. 1266. Встраивание значка в стиль#

Если вы работаете только в QGIS, без nextgis.com, то можно использовать путь к файлу на жёстком диске, но это менее надёжно, потому что вы можете о нём забыть, перенести файл значка, и стиль перестанет рисоваться.

В ранее созданные стили, где указан путь к файлам на жёстком диске, значки SVG можно встроить пакетно с помощью инструмента NextGIS Toolbox.

  1. Добавить маркер через библиотеку маркеров SVG в своей Веб ГИС.

  2. Разместить файл в интернете и поставить его URL в качестве пути к значку SVG.

Если ваш значок не нарушает авторских прав, можно поместить его на https://commons.wikimedia.org, чтобы его могли использовать другие люди. Также можно положить файл в свой репозиторий на github или gitlab.

../../_images/webmap_svg_ru.png

Рис. 1267. Пример использования кастомизированного значка#

Эффекты отрисовки#

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

../../_images/styles_effects.png

Рис. 1268. Фрагмент карты с различными отрисовками#

Сохранение стиля#

Стиль можно сохранить в файл. В нём сохранится настройки оформления и настройки подписей.

../../_images/styles_save_ru.png

Рис. 1269. Диалог сохранения стиля#

В окне свойства стиля нажмите на кнопку «Стиль».

По нажатию на кнопку «Сохранить настройки по умолчанию» стиль сохранится в формате QML в каталоге, где лежит слой, с тем же названием. Теперь, если вы будете добавлять этот слой как новый, то NextGIS QGIS подхватит этот стиль.

Пункт «Сохранить стиль» - позволяет сохранить его в другой файл, а так же в формат SLD.