8.2. Занятие: Объединение анализов
Использование векторизованных результатов растрового анализа позволит вам выбрать только те здания на подходящей местности.
Цель этого урока: Использовать результаты анализа векторизованного ландшафта для выбора подходящих участков.
8.2.1.
Попробуйте сами
- Сохраните вашу текущую карту ( raster_analysis.qgs ).
- Откройте созданную вами карту во время векторного анализа, проведенного ранее (вы должны были сохранить файл как analysis.qgs ).
- В панели Layers вам надо активировать эти слои:
- hillshade
- solution (или buildings_over_100 )
- Кроме этих слоев, которые уже должны быть загружены на карту, когда вы работали над ней раньше, надо также набор данных suitable_terrain.shp .
- Если вам не хватает некоторых слоев, вы должны найти их внутри exercise_data/residential_development/
- Вам надо использовать инструмент Intersection tool ( Vector ► Geoprocessing Tools ) для того, чтобы создать новый векторный слой, который называется new_solution.shp и содержит только те здания, которые пересекают слой suitable_terrain .
У вас теперь должен быть слой, показывающий ваш вариант определенных зданий, например:

8.2.2.
Попробуйте сами: Проверить результаты
Посмотрите на каждое из зданий в вашем слое new_solution . Сравните их со слоем suitable_terrain , изменив символы для слоя new_solution так, чтобы на нем были только контуры. Что вы заметили в некоторых зданиях? Все ли они подходят только потому, что пересекаются со слоем suitable_terrain ? Почему или почему нет? Какие из них вы считаете не подходят?
8.2.3.
Попробуйте сами: Уточнить анализ
Вы можете увидеть из результатов, что некоторые из включенных зданий на самом деле не походят и поэтому нам надо уточнить анализ.
Мы хотим убедиться, что наш анализ выдаст только те здания, которые полностью сидят внутри слоя suitable_terrain . Как вам этого добиться? Надо использовать один или несколько инструментов векторного анализа и помните, что все наши здания имеют площадь более 100 квадратных метров.
8.2.4. В заключении
Вы теперь ответили на исходный вопрос исследования и можете высказать свое мнение (с указанием причин, подкрепленных анализом) относительно того, какой объект недвижимости следует улучшить.
8.2.5. Что дальше?
Далее вы представите эти результаты как часть вашего второго задания.
© Copyright 2002-now, QGIS project. Обновлено: апр. 02, 2022 16:05.
Упражнение 8 Геометрические операции с векторными объектами
Цель задания — определить территории, пригодные для нового капитального строительства, используя операции векторного анализа и оверлея.
Необходимая теоретическая подготовка: Буферные зоны, слияние (объединение по признаку), векторный оверлей.
Необходимая практическая подготовка: Знание основных компонент интерфейса QGIS (менеджер источников данных, таблица слоёв, фрейм карты, менеджер компоновок). Работа с векторными источниками пространственных данных. Настройка символики и подписей объектов. Владение базовыми ГИС-технологиями.
Исходные данные: База пространственных данных на территорию части Ленинградской области.
Результат: Карта-схема участков Ленинградской области, пригодных для сооружения нового промышленного объекта.
8.1.1 Контрольный лист
- Объединить контура карты четвертичных отложений
- Выбрать участки с грунтами, пригодными для строительства
- Построить буферные зоны вокруг объектов гидрографической сети
- Построить буферные зоны вокруг объектов дорожной сети
- Построить буферные зоны вокруг особо охраняемых природных территорий
- Получить контура застройки путём выбора объектов кадастрового деления
- Последовательно исключить из участков, пригодных для строительства, контура, образованные лимитирующими условиями
8.1.2 Аннотация
Задание посвящено знакомству с пространственным анализом на основе векторных данных. Векторная модель представляет объекты в виде отдельных геометрических фигур с набором атрибутов. Она является объектно-ориентированной и удобна для анализа формы, размеров объектов, их взаимной конфигурации в пространстве. Используя векторное представление, можно рассчитывать длины и площади объектов, строить вокруг них буферные зоны, объединять объекты, имеющие одинаковые значения атрибутов.
В этом задании вы изучите работу некоторых инструментов векторного анализа на примере задачи определения территорий, доступных для ведения нового капитального строительства. В рамках задания предполагается, что такое строительство может вестись только на территориях с грунтами, подходящими по литологическому составу, и не может производиться на территориях с теми или иными ограничениями: на землях особо охраняемых природных территорий и в их охранных зонах, в водоохранных зонах рек и озёр, а также на землях, уже занятых жилой застройкой. Следует отметить, что набор критериев, применяемых для решения этой задачи в реальной практике, значительно более обширен и детализирован, однако мы считаем сделанные упрощения допустимыми в методическом отношении.
8.2 Объединение контуров схемы четвертичных отложений
- Создайте проект QGIS и сохраните его в своей рабочей директории.
- Добавьте в проект таблицу q_deposit_polygon из базы данных LenObl.gpkg .

Изображение слоя четвертичных отложений

Таблица атрибутов набора данных о четвертичных отложениях

Расположение инструмента слияния в меню QGIS
- Исходный слой: Четвертичные отложения
- Поля классификации: выберите поле (столбец таблицы атрибутов), которое содержит информацию о механическом составе грунта
- Опцию Сохранять несовпадающие элементы раздельно оставьте выключенной
- Объединённый слой: в выпадающем меню кнопки справа выберите вариант «Сохранить как GeoPackage…». Сохраните новый GeoPackage в вашу рабочую директорию под именем Ex08_*Фамилия* , где Фамилия — ваша фамилия. После указания имени GeoPackage появится всплывающее окно, где нужно будет указать имя созаваемой таблицы внутри нового GeoPackage. Введите имя ground и нажмите OK

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

Результат слияния
Снимок экрана №1. Результат слияния (объединения по признаку)
Вопрос №1: как был изменён исходный набор данных в ходе слияния?
8.3 Построение буферных зон
По условию задания необходимо исключить из рассмотрения территории, находящиеся в водоохранных зонах. Согласно п. 4 статьи 65 Водного кодекса Российской Федерации, ширина водоохранной зоны для рек или ручьёв различается в зависимости от их протяжённости от истока до устья, а согласно п. 6 той же статьи ширина водоохранной зоны для водоёмов небольшой площади составляет 50 м. Мы определим положение искомых территорий с помощью построения буферных зон.
8.3.1 Буферные зоны постоянной ширины
- Добавьте в проект таблицы hydrography_line и hydrography_polygon из исходного набора данных. Переименуйте слои в «Водотоки» и «Водоёмы» соответственно. Измените стили слоёв, чтобы сделать изображение похожим на изображение гидрографической сети на общегеографических картах. Слои четвертичных отложений и грунтов пока отключите.

Гидрографическая сеть изучаемой территории

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

Параметры инструмента построения буферных зон

Результат построения буферных зон постоянной ширины
8.3.2 Построение буферных зон переменной ширины
Ширина водоохранной зоны для рек зависит от их протяжённости. Для рек протяжённостью до 10 км ширина составляет 50 м, от 10 до 50 км – 100 м, свыше 50 км — 200 м. Мы рассчитаем протяжённость каждой реки и запишем её в таблицу атрибутов, а затем используем калькулятор полей, чтобы задать для каждого объекта собственный размер буферной зоны.
-
Добавьте атрибуты геометрии в таблицу атрибутов слоя «Водотоки». Для этого используйте инструмент «Добавить атрибуты геометрии…» («Вектор» — «Обработка геометрии» — «Добавить атрибуты геометрии…»). Этот инструмент создаёт новый набор данных, дополняя таблицу атрибутов характеристиками геометрии объектов. Сохраните новый набор данных в созданный ранее GeoPackage под именем hydrography_line .

Расположение инструмента добавления информации о геометрии в меню QGIS


Окно Калькулятора полей
CASE WHEN condition THEN result WHEN condition THEN result WHEN condition THEN result END
Теперь будем заполнять выражение нужными значениями. Например, если длина водотока меньше 10 км (10 000 м), то радиус буферной зоны должен быть равен 50. Длина водотока записана в поле length , поэтому блок условия будет выглядеть так: WHEN «length»

Окно Калькулятора полей после ввода необходимых условий

Определение радиуса буфера на основе значения в поле таблицы атрибутов

Результат построения буферных зон переменной ширины
8.3.3 Буферные зоны других объектов
- Добавьте в проект таблицы автодорог ( roads_line ) и особо охраняемых природных территорий ( reserves_polygon )
- Создайте вокруг автодорог буферные зоны шириной 50 м и сохраните их в созданный вами GeoPackage под именем roads_buffer_50m .
- Создайте вокруг особо охраняемых природных территорий буферные зоны шириной 1 км и сохраните их в созданный вами GeoPackage под именем reserves_buffer_1km .
- Отключите все слои, кроме буферных зон, и сделайте снимок экрана.
Снимок экрана №2. Результат построения буферных зон
Вопрос №2: что такое буферная зона? Для каких типов геометрии может применяться построение буферных зон? Какой тип геометрии может иметь результат построения буферной зоны в QGIS?
-
Объедините все построенные буферы в один набор пространственных данных. Для этого воспользуйтесь инструментом «Объединить векторные слои…» («Вектор» — «Управление данными»). Систему координат не задавайте, целевой слой назовите buffer_merge .

Расположение инструмента объединения векторных слоёв в QGIS

Параметры инструмента объединения векторных слоёв
8.4 Сохранение выборки в новую таблицу
В рамках задания мы должны исключить территории, уже занятые застройкой или предназначенные для застройки. Информацию о существующей застройке можно взять из разных источников. В этом упражнении мы воспользуемся кадастровой информацией.
- Отключите слой буферных зон и добавьте в проект информацию о кадастровом делении ( cadastre_polygon ). Переименуйте новый слой в «Кадастр»
- Выберите в слое кадастрового деления объекты, обозначенные как ГКН_УЧАСТКИ и ГКН_ГРАНИЦЫ . Эти объекты ограничивают земли населённых пунктов.
Примечание: если вы не помните, как сделать выборку объектов по значениям атрибутов, обратитесь к упражнению 7

Результат выборки в слое кадастра

Опция сохранения выборки в отдельный слой в контекстном меню

Настройки параметров экспорта

Слой населённых пунктов в окне проекта QGIS
Примечание: фактически ваш новый слой содержит информацию не только о землях населённых пунктов, но мелкими контурами в рамках задания можно пренебречь.
8.5 Нахождение геометрической разности объектов
Мы создали геометрические объекты, описывающие территории, непригодные для возведения нового здания (в условиях задачи). Теперь мы воспользуемся векторным оверлеем, чтобы исключить из контуров с пригодными грунтами те части, которые пересекаются с созданными объектами. Это реализуется с помощью операции геометрической разности (difference). Мы применим инструмент нахождения разности последовательно несколько раз, чтобы исключить все неподходящие территории. При этом мы не будем сохранять результат в явном виде на каждом шаге, а вместо этого воспользуемся временными слоями.
>Примечание: в различном геоинформационном ПО необходимый инструмент может иметь разные названия. Например, в QGIS он называется «Разность» (*Difference*), а в ArcGIS — «Стирание» (*Erase*)
- Включите слой «Типы грунта»
- Выберите в слое «Типы грунта» контура, механический состав которых представлен суглинками и глинами.
- Запустите инструмент «Разность…» из группы инструментов геообработки.

Расположение инструмента вычитания в меню QGIS

Параметры инструмента разности
Важно: на этом шаге инструмент может не сработать из-за некорректной геометрии одного из входных объектов. Если инструмент выдаст сообщение об ошибке, закройте его и в основном окне QGIS откройте окно параметров. На вкладке «Анализ» в разделе «Общие» найдите опцию «Фильтрация ошибочных объектов» и выберите параметр «Пропустить (игнорировать) объекты с ошибочными геометриями». После выполнения упражнения верните изначальное значение этой опции.

Параметр игнорирования ошибок геометрии

Результат вычитания слоёв

Результат второго вычитания слоёв

Расположение инструмента преобразования мультигеометрии в QGIS
Снимок экрана №3. Территории, пригодные для сооружения новых объектов
Вопрос №3: что такое оверлей? Какие функции векторного оверлея вы знаете? Как работает функция разности векторных объектов?
8.6 Расчёт зональной статистики
На заключительном шаге упражнения мы рассчитаем средние значения высот в пределах полученных контуров. Для этого мы воспользуемся фрагментом глобальной цифровой модели рельефа SRTM (исходное разрешение 3″) и инструментом расчёта зональной статистики
-
Добавьте в проект фрагмент цифровой модели рельефа (файл srtm_fragment_project_crop.tif ). Переименуйте новый слой в «Цифровая модель рельефа».

ЦМР добавлена в проект


Нахождение инструмента «Зональная статистика» в QGIS

Настройки инструмента «Зональная статистика»
Итоговое картографическое изображение: Территории, пригодные для сооружения новых объектов
Вопрос №4: почти каждый шаг этого упражнения можно было выполнить другим путём или в другой последовательности. Напишите, какие шаги (этапы) работы вы могли бы сделать иначе (или в другом порядке) и получить тот же результат.
GIS-LAB
Marco Hugentobler продолжает радовать пользователей QGIS новыми полезными функциями. В конце прошлого месяца было объявлено о создании новой ветки в репозитории, в которой находится код начальной поддержки присоединенных таблиц (table join).
Желающие протестировать новый функционал могут взять исходный код из репозитория
svn co https://svn.osgeo.org/qgis/branches/table_join_branch table_join
и собрать его самостоятельно. Т.к. не у всех есть возможность или желание заниматься самостоятельной компиляцией, мы подготовили бинарные файлы на основе кода из этой ветки. Эта версия QGIS собрана с поддержкой GRASS и Python, использует GDAL 1.7.2 (все зависимости взяты из OSGeo4W).
- установить QGIS и все сопутствующие приложения при помощи установщика OSGeo4W (подробнее).
- скачать архив с бинарными файлами (r14026)
- распаковать скачанный архив в корневой каталог OSGeo4W (по умолчанию, C:\OSGeo4W)
- в командной строке OSGeo выполнить команду qgis-join.
Присоединение внешних таблиц к атрибутивной таблице слоя выполняется следующим образом:
- загружаем векторный слой
- добавляем таблицу. Это можно сделать, выбрав в меню «Слой — Добавить векторный слой» («Layer — Add vector layer») и указав файл dbf или csv
- открываем свойства векторного слоя и выбираем раздел «Join» в самом низу списка
- нажатием на кнопку «+» добавляем новую связь
- указать поля, используемые для установки связи
Присоединенные поля должны появиться в таблице атрибутов слоя, в окне инструмента идентификации и на вкладке «Атрибуты» диалогового окна свойств слоя.
Замечание. При экспорте слоя с присоединенными таблицами экспортируются все поля, это может быть полезно когда производительность соединения слишком мала.

Т.к. разработка находится в начальной стадии, присутствуют некоторые проблемы:
- поля присоединенной таблицы нельзя редактировать;
- низкая производительность, особенно при выполнении классификации по полям присоединенной таблицы, а также при поиске по атрибутам.
Разработчики будут рады услышать отзывы, пожелания и конструктивную критику. Т.к. работа находится на начальном этапе у нас есть возможность повлиять на конечный результат :-).
Поделиться ссылкой:
- Click to share on Twitter (Opens in new window)
- Click to share on Facebook (Opens in new window)
- Click to share on Google+ (Opens in new window)
Форумы GIS-Lab.info
Здравствуйте!
разбираюсь в программе QGIS NextGis (2.0.1)
Векторные слои которые мне предоставили:
1. карта области разбитая полигонами на участковые лес-ва (есть атрибутивная таблица с номерами кварталов, но не указана другая информация, поэтому простой набор чисел)
2. карты по лес-вам (видимо их порезали до меня из общей, также в атрибутах только числа — кварталы)
Задание! отобразить на карте области квартала по 3 различным характеристикам (очаг/неочаг, вид вредителя или болезни, и надо проводить там обработку или нет) важно, что у них таблицы атрибутов не совпадают
— не знаю как изменить названия столбцов в таблице атрибутов!
— хотела объединить по лес-вам, а потом пытаться вносить изменения — выдает ошибки при объединении!
— хотела взять общую и изменять на основе распечатанных планов лесов — комп сдох при изменении масштаба (печалька)