Для каждой группы (класса) однотипных объектов создается отдельный векторный слой. Количество объектов, данные о местоположении и конфигурации которых будут храниться в каждом слое мы выбираем сами, от одного объекта до бесконечности.
Информация о каждом слое сохраняется в отдельный файл с расширением .shp, «шейп-файл».
Создадим векторный слой: Главное меню / слой / создать / создать shape-файл
Появляется диалоговое окно, в котором нужно выбрать тип файла (точка/линия/полигон) и указать атрибуты, которые мы хотим заполнять в атрибутивную таблицу непосредственно при создании объекта на карте (окно «добавить атрибут»). При добавлении атрибута в атрибутивной таблице создается столбец, название которого мы ввели в окошко «имя»…
Обязательным является только атрибут ID, это уникальный идентификатор, по которому ГИС распознает каждый объект в реляционной базе данных… (В реляционной структуре БД данные хранятся как упорядоченные записи значений атрибутов, организованы в виде связанных таблиц. Реляционное соединение происходит по равенству значений колонки первой таблицы, называемой первичным ключом с другой колонкой второй таблицы, называемой внешним ключом. Первичный ключ содержит только уникальные значения и является уникальным идентификатором для записей в таблице).
СОЗДАНИЕ КАРТЫ В ГЕОИНФОРМАЦИОННОЙ СРЕДЕ QGIS
При нажатии кнопки «Ok» появляется диалоговое окно для сохранения нашего нового слоя.
Тут нужно указать директорию, в которой будет храниться информация о данном слое и имя файла.
Для выполнения ландшафтного анализа нам нужно создать полигоны, соответствующие площадям всех таксационных выделов и заполнить таксационное описание в атрибутивную таблицу.
Создадим полигональный слой.
Когда мы выбрали все необходимые параметры и сохранили новый слой, он появится в легенде карты.
В «установках» главного меню настраиваем параметры прилипания для слоя:
«предотвращать пересечение» — при создании нового полигона в случае наложения его на уже существующий, часть нового полигона, попадающая в наложение, будет исключена.
«топологическое редактирование» — если его включить, при перемещении вершины, принадлежащей одновременно нескольким объектам (полигонам или линиям), их геометрия изменится в соответствии с новым положением перемещенной вершины. Если топологическое редактирование отключено, то изменения коснутся только одного объекта, могут образоваться «дырки» между полигонами.
Включаем «предотвращать пересечение» и «топологическое редактирование».
В панели инструментов нужно будет включить режим редактирования (желтый карандашик), позволяющий создавать и изменять объекты данного слоя.
Когда слой находится в режиме редактирования, в панели инструментов становятся активны кнопки для создания и редактирования объектов.
Выберем кнопку «добавить объект»
Полигон создается путем указания узловых точек границы объекта одинарными левыми кликами. Завершить создание полигона можно правым кликом. В том месте, куда мы кликнем правой кнопкой мыши точка не будет создана.
QGIS 2 — № 8. Создание векторных слоев
Когда мы обозначили весь контур полигона и щелкнули правой кнопкой мыши, появится диалоговое окно, в котором нужно указать ID объекта. Обычно это просто номер, отличающийся от всех номеров объектов в данном слое.
Когда объект создан и сохранен, его можно перемещать, поворачивать, «вырезать в нем дырочки» или добавлять к нему кусочки на некотором расстоянии (отдельные полигоны), удалять части объектов и целые объекты, разрезать и соединять полигоны…
Все точки обозначаются щелчком левой кнопкой мыши, завершение действия – правой кнопкой мыши.
Когда все необходимые действия выполнены, нужно завершить режим редактирования слоя, нажав кнопочку в панели инструментов или через Главное меню / слой / режим редактирования.
Запускаем полигональный слой на редактирование и создаем объект, точно соответствующий площади всего участка (всего квартала), с которым мы будем работать. Сохраняем изменения, завершаем редактирование.
В контекстном меню (с правого клика) или во вкладке «слой» главного меню выбираем «сохранить как» — и сохраняем наш слой под новым именем, отдельным файлом. Это нужно, чтобы у нас были резервные копии сделанной работы, если вдруг мы что то потеряем при дальнейшей работе…
Обязательно указываем для сохранения ту директорию, в которой хранится весь проект. Сохраняемый слой назовем «квартал».
Вернемся к нашему полигону и разделим его на выделы (инструменты «разбить объекты» и «заполнить кольцо»).
/// Если при создании полигонов творится какая то фигня, и ничего не получается, нужно пошарить в Главное меню / установки / параметры прилипания…
Для каждого слоя можно настроить его отображение через диалоговое окно «свойства слоя», которое можно вызвать двойным кликом по слою в легенде карты или через Главное меню / слой / свойства…
Когда все настроим, нужно нажать кнопку «применить» — тогда новые настройки сразу отобразятся на карте.
Работа со стилями векторных слоев в QGIS.
Чтобы разобраться со стилями, потренируемся на точечных объектах…
Создадим точечный векторный слой, в котором можно указать на карте местоположение малых архитектурных форм (скамейки, урны, аншлаги и т.п.): Главное меню / слой / создать / создать shape-файл; выберем тип файла «точка». Там же в диалоговом окне нового векторного слоя добавим атрибут «тип», чтобы сразу при нанесении на план нашего объекта указывать с клавиатуры, что это – скамейка, урна или что то еще. Тип атрибута пусть будет текстовый, размер – 30 символов. Щелкнем кнопку «добавить» — поле появится в списке. Сохраним новый слой как файл «МАФ» в папке, где хранится наш проект.
Выберем в легенде карты (диспетчере слоев) точечный слой, запустим его на редактирование и создадим несколько «маф», присваивая каждой уникальный ID и какой-нибудь тип. Пусть будет 3 – 4 разных типа: скамейки, урны, аншлаги, скульптуры…
Завершим редактирование и сохраним изменения в файле.
Все точечные объекты выглядят одинаково.
Настроим стиль длы МАФ:
В выпадающем списочке, где по умолчанию стоит «обычный знак», выберем «уникальные значения», и укажем поле, по которому будут определяться оригинальные обозначения, это будет наше поле «тип». Слева внизу щелкнем кнопочку «классифицировать». В таблице для каждого значения нашего поля «вид» появится отдельный знак.
По двойному клику на каждом отдельном знаке (в каждой строчке) появляется диалоговое окно настройки условного знака. Настроим размер, цвет и форму знаков для каждого типа МАФ. Условные знаки могут состоять из нескольких слоев, каждый из которых можно настроить отдельно.
Нажмем кнопку «применить», и все точки будут отображаться в соответствии со своим «типом».
Справа внизу диалогового окна настройки свойств стиля есть кнопочка «сохранить стиль».
В ней 2 варианта, нам нужен тот, который «файлы стилей QGIS».
Даем нашему стилю имя, отражающее его назначение («Типы_МАФ», например), сохраняем. В нашей папке появится файл с расширением «.qml».
Создадим в нашем проекте еще один точечный слой, также сразу добавим ему атрибут «вид» и сохраним под именем «плюсовые деревья». Запустим новый слой на редактирование и присвоим создаваемым точкам такие же виды, которые встречаются у первого точечного слоя. Сохраним изменения. Все точки второго слоя одинаковые…
Откроем диалоговое окно настройки стиля в свойствах нового слоя, слева внизу есть кнопочка «загрузить стиль». Загрузим стиль, сохраненный для первого точечного слоя, применим его… Что получилось? Как мы это отследим?
Аналогичным образом можно сохранять и применять настроенные стили для точечных, линейных и полигональных слоев. Это бывает важно, когда необходимо соблюдать принятые стандарты или точно повторить какой-нибудь хитрый дизайн.
Еще через диалоговое окно «свойства слоя» (двойной клик по слою в легенде карты или через Главное меню / слой / свойства…) можно настроить подписи объектов. В левой части диалогового окна выбираем вкладку «подписи», ставим флажочек напротив «подписывать объекты значениями поля» => выбираем поле (для деревьев логично выбрать их номер или ID).
В центральной части окна мы можем настроить стиль подписи (шрифт, размер, цвет и т.п), форматирование, буферизацию (обводка), размещение и кучу всяких эффектов…
Стили подписей также можно сохранять в отдельные файлы и загружать сохраненные или стандартные.
Для полигонов настраиваем свойства слоя: стиль (цвет, прозрачность и т.д.) и включаем подписи по полю ID.
Работа с атрибутивными таблицами векторных слоев в QGIS.
Чтобы открыть атрибутивную таблицу выбранного в легенде карты (диспетчере слоев) слоя, нужно нажать кнопку в панели инструментов «открыть таблицу атрибутов», или выбрать «открыть таблицу атрибутов» в контекстном меню, щелкнув правой кнопкой мыши по слою в легенде карты.
Все действия в таблице атрибутов производятся в режиме редактирования, который можно включить кнопкой с желтым карандашиком.
В режиме редактирования можно удалять выделенные объекты и поля, добавлять новые поля (столбцы) и пользоваться калькулятором полей.
Откроем атрибутивную таблицу полигонального слоя. Запустим ее на редактирование. Выберем «калькулятор полей»…
Поставим флажок «создать новое поле»;
Из раздела «геометрия» (нажимаем плюсик) выберем функцию «$area» и двойным кликом добавим ее в поле «выражение».
При нажатии «Ok» в атрибутивной таблице появится новый столбец, в котором программа подсчитает площади всех полигонов. Площади будут рассчитаны в единицах измерения по умолчанию, скорее всего, в км 2 …
Добавим еще один столбец (кнопка «добавить поле»), назовем его «Э_О» (эстетическая оценка), тип – целое число, размер – не важно, пусть будет 2, и заполним его целыми числами с клавиатуры, от 1 до 3.
Далее работаем с атрибутивной таблицей: создаем поля для основных таксационных (преобладающая порода, возраст, класс бонитета) и ландшафтных (тип ландшафта, санитарно-гигиеническая и эстетическая оценки, класс устойчивости) характеристик выдела.
«Преобладающая порода» и «тип ландшафта» будут текстовые поля, остальные – целые числа, эти характеристики указываются в баллах.
Заполняем созданные поля (случайным образом, если нет ТО).
С помощью калькулятора полей добавляем поля «площадь выдела» и «класс совершенства».
Сохраняем копию созданного слоя через «сохранить как» (для каждого атрибута нам может понадобиться отдельный слой) Сохраняемый слой назовем «выделы».
Теперь собственно к ландшафтному анализу…
Источник: studfile.net
Создание и редактирование векторных слоев средствами QGIS
QGIS – динамично развивающаяся свободная пользовательская ГИС, представляющая довольно развитый инструментарий для работы с любой пространственной информацией. Мы уже разбирали вопросы привязки растровых данных с помощью QGIS. В этой статье мы остановимся на работе с векторными объектами. Данная статья иллюстрирована примерами англоязычного интерфейса, однако вы легко можете использовать и русифицированный.
Создание векторного слоя
Для создания векторного слоя выберем Создать новый shape-файл в меню Слой-Создать слой или воспользуемся кнопкой , по умолчанию расположенной на панели инструментов. В открывшемся диалоговом окне зададим необходимые параметры.
Добавление векторного слоя
Во-первых, это формат файла, в котором будут храниться данные нового слоя. В текущей версии QGIS (0.11.0 – Metis) таким форматом, причем единственным, является ESRI Shapefile. Во-вторых, тип создаваемого слоя, здесь всё стандартно – точечный (Point), линейный (Line) или полигональный (Polygon). Также необходимо определить минимум одно поле таблицы атрибутов.
В поле Name задается его имя, а в поле Type выбирается тип – действительное число (Real), целое число (Integer) или строка (String). Для добавления и удаления полей служат кнопки и . После того, как все необходимые параметры были заданы, нажимаем кнопку OK, задаем имя папки, в которой будут храниться наши данные, и переходим к редактированию только что созданного слоя.
Отметим, что встроенный в QGIS редактор таблиц атрибутов не позволяет добавлять новые и удалять имеющиеся поля созданного ранее shape-файла, однако это ограничение можно обойти, установив специальное расширение.
Настройка параметров редактирования векторного слоя
Для настройки параметров редактирования выберем Options в меню Settings и перейдем на вкладку Digitizing. В открывшемся диалоговом окне видим три группы параметров: Rubberband, Snapping и Vertex markers.
Настройка параметров редактирования
Параметры Line width и Line color группы Rubberband определяют толщину и цвет линии, используемой при рисовании линейных и полигональных объектов.
Параметр Marker style группы Vertex markers определяет стиль маркера вершины — Semi transparent circle (полупрозрачный круг) или Cross (перекрестие).
Группа параметров Snapping отвечает за настройку прилипания – автоматического совмещения узлов объектов при редактировании. Default snap mode – режим прилипания по умолчанию. Можно задать один из трех режимов: to vertex (к вершине), to segment (к сегменту), to vertex and segment (к вершине и сегменту). Default snapping tolerance in layer units – порог прилипания.
Режим и порог прилипания работают следующим образом: при подведении курсора мыши на определенное расстояние (порог прилипания) от сегмента или вершины (в зависимости от режима прилипания), рисуемая линия автоматически продолжается до касания с ближайшим сегментом или вершиной. На рисунке представлен пример использования различных режимов прилипания.
Режимы прилипания (большой кружок – вершины существующей линии, синяя, маленький – последняя вершина создаваемой линии, красная): а) к сегменту, б) к вершине
Search radius for vertex edits in layer units – радиус поиска ближайших вершин, используется при перемещении, удалении или добавлении вершин. Если в круг с центром в месте щелчка мышью и радиусом Search radius for vertex edits in layer units попадает хотя бы одна вершина, то выбирается ближайшая из них. При нулевом значении параметра Search radius for vertex edits in layer units или в случае если в указанный круг не попадает ни одной вершины появляется сообщение о том, что не задан порог прилипания, хотя порог прилипания здесь непричем. Порог прилипания и радиус поиска ближайших вершин задаются в единицах измерения слоя.
Сообщение об отсутствии порога прилипания
Для сохранения изменений жмем OK. Данные настройки будут применяться ко всем слоям новых проектов, создаваемых в QGIS.
Топологическое редактирование и прилипание нескольких слоев
Кроме только что рассмотренных настроек, в QGIS имеются дополнительные возможности, позволяющие, помимо всего прочего, настроить параметры прилипания в отдельности для каждого слоя. Рассмотрим дополнительные настройки редактирования и параметры прилипания.
В меню Settings выбираем Project Properties и переходим на вкладку General. Нас будет интересовать группа параметров Digitizing.
Настройка параметров проекта
Enable topological editing – включение режима топологического редактирования. Если топологическое редактирование включено, то при перемещении вершины, принадлежащей одновременно нескольким объектам (полигонам или линиям), их геометрия изменится в соответствии с новым положением перемещенной вершины. Если же топологическое редактирование отключено, то изменения коснутся только одного объекта.
Включенный (а) и выключенный (б) режим топологического редактирования
Avoid intersections of new polygons – предотвращение пересечения новых полигонов. Если активировать этот пункт, то при создании нового полигона в случае наложения его на уже существующий, часть нового полигона, попадающая в наложение, будет исключена.
Пример предотвращения пересечения полигонов
Нажимаем кнопку Snapping options и переходим к настройке прилипания для отдельных слоев.
Настройка прилипания для отдельных слоев
В столбце Layer расположены слои текущего проекта. Если слой отмечен крестиком, то настройки прилипания для него включены. В столбце Mode настраивается режим прилипания для каждого слоя, а в столбце Tolerance – порог расстояния прилипания.
ВАЖНО. Если нажать OK в окне Snapping options, а затем Apply в окне Project Properties, то настройки Default snap mode и Default snapping tolerance in layer units, которые мы указывали до этого, утрачивают свою силу для текущего проекта навсегда. И поэтому каждый раз, добавляя новый слой, вам необходимо через Snapping options указывать для него настройки прилипания.
На этом процесс настройки параметров редактирования векторного слоя можно считать оконченным.
Работа с точечными слоями
Прежде чем приступать к редактированию любого векторного слоя убедитесь в том, что у вас включена панель инструментов Digitizing. Если она отсутствует, то ее следует включить: в меню View выберете Toolbar Visibility и активируйте панель Digitizing. Добавьте в проект имеющийся или создайте новый точеный слой, следуя вышеприведенным инструкциям. После этого выберите его, щелкнув на нем в легенде, иконка Toggle editing станет активной: . Для того чтобы начать редактирование, щелкните на ней (в QGIS по умолчанию слой открыт только для чтения). Панель инструментов Digitizing для точечного слоя будет выглядеть следующим образом:
Панель инструментов Digitizing точечного слоя
Щелкните на иконке Capture Point: для того чтобы добавить новый точечный объект. После этого левой кнопкой мыши щелкните в то место, где бы вы хотели его расположить. В появившемся окне укажите значения атрибутов. На этом процедура добавления нового точечного объекта закончена.
Окно ввода значений атрибутов
Попробуйте добавить ещё один точечный объект. Если после щелчка на новом месте объект не появляется, убедитесь в том, что у вас не включен режим прилипания к вершине. В этом случае новый точечный объект может прилипнуть к уже существующему и слиться с ним. В таком случае следует просто отключить прилипание.
Инструмент Move Feature: позволяет перемещать точечные объекты. Этот инструмент работает следующим образом: нажимаем на иконку , после чего щелкаем рядом с объектом, который мы хотим переместить. В соответствии со значением Search radius for vertex edits in layer units выбирается ближайший точечный объект, при этом он становится выделенным. Не отпуская левой клавиши мыши, переместим наш объект на новое место и отпустим клавишу – объект будет перемещен.
С точечным объектом можно производить простейшие операции, такие как удаление: , вырезание: , копирование: и вставку: , причем вставлять вырезанный или скопированный объект можно как на текущий слой, так и на любой другой слой такого же типа. Но прежде чем осуществлять эти операции, нужный объект следует выделить. Для этого существует инструмент Select Features: панели инструментов Attributes.
Кроме того, в QGIS есть возможность редактирования атрибутов. Щелкните на иконке Open Table: панели инструментов Attributes. Перед вами откроется диалоговое окно.
Окно редактирования атрибутов
Для начала редактирования нажмите кнопку Start editing, отредактируйте атрибуты и нажмите кнопку Stop editing, после чего подтвердите или откажитесь от сохранения внесенных изменений. Как уже отмечалось выше, пока операции по удалению имеющихся и добавлению новых полей в таблицу атрибутов shape-файла в QGIS реализованы только с помощью специального расширения.
Работа с линейными слоями
Добавьте в проект имеющийся или создайте новый линейный слой, следуя вышеприведенным инструкциям. После этого выберите его, щелкнув на нем в легенде. Для того чтобы начать редактирование, щелкните на иконке Toggle editing: , панель инструментов будет выглядеть следующим образом:
Панель инструментов Digitizing линейного слоя
Чтобы добавить линейный объект, щелкните на иконке Capture Line: . После чего последовательно указывая вершины, используя левую клавишу мыши, нарисуйте линейный объект. Точка, завершающая ввод линейного объекта, указывается щелчком правой клавиши мыши. В появившемся окне укажите значения атрибутов. На этом процедура добавления нового линейного объекта закончена.
Работа инструментов удаления, вырезки, копирования и вставки линейных объектов аналогична работе этих же инструментов в случае точечных объектов.
Инструмент Move Feature: позволяет перемещать кроме точечных также и линейные объекты. Этот инструмент работает следующим образом: нажимаем на иконку , после чего щелкаем рядом с объектом, который мы хотим переместить. В соответствии со значением Search radius for vertex edits in layer units выбирается ближайшая вершина, а линия, которой принадлежит эта вершина, становится выделенной. Не отпуская левой клавиши мыши, переместим выделенную линию на новое место и отпустим клавишу – объект будет перемещен.
Инструмент Move Vertex: позволяет перемещать вершины линейного объекта. Этот инструмент работает следующим образом: нажимаем на иконку , после чего щелкаем рядом с вершиной, которую хотим переместить. В соответствии со значением Search radius for vertex edits in layer units выбирается ближайшая вершина. Не отпуская левой клавиши мыши, переместим выбранную вершину на нужное место и отпустим клавишу. Перемещение вершины будет происходить в соответствии с настройками прилипания для данного слоя (не допускайте прилипания вершины к другой вершине одного и того же объекта).
Инструмент Add Vertex: позволяет добавлять новые вершины к линейному объекту. Этот инструмент работает следующим образом: нажимаем на иконку , после чего щелкаем в то место, куда мы хотим добавить новую вершину. В соответствии с параметром Search radius for vertex edits in layer units выбирается отрезок ломаной (подсвечивается), на который будет добавлена новая вершина. Не отпуская левой клавиши мыши, переместим добавленную (пока виртуально) вершину на нужное место и отпустим клавишу либо отпустим её сразу после нажатия, если нужным местом является место щелчка. Если расстояние от места, на котором была отпущена левая клавиша мыши, до ближайшего сегмента или вершины (в зависимости от режима прилипания) меньше порога прилипания, то новая вершина добавится либо к сегменту, либо к вершине (подобных ситуаций прилипания к вершинам следует избегать), в противном случае новая вершина добавится непосредственно в то место, где была отпущена левая клавиша мыши.
Инструмент Delete Vertex: позволяет удалять вершины линейных объектов. Этот инструмент работаем следующим образом: нажимаем на иконку , после чего щелкаем рядом с вершиной, которую мы хотим удалить. В соответствии со значением Search radius for vertex edits in layer units выбирается ближайшая вершина и отмечается перекрестием. При отпускании левой клавиши мыши отмеченная вершина удалится.
И, наконец, рассмотрим последний инструмент, использующийся при редактировании линейных слоев. Инструмент Split Features: позволяет разделять линейные объекты на несколько отдельных объектов. Очевидно, что разделить объект на несколько частей можно либо в точках сегмента, либо в вершинах.
В первом случае отключаем прилипание к вершинам, нажимаем на иконку и проводим секущую через точку сегмента, в которой мы хотим разделить объект. Во втором случае, наоборот, включаем прилипание к вершинам и проводим секущую через вершину, в которой следует разделить объект. Отметим, что таким образом можно разделять одновременно несколько объектов.
Точно также как и в случае с точечным слоем, в линейном слое можно осуществлять редактирование атрибутов, используя инструмент Open Table: .
Работа с полигональными слоями
Добавьте в проект имеющийся или создайте новый полигональный слой, следуя вышеприведенным инструкциям. После этого выберите его, щелкнув на нем в легенде. Для того чтобы начать редактирование, щелкните на иконке Toggle editing: , панель инструментов будет выглядеть следующим образом:
Панель инструментов Digitizing полигонального слоя
Принцип работы с инструментами полигонального слоя аналогичен работе с инструментами линейного слоя, поскольку полигон есть не что иное, как замкнутая линия. Однако есть инструменты, которые при работе с линейным слоем были недоступны. Вот на них и остановимся.
Чтобы добавить полигон, щелкните на иконке Capture Polygon: . После чего последовательно указывая вершины, используя левую клавишу мыши, нарисуйте полигональный объект. Точка, завершающая ввод полигона, указывается щелчком правой клавиши мыши. В появившемся окне укажите значения атрибутов. На этом процедура добавления нового полигонального объекта закончена.
Рассмотрим новые инструменты, которые были недоступны при редактировании линейного слоя. Для их активации в QGIS 2.0 и более поздних версиях нужно активировать панель расширенного редактирования: View/Toolbars/Adwansed digitazing.
Инструмент Add Ring: позволяет создавать полигоны в виде кольца. Для этого сначала нарисуйте полигон, затем нажмите на иконку и нарисуйте полигон внутри уже имеющегося. Область последнего полигона будет исключена из имеющегося, и в результате мы получим полигон в форме кольца.
Полигон в форме кольца
Инструмент Add Island: позволяет добавлять к полигонам в форме колец острова. Для того, чтобы добавить остров, выделите полигон в форме кольца, используя инструмент Select Features: , затем нажмите на иконку и нарисуйте внутри кольца острова.
Полигон в форме кольца с островом
Точно также как и в случае с точечным и линейным слоем, в полигональном слое можно осуществлять редактирование атрибутов, используя инструмент Open Table: .
Ссылки по теме
- Географическая привязка данных с помощью QGIS
- Обход ограничения на работу с полями атрибутивных таблиц shape-файлов в QGIS
Последнее обновление: 2017-12-06 18:02
Дата создания: 27.09.2008
Автор(ы): Денис Рыков
Источник: gis-lab.info
Отмывка рельефа в QGIS – покажем рельеф эстетично!
Отмывка рельефа (также теневой рельеф, shaded relief) – это метод представления рельефа на картах естественным, эстетичным и интуитивно понятным образом, при котором кажется, что на элементы рельефа сбоку падает свет. Карты с отмывкой подчеркивают красоту рельефа и помогают показать читателям формы ландшафтов в деталях.
Отмывку можно добавить разными способами, и в интернете есть разные рекомендации по вариантам отмывки. Сегодня мы пошагово расскажем об одном из простых способов добавить отмывку на вашу карту в QGIS. Этот несложный материал подойдет для тех, кто хочет добавить к своей карте красивый рельеф, но пока не нашел готовый вариант.
Вам понадобится:
– базовые знания работы с QGIS;
– представление о проекциях и перепроектировании растров;
– тайлы цифровой модели рельефа (ЦМР) на нужную вам территорию.
Зачем вообще делать собственную отмывку?
Для многих территорий есть готовые варианты отмывки, доступные через WMS. Готовые продукты удобны, их можно изменять, меняя яркость и контраст, но у них есть и ограничения:
– хорошо иметь гибкость в своих проектах , потому что для каждого ландшафта есть свой идеальный азимут, позволяющий выделить нужные формы рельефа (а в готовых вариантах есть ограниченное количество углов падения света);
– невозможно изменить значения высоты, чтобы подчеркнуть отдельные элементы рельефа;
– иногда в готовых продуктах есть артефакты – например, линии, от которых нельзя избавиться.
Если что-то из этого вас не устраивает, можно найти тайл ЦМР на вашу территорию и создать собственную отмывку.
Что нужно знать:
1. Нам не подойдет ЦМР в проекции в градусах – сначала файлы нужно перепроецировать в метрическую проекцию.
2. В QGIS есть возможность стилизовать любую ЦМР как «Теневой рельеф» («Hillshade»), но алгоритм GDAL в панели инструментов даст лучший результат.
3. Размер ячеек, который нужно получить в перепроецированной ЦМР, зависит от итогового масштаба карты. Например, ячейки ЦМР размером 10 м будут слишком подробными для карты масштаба 1:500 000, и файл получится огромным. Как правило, чтобы рассчитать размер ячеек, можно разделить знаменатель масштаба на 3000 для экранов или 10 000 для печати с разрешением 300 dpi. Так, если масштаб вашей карты – 1:100 000 и она будет иметь разрешение 300 dpi, подойдет ЦМР с ячейками около 10 метров.
Шаг 1. Скачиваем данные ЦМР
Продемонстрируем отмывку рельефа на примере тайла с частью Уральских гор к западу от Екатеринбурга (N56E059). Скачать данные ЦМР можно через USGS EarthExplorer или 30-Meter SRTM Elevation Data Downloader (только понадобится авторизоваться). Можно добавить к файлу код проекции “_4326”, чтобы не запутаться.
Если у вас несколько тайлов, стоит сразу соединить их через «Растр» > «Прочее» > «Merge»/»Результат», потому что при создании отмывки для каждого тайла отдельно на местах соединения тайлов будут артефакты. И если вы хотите обрезать тайл ЦМР, сейчас самое время это сделать.
Не стоит сразу применять стиль «Теневой рельеф» в свойствах слоя – получится некрасиво, так как этот стиль не предназначен для ЦМР, спроецированных в градусах:
Шаг 2. Перепроектирование и ресемплинг
Перепроецирование – это изменение проекции слоя, а ресемплинг – это изменение разрешения. Эти два процесса по сути неразделимы, поскольку при перепроецировании с проекции 4326 на, скажем, 32640, вы также захотите перейти от прямоугольных ячеек к красивым квадратным.
Первое, что нужно сделать для нашего слоя ЦМР – это нажать на «Сохранить как» и выбрать целевую проекцию, чтобы увидеть исходные размеры ячеек растра в метрах.
После указания системы координат 32609, получим разрешение около 16 x 31 м. Запомним эти значения и закроем окно.
Кстати, можно изменить проекцию и с помощью функции «Сохранить как» в QGIS, но тогда мы не можем выбрать алгоритм интерполяции, и результаты будут некрасивыми.
Например, на итоговой отмывке появляются артефакты в виде штриховки:
Вместо этого нужно перепроецировать и ресемплировать с помощью инструмента «Перепроецирование» в панели инструментов. («Toolbox», «gdal:warpreproject»).
В этом окне:
● исходная система координат должна быть 4326;
● целевая система координат должна быть в метрической проекции – в нашем случае 32640;
● разрешение выходного файла может быть любым, но хорошие результаты получаются с меньшим из двух размеров ячейки растра (в нашем случае 16);
● лучший метод интерполяции здесь – «билинейный»;
● добавим код проекции «_32640» к названию файла.
Файл в проекции 32640 в QGIS выглядит так же, как и в 4326, но в «Свойствах слоя» можно увидеть, что параметры слоя другие.
Пока что откроем свойства слоя и стилизуем его как «Теневой рельеф». Это еще не окончательный вариант, но стилизация позволит нам выбрать азимут и высоту солнца, а также Z-фактор, чтобы увидеть, какие варианты подходят для нашего ландшафта. Z-фактор – это коэффициент увеличения значений высоты, чем от выше, тем лучше будут выделяться элементы рельефа. Хорошие результаты получаются при выборе азимута 340, но подойдут разные варианты.
Шаг 3. Как добавить теневой рельеф
Теперь, если вы хотите сгладить рельеф на изображении, самое время перейти к инструменту GDAL «Hillshade» («Теневой рельеф») в панели инструментов. Здесь остается указать выбранные на предыдущем шаге азимут, высоту солнца и Z фактор и сохранить файл.
Теперь никаких артефактов!
Шаг 4. Визуализация
Теневой рельеф GDAL обычно темнее, чем нужно в наших проектах. Значения растра находятся в диапазоне от 1 до 255, и по умолчанию отображаются как шкала от черного до белого. Но часто нам не нужны области сплошного черного цвета на карте – они могут закрывать нужную информацию.
Хорошим решением будет регулировка непрозрачности или увеличение яркости.
Прозрачность 50%:
Яркость +80, контраст -35:
Если менять яркость, контраст и тон, можно получить очень разные результаты! Можно построить цветовой градиент от 50% серого (#808080) до белого (#ffffff), а затем выбрать стиль «одноканальный псевдоцветной» с этим градиентом. Тогда ни одна часть теневого рельефа не будет темнее 50% серого. Добавим теневой рельеф к другим слоям карты, выбрав режим наложения «Умножение» в окне «Стиль» и разместив файл с отмывкой в верхней части стопки слоев.
Все готово!
Теперь вы можете создавать отмывку рельефа с любым азимутом, что сделает ваши карты эстетичными и более понятными для пользователей.
Источник: cartetika.ru