GIS-Lab: Руководство пользователя gvSIG - Глава 9

- English

# GIS-LAB

Географические информационные системы и дистанционное зондирование

- Статьи
  - Вопросы-ответы
  - ГИС
  - Обработка ДЗЗ
  - Предложить тему
- Документация
  - Документация
  - Журналы
  - Законодательство
- Программы
- Проекты
- О GIS-Lab
  - О сайте
  - Участие
  - Новости
  - Кнопки
  - Диск

- Форум
- Блог

- Главная
- Документация
- gvSIG

# Руководство пользователя gvSIG

# 9. Инструменты геопроцессинга

<<< предыдущая глава | оглавление | следующая глава >>>

## 9.1 Введение

Расширение геопроцессинга gvSIG позволяет использовать набор стандартных инструментов для обработки векторных данных, содержащихся в слоях, отображаемых в ToC, создавая новые векторные слои, которые содержат новую информацию.

Инструменты геопроцессинга, встроенные в первую версию этого расширения:

- Buffer (Буферизация).
- Clip (Обрезка).
- Dissolve (Растворение) (смежный и буквенно-числовой критерий).
- Merge (Слияние).
- Intersection (Пересечение).
- Union (Объединение).
- Join (Присоединение).
- Spatial Join (Пространственное присоединение).
- Convex Hull (Конвексный полигон).
- Difference (Разность).

Итоговый слой может быть сохранен в одном из форматов, который поддерживает gvSIG (в данный момент, только формат shp).

Геопроцессинг можно запустить с помощью мастера геопроцессинга, нажатием кнопки "Geoprocesses" на панели инструментов:

либо из меню “View” выберите опцию “Geoprocess toolbox”.

После выбора опции появится окно инструментов геопроцессинга.

После того, как нужный инструмент выбран, щелкните по нему в дереве каталога слева и нажмите кнопку “Open Geoprocess”.

После выбора инструмента, справа будет показано его описание и станет активна кнопка "Open Geoprocess".

Когда нужный инструмент найден, нужно выбрать его и нажать кнопку “Open geoprocess”.

После того, как инструмент запущен, появится окно, с помощью которого можно создать пространственный индекс для исходного слоя. Создание пространственного индекса – это внутренний процесс, который выполняется только один раз для одного слоя и для одного нового проекта. Создание пространственного индекса ускоряет процессы пространственного пересечения.

Для того чтобы создать пространственный индекс для исходного слоя, выберите “Yes”.

## 9.2 Вызов геопроцессинга

Геопроцессинг можно запустить с помощью мастера геопроцессинга, для чего выберите кнопку на панели инструментов:

После выбора опции появится окно инструментов геопроцессинга. Для того, чтобы отобразился полный список инструментов, дважды щелкните на папке “Geoprocesses”.

После того, как нужный инструмент выбран, щелкните по нему в дереве каталога слева и нажмите кнопку “Open Geoprocess”.

## 9.3 Буферизация (Buffer)

### 9.3.1 Вступление

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

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

Несколько примеров применения области влияния:

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

### 9.3.2 Запуск инструмента

После выбора мастера геопроцессинга, появляется диалоговое окно:

При выборе инструмента “Buffer” и нажатии кнопки “Open geoprocess” появится окно,

которое разделено на следующие части:

Выбор элементов, для создания буферов. В выпадающем списке необходимо выбрать векторный слой, который является исходным. При включенном переключателе “Use selected features only” используются только выделенные объекты этого слоя.

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

После того, как буфер был построен, можно использовать опцию “Dissolve features” для того, чтобы слить границы объектов, которые соприкасаются во второй итерации.

Опция “Rectangle end cap” позволяет генерировать буфер с перпендикулярными ребрами (не скругленными).

Выбор количества буферов и их расположение в зависимости от геометрии исходного объекта. Инструмент “Buffer” позволяет генерировать несколько равноудаленных областей распространения начального объекта (например, если расстояние буфера равно 200м и было выбрано две буферных зоны, то область второго буфера будет равна 200 - 400м). В текущей версии gvSIG можно создавать не более трех радиальных буферных зон.

Если слой, для которого необходимо построить буфер, является полигональным, то для него будет доступна опция “Create Buffer…”, которая позволяет создавать буфер внутри, снаружи, или одновременно снаружи и внутри исходного полигона.

Представление результатов. В текущей версии результаты буферизации могут быть сохранены в shp файле. gvSIG позволяет вам выбрать существующий фал и перезаписать его, либо указать новый shp файл.

После указания всех необходимых данных для создания буфера щелкните на кнопке “Ok”. Программа контроля выполнит проверку введенной информации: задано ли значение радиуса числом, являются ли атрибуты, на основании которых будет строиться буфер, числовыми и т.п. Если входные данные не пройдут проверку, появится сообщение об ошибке.

Если же введенная информация верна, то появится окно с индикатором выполнения буферизации.

В любой момент процесс буферизации может быть отменен нажатием кнопки “Cancel”. Соответственно, созданный результирующий файл будет удален.

Во время выполнения буферизации можно выполнять другие задачи, например, масштабировать, добавлять новые слои и т.п. Это возможно потому что, все расширения геопроцессинга выполняются в фоновом режиме.

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

После этого можно использовать опцию “Dissolve elements”, которая может быть полезна в определенных ситуациях (например, если целью расчета буферов полигона было определение общей поверхности распространения какого-либо явления: области карантина и т.п.), в результате этой операции полигоны будут объединены, наложения полигонов друг на друга будут отсутствовать.

Изображение выше содержит полигоны перед операцией Dissolve. Общая область покрытия распространения явления не совпадает с суммой отдельных областей. Следующее изображение показывает соединение наложенных полигонов. Общая область покрытия распространения теперь является действительной.

Когда процесс буферизации включает процесс “Dissolve elements”, трудно предсказать точную длительность расчета. Поэтому в этом случае индикатор выполнения геопроцессинга выглядит иначе. Такой тип индикации процесса называется неопределенным.

## 9.4 Обрезка (Clip)

### 9.4.1 Введение

Этот инструмент позволяет ограничить рабочую область векторного слоя и вырезать из него интересующую часть.

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

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

Атрибутивные данные обрезанных объектов не изменяются.

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

### 9.4.2 Запуск инструмента

После того, как выбран инструмент “Clip”, появится следующее диалоговое окно:

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

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

Можно установить формат, в котором будут сохранены результаты обрезки (в текущей версии только .shp файл).

Результатом обрезки, как видно на изображении выше, будет слой, равный области пересечения слоев.

## 9.5 Растворение границ (Dissolve)

### 9.5.1 Введение

Этот инструмент работает только со слоями полигонального типа. Во время работы инструмента, происходит анализ каждого полигона, после чего происходит соединение полигонов по общему значению в указанном поле. Более того, инструмент позволяет использовать пространственные критерии для определения полигонов для соединения. Инструмент позволяет объединить два полигона если они смежны и имеют общий заранее указанный атрибут.

Пример использования:

- У вас есть полигональный слой, который представляет город, состоящий из районов. Вам необходимо создать полигональный слой города. Вы можете сделать это, выполнив операцию “Dissolve” и указав, что полигоны должны иметь общее значение для поля “Prov” (province), в котором хранятся уникальные коды каждого из городов.

### 9.5.2 Запуск инструмента

Используя предыдущий пример, мы будем использовать “локальный” слой, из которого должны получить слой “города”.

После того, как был выбран инструмент “Dissolve”, появится следующее окно:

Сначала укажите исходной слой (можно работать с выбранными его элементами).

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

Для того чтобы полигоны были соединены, они должны иметь одинаковое значение атрибутов. Можно также выбрать пространственный критерий и опцию соединения только смежных полигонов – “Only dissolve adjacents”.

Модуль геопроцессинга gvSIG позволяет получать статистические (итоговые) данные по соединенному слою. Так как инструмент “Dissolve” использует несколько полигонов на входе, которые в процессе обработки соединяются в исходный слой, то для подсчета итогового значения числовых атрибутов можно использовать “Summary function”.

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

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

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

## 9.6 Объединение (Merge)

### 9.6.1 Введение

Этот инструмент работает с одним либо несколькими слоями, и создает новый слой, который содержит объединенную геометрию всех входных слоев. Результирующий слой содержит атрибуты входных слоев, определенных пользователем.

Для остальных слоев инструмент сохраняет только атрибуты, одноименные с атрибутами выбранного слоя.

Пример:

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

### 9.6.2 Запуск инструмента

После того, как выбран инструмент “Merge” появляется диалоговое окно:

Этот инструмент позволяет использовать любой из слоев добавленных в активный View.

Чтобы запустить этот процесс, выберите слои, которые нужно объединить в текстовом окне “Input layers”. Затем, нажмите кнопку “Select”, в появившемся окне задайте имя нового слоя или выберите целевой слой.

Нажмите кнопку “Save”, чтобы сохранить изменения, после чего gvSIG вернется в окно геопроцессинга.

Нажмите кнопку “Ok”, после чего начнется обработка.

В результате будет создан новый слой, который будет добавлен в активный вид.

Тем не менее, в примере с набором листов карт не всегда удобно соединять все наборы листов по одному. Поэтому существует дополнительная опция выбора - добавление входных слоев целой папки. В текущей версии поддерживаются только файлы формата .shp.

Если вы щелкните на кнопке “Folder with files…” и выберите необходимую папку, все слои, находящиеся в ней, будут показаны в окне геопроцессинга.

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

Когда слои для соединения выбраны, укажите атрибуты, которые из входных слоев будут переданы в результирующий слой, укажите файл, в котором хотите его сохранить и запустите процесс. Необходимым условием для запуска инструмента является одинаковый тип входных слоев.

После окончания операции получится новый слой с геометрией входных слоев.

## 9.7 Конвексный полигон (Convex hull)

### 9.7.1 Введение

Этот инструмент рассчитывает конвексный полигон – наименьший полигон, описывающий все векторные элементы входного слоя.

Этот инструмент работает с входными слоями любой геометрии.

Существует несколько вариантов использования этого инструмента:

- определения площади покрытия области каким-либо географическим явлением.
- подсчет диаметра области покрытия набора элементов.

### 9.7.2 Запуск инструмента

После выбора инструмента “Convex hull” появляется следующее диалоговое окно:

После выбора слоев, для которых нужно рассчитать “Convex hull” и указания выходного файла (формат shp), можно запустить процесс на выполнение и получить новый слой.

Изображение ниже показывает конвексный полигон, окружающий все выбранные точечные объекты входного слоя.

## 9.8 Пересечение (Intersect)

### 9.8.1 Введение

Этот инструмент работает с двумя слоями - входным слоем и оверлейным слоем. Оба слоя должны быть полигонального типа.

Этот инструмент рассчитывает пересечения всех элементов оверлейного слоя со всеми элементами входного слоя, после чего создается новый объект на основании этих пересечений. Новый объект получает всю атрибутивную информацию объектов, из которых он был создан (входной слой и оверлей). Иначе этот процесс называют пространственное умножение – “Spatial AND”.

Пример применения данного инструмента:

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

### 9.8.2 Запуск инструмента

После выбора инструмента “Intersection” появится диалоговое окно:

Выберите входной слой и слой-оверлей. Нужно также указать файл, в который будет сохранен результат. После этого нажмите “Ok” и процесс будет выполнен.

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

## 9.9 Разность (Difference)

### 9.9.1 Введение

Данный инструмент работает с двумя слоями – входным слоем и оверлейным слоем и позволяет получить области одного слоя, которых нет в другом. Иначе его можно назвать “пространственное НЕ“ – “Spatial NOT”.

Объекты обоих слоев должны быть полигонального типа. Атрибутивные данные входного слоя будут оставаться в выходном слое неизменными.

Этот инструмент полезен в различных ситуациях, например, он может дополнять процесс обрезки. Если “Clip” позволяет исключить все, что не принадлежит к определенной области, то инструмент “Difference” позволяет сделать обратное действие – исключить определенный участок из рабочего слоя.

Приведем такой пример:

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

### 9.9.2 Запуск инструмента

Нажмите на кнопку “Open Geoprocess”, после чего появится диалоговое окно:

Можно сделать активным флажок “Use select features”, после чего работа будет выполнена только с выбранными элементами слоя. Нажмите кнопку “Ok”, для того, чтобы запустить инструмент.

На изображении ниже, объект, полученный после применения инструмента “Difference”, появится в виде полигона черного цвета в области наводнения и одного из выбранных городов. В этом случае, новый слой будет результатом вычисления разности и будет иметь атрибуты входного слоя.

## 9.10 Слияние (Union)

### 9.10.1 Введение

Этот инструмент похож на “Intersection” и “Difference” количеством необходимых слоев для работы. Все эти инструменты называют инструментами оверлейного геопроцессинга.

Слияние так же известно, как пространственное ИЛИ – “Spatial OR”, потому что результирующий слой состоит из объектов, содержащихся в обоих слоях (пересечения между полигонами). Это значит, что инструмент содержит три вида анализа: сначала он рассчитывает пересечения между слоями, затем он подсчитывает разницу между первым и вторым слоем, в третий раз он подсчитывает разницу между вторым слоем и первым.

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

### 9.10.2 Запуск инструмента

При выборе “Union” появится диалоговое окно:

После того, как указан исходный слой, оверлейный слой и выходной слой, нажмите кнопку “Ok”.

Результирующий слой будет пересечением и разностью между двумя слоями. Если нажать на “Information” и выбрать любой из полигонов результирующего слоя, можно видеть, что все объекты на пересечения имеют все атрибуты, в то время как объекты «разности» – только атрибуты слоя, из которых он был создан.

## 9.11 Пространственное присоединение (Spatial Join)

### 9.11.1 Введение

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

Пространственное объединение позволяет вам установить пространственную связь следующих типов:

- Ближайшее соседство - Nearest neighbour (отношение один-к-одному). Назначает атрибуты ближайшего объекта связанного слоя элементам в слое источнике. Если ближайший объект пересекается с элементом слоя-источника, то алгоритмом будет назначен первый объект пересечения.
- Содержащийся в – Contained in (отношение один-ко-многим) Связывает объект слоя-источника с несколькими объектами из связанного с ним слоя (в частности с которыми пересекается). В этом случает, слой-источник не примет атрибуты из связанного с ним слоя и операция будет подобна действию инструмента “Dissolve”. Пользователь может выбрать один или несколько функций статистики (среднее значение, минимум, максимум и сумма) для числовых данных связанного слоя.

### 9.11.2 Запуск инструмента

После того, как выбран инструмент “Spatial Join”, появляется следующие окно:

Это окно выглядит практически так же, как и окна оверлейных операций (Union, Difference, Intersection). Небольшое отличие его от других в том, что оно позволяет вам выбирать между отношением один-к-одному (критерий “Nearest neighbour”) либо один-ко-многим (использую пространственный критерий “Intersect” или “Contained in”). Выбор может быть сделан с помощью указания флажка в окне “Use nearest geometry”.

Если нужно сохранить слой-источник и связанный слой, не устанавливайте флажок в окне “Use nearest geometry”. В таком случае появится окно с набором статистических функций, которые вы можете применить к числовым атрибутам связанного слоя.

Функции будут такими же, как и в инструменте “Dissolve”:

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

## 9.12 Перемещение (2D Translation)

### 9.12.1 Введение

Этот инструмент позволяет сдвигать точечные, линейные и полигональные объекты и может быть использован с различными форматами данных (.shp, .dng, .dxf…). Для того чтобы сделать это, необходимо указать размер сдвига по осям Х и У.

Этот инструмент очень удобен при комбинировании картографических данных из разных источников.

Помните, что, несмотря на формат входных слоев (shp, dng, dxf…), выходящий слой будет в формате shp. То есть входящие слои могут быть формата shp, dng, dxf, но после применения данного инструмента результирующий слой из трех различных форматов всегда будет в формате .shp.

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

### 9.12.2 Запуск инструмента

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

Выберите опцию 2D Translation из папки Data Conversion.

Нажмите кнопку Open Geoprocess, после чего появится окно для ввода данных.

Выберите необходимый тип исходных слоев (dng, dxf, dwg, shp…) и укажите Х и У смещения.

Выберите выходной слой и нажмите кнопку Ok.

На следующем изображении вы увидите результаты операции.

Зависимость между типами слоев до и после смещения

Исходный слой | Результирующий слой
Point Shp file | Point Shp file
Multipoint Shp file | Multipoint Shp file
Line Shp file | Line Shp file
Polygon Shp file | Polygon Shp file
Dxf (points, lines, polygons) | Point Shp file, Line Shp file, Polygon Shp file
Dgn (points, lines, polygons) | Point Shp file, Line Shp file, Polygon Shp file
Dwg (points, lines, polygons) | Point Shp file, Line Shp file, Polygon Shp file

## 9.13 Перепроецирование (Reprojection)

### 9.13.1 Введение

Этот инструмент позволяет изменить проекцию векторных объектов. Для того чтобы его применить необходимо указать новую проекцию.

Этот инструмент удобен при работе с различными картографическими данными в одном общем проекте.

### 9.13.2 Запуск инструмента

Вызовите мастер геопроцессинга и выберите из папки Data Conversion опцию Reproject.

Нажмите на Open Geoprocess, после чего появится мастер геопроцессинга.

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

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

<<< предыдущая глава | оглавление | следующая глава >>>

Обсудить в форуме (Комментариев - 2)

Последнее обновление: March 23 2009

Наверх

### Вход

логин
пароль

- Регистрация
- Забыли пароль?

### Новое на сайте

Способы отображения данных с помощью OpenLayers

Экспорт данных HDF и HDF-EOS с помощью hdp

Разработка простого расширения для QGIS на Python

Организация и работа с репозиториями расширений QGIS

Автоматическое обновление репозитория расширений QGIS из SVN

Пакетное склеивание shape-файлов в MergeShapes/OGR

Feature Data Objects - комплекс решений для доступа к пространственным данным

- Все новости

### Рассылка новостей

### Новое на форуме

- Все темы форума

### Обратная связь

используйте эту форму для отправки комментария, вопроса или сообщения об ошибке для этой страницы

- О нас
- Статьи
- Программы
- Форум (все)
- Документация
- Контакты
- Участие
- English

Если Вы обнаружили на сайте ошибку, выберите фрагмент текста и нажмите Ctrl+Enter

© GIS-Lab и авторы, 2002-2008. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна.