Глава 5. Системные инструменты обработки векторных данных В этой главе: ► Что такое Геообработка? ► Настройка среды Геообработки ► Набор инструментов «Анализ» ► Набор инструментов «Преобразование» ► Набор инструментов «Управление данными» с группами инструментов по обработке векторных данных ► Вопросы и указания для самопроверки ► Контрольные вопросы и задачи Что такое Геообработка? Геообработка - это обработка географической информации, одна из основных функций географической информационной системы (ГИС). Она дает возможность создания новой информации путем выполнения операций над существующими данными. Любое изменение или извлечение информации, которое вы выполняете при работе с Вашими данными, подразумевает решение задач геообработки. Это может быть, например, задача конвертирования географических данных в другой формат, либо задача может состоять в последовательном выполнении нескольких операций, таких как вырезание (clip), выборка (select) и последующее пересечение (intersect) наборов данных. В ArcGIS® можно выполнять задачи геообработки несколькими способами: Запустить инструмент, воспользовавшись его диалоговым окном. Откройте диалоговое окно инструмента, введите значения параметров и нажмите OK, чтобы запустить инструмент. Запустить инструменты из командной строки. Наберите название инструмента и значения его параметров в командной строке, затем нажмите Enter, чтобы запустить инструмент. Построить модель, последовательно использующую ряд инструментов геообработки, и запустить ее. Создайте модель, которая будет последовательно работать с несколькими инструментами геообработки в соответствии с Вашим технологическим процессом. Измените значения параметров, а затем повторно запустите модель одним щелчком мыши. Создать и запустить скрипт, который инициирует операции инструментов геообработки. Используйте скрипты системной пакетной обработки для повторяющихся задач, таких, например, как запуск одного и того же инструмента для нескольких входных данных, либо создайте свои собственные скрипты, которые запускают инструменты геообработки. В этой и трех последующих главах сначала приводится описание практически всех наборов инструментов и приводятся приемы работы с отдельными инструментами. Затем дается понятие процесса как последовательности выполнения цепочек инструментов, реализация процессов с помощью ModelBuilder и, наконец, более гибкие возможности реализация процессов с помощью программирования на языке Python. Настройка среды Геообработки Доступ к параметрам Анализа растров в ArcCatalog: меню Инструменты (Tools)\Опции (Option)\Геообработка (Geoprocessing)\Параметры среды (Environments) Параметры среды имеют три уровня: уровень приложения, уровень модели и уровень инструмента (процесса). Каждый последующий уровень перекрывает предыдущий. Это означает, что на уровне приложения определяются параметры для всех инструментов, но если одноименные параметры имеют разные значения на уровнях модели и приложения, то приоритет отдается параметрам уровня модели. Аналогично, если установлены параметры для конкретной модели, то они определяют поведение всех процессов модели, однако, если одноименные параметры имеют разные значения на уровне модели и конкретного инструмента, то приоритет остается за значениями конкретного инструмента. Вышеприведенное окно диалога Параметры среды (опция Общие) показывает, где можно задать параметры, применимые ко всем инструментам. Набор инструментов «Анализ» Набор инструментов Analysis предоставляет мощное множество инструментов для выполнения различных операций геообработки всех типов векторных данные. С инструментами в этом наборе инструментов, Вы можете выполнить наложения, создавать буферы, вычислять статистики, выполнять анализ близости и многое другое. Когда у Вас возникают пространственные или статистические проблемы, Вы должны всегда обращаться к набору инструментов Analysis. Пространственные объекты, такие как строения, трубы или границы земельных участков, могут быть представлены точками, линиями и областями. Этот тип представления известен как структура векторных данных. Точки, линии и области хранятся как координаты или множества координат, которые определяют форму. ArcGIS хранит векторные данные как ПО в классе ПО и коллекций классов ПО. Имеются три главных формата данных ПО: покрытия, шейп-файлы и базы геоданных. Набор инструментов Analysis был спроектирован для выполнения анализа векторных данных в географической информационной системе (ГИС). Сила функций набора инструментов Analysis заключается в том, что выход одной процедуры может быть использован как вход в другую. Набор инструментов Analysis имеет четыре группы инструментов. Каждая группа инструментов выполняет конкретный анализ векторных данных ГИС. Следующая таблица перечисляет группы инструментов, доступные в наборе инструментов Analysis и предоставляет краткое описание каждого. Группа инструментов «Извлечение» Группа инструментов Extract содержит инструменты, используемые для выборки ПО и атрибутов в классе ПО или таблице на основе атрибутивного запроса (SQL-выражение) или пространственного извлечения. Новые ПО и атрибуты размещаются в новом классе ПО или таблице. Следующая таблица перечисляет инструменты, доступные в группе инструментов Extract и предоставляет краткое описание каждого. (Доступность инструмента определяется лицензией ArcGIS. Требования лицензирования каждого инструмента перечисляются ниже). Группа инструментов «Близость» Группа инструментов Proximity содержит инструменты, которые используются для определения близости ПО внутри класса ПО или между двумя классами ПО. Эти инструменты могут определять ПО, которые близки друг другу, вычислить расстояния вокруг них и вычислить расстояния между ними. Эти инструменты могут позволить Вам следить за событиями в области или находить области, обслуживаемые каким-либо средством, или ПО, затронутые деятельностью. Группа инструментов Proximity содержит три инструмента для определения близости ПО внутри класса ПО или между двумя классами ПО. Следующая таблица перечисляет инструменты, доступные в группе инструментов Proximity и предоставляет краткое описание каждого. (Доступность инструмента определяется лицензией ArcGIS. Требования лицензирования для каждого инструмента перечислены ниже.) Инструменты Proximity помогают выявить, что находится рядом с ПО или расстояние между различными типами ПО. Один из способов определить, что находится рядом с ПО, является создание вокруг него буфера. Вы можете использовать инструмент Buffer для выявления или определения области внутри указанного расстояния вокруг ПО. Вы можете создать буфер для определения области вокруг реки для выявления земель, которые не могут разрабатываться, или Вы хотите создать буфер для выборки ПО внутри указанного расстояния от ПО. Городские планировщики могли бы определить области внутри указанного расстояния от проектируемого аэропорта. Буфер мог быть использован, чтобы показать, какие больницы или пожарные депо находятся ближе двух миль от аэропорта. Группа инструментов «Близость» Группа инструментов Proximity содержит инструменты, которые используются для определения близости ПО внутри класса ПО или между двумя классами ПО. Эти инструменты могут определять ПО, которые близки друг другу, вычислить расстояния вокруг них и вычислить расстояния между ними. Эти инструменты могут позволить Вам следить за событиями в области или находить области, обслуживаемые каким-либо средством, или ПО, затронутые деятельностью. Группа инструментов Proximity содержит три инструмента для определения близости ПО внутри класса ПО или между двумя классами ПО. Следующая таблица перечисляет инструменты, доступные в группе инструментов Proximity и предоставляет краткое описание каждого. (Доступность инструмента определяется лицензией ArcGIS. Требования лицензирования для каждого инструмента перечислены ниже.) Инструменты Proximity помогают выявить, что находится рядом с ПО или расстояние между различными типами ПО. Один из способов определить, что находится рядом с ПО, является создание вокруг него буфера. Вы можете использовать инструмент Buffer для выявления или определения области внутри указанного расстояния вокруг ПО. Вы можете создать буфер для определения области вокруг реки для выявления земель, которые не могут разрабатываться, или Вы хотите создать буфер для выборки ПО внутри указанного расстояния от ПО. Городские планировщики могли бы определить области внутри указанного расстояния от проектируемого аэропорта. Буфер мог быть использован, чтобы показать, какие больницы или пожарные депо находятся ближе двух миль от аэропорта. Ниже приведены примеры буферов. Группа инструментов «В базу геоданных» База геоданных предоставляет каркас для географической информации и поддерживает топологически интегрированные классы ПО. Эти наборы данных хранятся, анализируются и опрашиваются как слои подобно моделям покрытия и шейп-файла. База геоданных также расширяет эти модели с поддержкой комплексных сетей, топологий, отношений среди классы ПО и других объектно-ориентированных элементов. Этот каркас может быть использован для определения и работы с широким диапазоном пользователей – или специальных моделей приложения. База геоданных поддерживает как векторные так и растровые данные. Элементы представлены как объекты с свойствами, поведением и отношениями. В систему встроена поддержка для различных типов географических объектов. Эти типы объектов включают простые объекты, географические ПО, ПО сети, ПО аннотаций и другие более специализированные типы ПО. Модель позволяет Вам определять отношения между объектами и правила для установления ссылочной и топологической целостности объектов. Следующая таблица перечисляет инструменты доступные в группе инструментов «В базу геоданных» и предоставляет краткое описание каждого инструмента. База геоданных является высокопоставленной единицей географических данных. Она является коллекцией наборов данных, классов ПО, классов объектов и классов отношений. Вы можете импортировать данные из широкого диапазона форматов в базу геоданных. Группа инструментов «В базу геоданных» содержит инструменты, которые помогут Вам переместить Ваши существующие векторные, растровые и табличные данные в базу геоданных. Группа инструментов «Домены» Домены предоставляют способ определять диапазон значений, который может быть использован для нескольких атрибутивных полей. Использование доменов помогает гарантировать целостность данных путем ограничений выбора значений для конкретного поля. Проверка доменов кодированных значений выполняется путем ограничения пользователем выбора значений поля из выпадающего списка. Диапазонные домены проверяются автоматически в процессе редактирования. Следующая таблица перечисляет инструменты доступные в группе инструментов Domains и предоставляет краткое описание каждого инструмента. Атрибутивные домены используются для ограничения значений, допустимых в любом конкретном атрибуте для таблицы, класса ПО, или подтипа. Каждый класс ПО или таблица имеет множество атрибутивных доменов, которые применяются к различным атрибутам и/или подтипам. Эти атрибутивные домены могут быть общими среди классов ПО и таблиц базы геоданных. Существуют два типа атрибутивных доменов: диапазонные домены и домены кодированных значений. Каждый домен имеет имя, описание и специальный тип атрибута, к которому он применим. Группа инструментов «Класс пространственных объектов» Группа инструментов «Класс пространственных объектов» предоставляет множество инструментов, спроектированных для выполнения базового управления классами ПО, включая создание, добавление, интеграцию и обновление нескольких классов ПО. Класс ПО является коллекцией ПО с одинаковым типом геометрии: точечным, линейным или полигональным. Вы можете представлять себе две категории классов ПО: простой и топологический. Простые классы ПО содержат точки, линии, полигоны или аннотации без каких-либо топологических ассоциаций среди них. То есть, точки в одном классе ПО могут совпадать, но быть разными с концевыми точками линий в другом классе ПО. Эти ПО могут редактироваться независимо один от другого. Топологические классы ПО связаны в графе, который представляет объект, связывающий множество классов ПО в одну интегрированную топологическую единицу. Класс ПО может храниться вместе с другим классом ПО в наборе классов объектов базы геоданных или как самостоятельный класс ПО в базе геоданных. Класс ПО может также храниться в шейп-файле или других классах ПО с иной геометрией в покрытиях. Следующая таблица перечисляет инструменты доступные в группе инструментов «Класс пространственных объектов» и предоставляет краткое описание каждого инструмента . Работа с классами пространственных объектов Класс ПО является одним из наиболее общеиспользуемых источников данных. Он состоит из географических ПО с одинаковым типом геометрии (точка, линия или полигон) и одинаковым множеством атрибутов. Классы ПО будут обсуждаться в следующем разделе. Они могут содержаться в базе геоданных или наборе классов объектов базы геоданных, а также в следующих структурах: шейп-файл, покрытие, CAD, SDC и VPF. База геоданных классы пространственных объектов Вы можете выполнить задачи геообработки на классах ПО, содержащихся внутри набора классов объектов базы геоданных. Классы ПО Базы геоданных хранят географические ПО, представленные точками, линиями, полигонами, аннотациями, указателями размеров, а также multipatches (фрагментами – досл. заплатками) и их атрибутами. Они хранят простые ПО, так что они могут быть организованы внутри или помимо набора классов объектов, но всегда внутри базы геоданных—персональной или ArcSDE. Простые классы ПО, которые находятся вне набора классов объектов называются самостоятельными классами ПО. Классы ПО, которые хранят топологические ПО должны храниться внутри набора классов объектов для гарантии общности системы координат. Группа инструментов «Пространственный объект» Одной из первых моделей представления географических данных является модель векторных данных. В базе геоданных векторные данные реализованы как ПО, размещенные в наборах классов объектов и классах ПО. Группа инструментов «Пространственные объекты» предоставляет серию инструментов, которые позволяют Вам управлять и обогащать Ваши классы ПО. В диапазон этих инструментов входят те, которые позволяют инспектировать и корректировать возможные ошибки внутри Ваших данных, создавать различные геометрии из существующих геометрий и обогащать существующие геометрии. Группа инструментов «Генерализация» Инструменты в группе инструментов Генерализации (Generalization) делают данные менее подробными и менее сложными для анализа, а также для представления в уменьшенных масштабах, или для других специальных целей. Инструменты упрощения данных, при установке их географических характеристик и целостности, отвечают картографическим указаниям. Например, Вы можете упростить береговые линии или границы удалением маленьких отклонений от них без разрушения существа формы. Или ПО, которые тесно прилегают один к другому, могут быть агрегированы в большие площадные ПО. Несмотря на то, что генерализация является сложной и субъективной задачей, а ее правила недостаточно хорошо определены, инструменты Генерализации автоматизируют процесс и отвечают общим требованиям обобщения настолько сильно, насколько возможно. Когда существуют известные ограничения или неразрешенные проблемы, то к выходным данным добавляются флажки для поддержки инспектирования качества в последующем редактировании или постобработке. Большинство инструментов Генерализации требует некоторых параметров. Обычно, Вам не нужно понимать все подробности техники или алгоритмов, используемых для установки этих параметров. Многие числовые параметры непосредственно или тесно связаны с пространственными ограничениями, такими как минимальное расстояние или минимальный размер ПО; Результаты изменения значений обычно очевидны. В идеале, чтобы избежать или разрешить конфликты и установить пространственные отношения, каждая операция генерализации должна учитывать все связанные или прилегающие ПО. Такая операция называется контекстной генерализацией и включает несколько входов. Для простоты, каждый инструмент Generalization ограничен тем, что работает в конкретный момент только с одним входом. Группа инструментов «Слои и табличные виды» Группа инструментов Слои и табличные виды создает и управляет слоями, файлами слоев и видами таблиц. Слои и файлы слоя ссылаются на географические данные, хранящиеся на диске. Они могут ссылаться на большинство типов данных поддерживаемых в ArcCatalog - классы ПО, наборы данных CAD, набор данных чертежей CAD, coverage наборы данных покрытия, наборы данных шейп-файлов, наборы растровых данных и растровых каналов, наборы данных TIN и так далее. Виды таблиц являются эквивалентными таблицам слоя. В геообработке первичной причиной для создания и использования слоев является выполнение выборок атрибутов и областей. Создав сначала слой, Вы можете выполнить выборку на слое без всякого влияния на исходный источник данных. Слои, файлы слоев и виды таблиц могут быть использованы как вход для многих инструментов геообработки или иллюстрированы в ArcMap. Группа инструментов «Слои и табличные виды» Группа инструментов Слои и табличные виды создает и управляет слоями, файлами слоев и видами таблиц. Слои и файлы слоя ссылаются на географические данные, хранящиеся на диске. Они могут ссылаться на большинство типов данных поддерживаемых в ArcCatalog - классы ПО, наборы данных CAD, набор данных чертежей CAD, coverage наборы данных покрытия, наборы данных шейп-файлов, наборы растровых данных и растровых каналов, наборы данных TIN и так далее. Виды таблиц являются эквивалентными таблицам слоя. В геообработке первичной причиной для создания и использования слоев является выполнение выборок атрибутов и областей. Создав сначала слой, Вы можете выполнить выборку на слое без всякого влияния на исходный источник данных. Слои, файлы слоев и виды таблиц могут быть использованы как вход для многих инструментов геообработки или иллюстрированы в ArcMap. Группа инструментов «Классы отношений» Классы отношений определяют отношения между объектами в базе геоданных. Эти отношения могут быть простыми один-к-одному отношениями, наподобие того, что Вы можете создать между ПО и строкой в таблице, или более сложными один-к-многим (или многие-к-многим) отношениями между ПО и строками таблицы. Некоторые отношения указывают, что заданный ПО, строка или таблица, связаны не только с другим ПО, но что создание, редактирование или удаление одного будет оказывать соответствующее влияние на другой. Такие отношения называются сложными отношениями и они могут быть использованы для гарантии того, что связи между объектами в базе данных налажены и современны. Удаление ПО, такого как электрической опоры, может вызвать удаление других ПО, таких как трансформатор, смонтированный на опоре, или оказать влияние на поддержание записей в связанной таблице. Вопросы и указания для самопроверки 1. Перечислите инструменты, которые могут оказаться необходимыми при генерализации полигонов, таких как векторизованные зоны уклонов рельефа 2. Какие инструменты помогут Вам извлечь класс ПО из набора классов ПО? 3. Укажите способы, которыми можно отдельный ПО ввести в класс ПО, а отдельный класс ПО ввести в набор классов БГД? 4. Какой инструмент Вы предпочтете для удаления из класса ПО отдельных ПО, например, удалить из карты все острова и оставить только материковую часть? 5. Какую выгоду приносит создание подтипов? 6. Как вырезать из карты (набор классов объектов) фрагмент произвольной сложной формы? 7. Какой инструмент Вы используете при преобразовании изолиний в точки? Контрольные вопросы и задачи Все необходимые данные должны находиться в Вашей собственной папке «Контрольные задачи» Задача 1. Выборка Войдите в директорию Упр_0501 и поместите на карту шейп «GW». С помощью инструмента Выборка извлеките объекты с кодом «02-05» и поместите в отдельный шейп-файл или класс ПО. Задача 2. Вершины в точки Сделайте копию шейп-файла «Изолинии.shp» из папки «Общие данные\Городской рельеф» и преобразуйте линии в точки. Задача 3. Пересечение Физический смысл объектов, определяемых параметром «CODE» (зоны подтопления) в задаче 1, таков, что не допускает пересечений объектов с разными кодами. Отвечают ли данные оцифровки этим требованиям? Задача 4. Слияние Сделайте копию шейп-файла из Задачи 1 и разбейте его на слои по признаку «CODE». Исправьте ошибки оцифровки и соберите слои в новый объект с помощью инструмента «Объединить» (Integrate). Задача 5. Преобразования Сделайте копию шейп-файла из Задачи 1 и с помощью соответствующего инструмента превратите все полигоны в полилинии. Сделайте общие границы объектов с разными значениями признака «CODE» абсолютно одинаковыми. Проведите полную корректировку геометрии с помощью инструмента «Корректировка геометрии». После всех исправлений преобразуйте полилинии в полигоны.