Руководство. Использование задач геообработки в Desktop
В этом разделе
- Подключение к серверу примеров Esri
- Использование диалогового окна задачи
- Создание инструмента модели, использующего задачу
- Публикация в качестве сервиса
- Дополнительно: использование итерации для вычисления видимости нескольких точек
В ArcGIS for Desktop сервисы и задачи геообработки отображаются как наборы инструментов и инструменты и могут использоваться как любые другие инструменты геообработки. Можно добавить задачу в модель путем перетаскивания ее из окна Каталог (Catalog) в ModelBuilder или путем использования инструмента Добавить данные или инструмент (Add Data or Tools) на главной панели инструментов ModelBuilder.
Приведенные ниже действия пошаговые инструкции позволят подключиться к примерному серверу Esri, выполнить задачу из диалогового окна и создать инструмент модели, который использует задачу в ModelBuilder. Пример сервиса Elevation/ESRI_Elevation_World содержит одну задачу Видимость (Viewshed), которая вычисляет приемлемые области в 15-километровом буфере.
Подключение к серверу примеров Esri
- В узле ГИС Серверы (GIS Servers) окна Каталог (Catalog) создайте новое подключение к SampleServer1 Esri, дважды щелкнув пункт Добавить новый ГИС Сервер (Add New GIS Server).
- В диалоговом окне Добавить ArcGIS Server (Add ArcGIS Server) выберите пункт Работать с ГИС сервисами (Use GIS Services). Щелкните Далее (Next).
- В качестве URL-адреса сервера введите http://sampleserver1.arcgisonline.com/ArcGIS/services, как показано ниже.
Итак, вы подключились к примерному серверу Esri. В узле ГИС Серверы (GIS Servers) будет создано новое подключение, ArcGIS on sampleserver1.arcgisonline.com (user).
- Разверните подключение и перейдите к папке Elevation. Найдите сервис ESRI_Elevation_World с включенной задачей Видимость (Viewshed).
Использование диалогового окна задачи
В приведенных ниже пошаговых инструкциях демонстрируется, как выполнить задачу Видимость (Viewshed) с помощью диалогового окна соответствующего инструмента.
- Перед выполнением задачи необходимо получить топографическую базовую карту всего мира. Добавьте такую карту, щелкнув пункт Добавить базовую карту (Add Basemap) на панели Стандартные (Standard) в ArcMap (Добавить базовую карту (Add Basemap) можно найти, щелкнув стрелку вниз рядом с пунктом Добавить данные (Add Data) ). Выберите топографическую базовую карту.
- В окне Каталог (Catalog) дважды щелкните задачу Видимость (Viewshed), чтобы открыть соответствующее диалоговое окно.
- Кроме того, можно щелкнуть правой кнопкой мыши пункт Видимость (Viewshed) и выбрать команду Открыть (Open).
Для этой задачи требуется два входных объектов: набор объектов точек (местоположение точек) и линейная единица (расстояние). Выходными данными является полигон, который представляет область, видимую с точки входа.
Примечание:
Логика сервиса видимость (viewshed) ограничивает максимальную видимость значением 20 км (20000 м). Любое входное значение расстояния, превышающее это значение, будет во время выполнения снижено до 20 км.
- Нажмите кнопку Показать справку (Show Help); диалоговое окно развернется для отображения справки боковой панели. В отличие от инструментов в локальном наборе инструментов задачи не имеют справки по отдельным параметрам.
- Нажмите кнопку Справка инструмента (Tool Help) для просмотра подробной справки в интернет-браузере, используемом по умолчанию.
Кроме того, можно щелкнуть правой кнопкой мыши Видимость (Viewshed) в окне Каталог (Catalog) и выбрать пункт Справка (Help) для просмотра подробной справки.
- В диалоговом окне инструмента щелкните Input_Observation_Point, затем щелкните место на карте, чтобы добавить начальную точку. На иллюстрации ниже показано добавление точки на холмах Сан-Франциско.
- Вместо оцифровки точки можно выбрать существующий слой точечных объектов в качестве входной начальной точки, щелкнув стрелку вниз для параметра Input Observation Point, как показано ниже, при выборе слоя StartPoint в качестве входного. Будет использована только первая точка слоя объектов, последующие точки будут игнорироваться.
- Щелкните OK, чтобы запустить инструмент.
После запуска инструмента новый слой полигональных объектов добавляется в таблицу содержания ArcMap, а в окно Результаты (Results) добавляется новый результат.
Создание инструмента модели, использующего задачу
При работе с приведенными ниже пошаговыми инструкциями предполагается, что у пользователя есть некоторые знания о создании новой модели, добавлении инструментов в модель, подключении данных к инструментам и предоставлении параметров. Необходимо создать модель и сохранить ее в пользовательском наборе инструментов. При отсутствии пользовательского набора инструментов выполните следующие действия в разделе Создание набора инструментов. Создайте набор инструментов в своем рабочем каталоге.
Примечание:
При работе со следующим рабочим процессом предполагается, что имеется набор полигональных данных с числовым значением, которые должны быть представлены в таблице в зависимости от наложения входных данных. Модель, которая будет сконструирована, создает видимость на основе данной входной точки. При использовании видимости приблизительная численность, попадающая в этот диапазон видимости, вычисляется в соответствии с участками переписи. Инструмент Таблица пересечений (Tabulate Intersection) используется для определения численности на изучаемой территории. Любые данные полигонального типа могут быть подставлены в этот рабочий процесс, если для каждого объекта имеется связанное целочисленное значение.
- В приведенных ниже пошаговых инструкциях будет создана модель, а затем сохранена в пользовательском наборе инструментов. При отсутствии пользовательского набора инструментов выполните следующие действия в разделе Создание набора инструментов. Создайте набор инструментов в своем рабочем каталоге.
- Создайте новую модель, щелкнув инструмент ModelBuilder на панели инструментов Стандартные (Standard).
- В окне Каталог (Catalog) перетащите задачу Видимость (Viewshed) в ModelBuilder.
- Переименуйте задачу Видимость (Viewshed) в сервис Видимость (Viewshed).
- Добавьте инструмент Создать векторный слой (Make Feature Layer) в ModelBuilder. Перетащите данные участков переписи (или соответствующих данных) в ModelBuilder. Подключите входные данные к инструменту Создать векторный слой (Make Feature Layer).
- Откройте инструмент Создать векторный слой в окне ModelBuilder.
- Поставьте отметку Использовать правило пропорции (Use Ratio Policy) для каждого поля, которое следует разместить в таблице.
- Примите изменение, щелкнув ОК в диалоговом окне инструмента.
- Добавьте в модель инструмент Таблица пересечений (Tabulate Intersection). Можно воспользоваться окном Поиск (Search) для нахождения инструмента, а затем перетащить его на холст ModelBuilder.
- Использование инструмента Добавить подключение (Add Connection) Подключите в ModelBuilder выходные данные сервиса Видимость (Viewshed) к таблице пересечений (Tabulate Intersection) в качестве входных объектов зоны (Input Zone Features). Подключите выходные данные инструмента Создать векторный слой (Make Feature Layer) к таблице пересечений (Tabulate Intersection) в качестве входного класса объектов (Input Feature Class).
- Откройте инструмент Таблица пересечений (Tabulate Intersection), дважды щелкнув его.
- Задайте для параметра Поле зоны (Zone Field) значение grid_code; это известное поле в рамках результатов сервиса видимости.
- Примите изменение, щелкнув ОК в диалоговом окне инструмента.
- Добавьте инструмент Суммарная статистика (Summary Statistics) и подключите к нему выходные данные таблицы пересечений (Tabulate Intersection).
- Откройте инструмент Суммарная статистика (Summary Statistics), дважды щелкнув его.
- Выберите подходящее значение для параметра Поле статистики (Statistics Field). Задайте подходящее значение для параметра Тип статистики (Statistic Type). В этом примере используется поле TotalPop из участков переписи и выполняется суммирование SUM.
- Предоставьте переменные Входная точка наблюдения (Input Observation Point), Результат видимости (Viewshed Result) и Выход таблицы сводки (Summary Table Output) в качестве параметров модели.
Модель должна выглядеть примерно следующим образом.
- Сохранить (Save) модель в пользовательском наборе инструментов. Можно принять имя по умолчанию (в данном случае, Модель (Model)) или задать другое имя модели. Закройте ModelBuilder.
- В окне Каталог (Catalog) дважды щелкните инструмент модели, чтобы открыть соответствующее диалоговое окно.
- Кроме того, щелкните правой кнопкой мыши инструмент модели и выберите пункт Открыть (Open).
- Предоставьте где-либо на изучаемой территории входную точку.
- Щелкните OK, чтобы запустить инструмент модели. На следующем рисунке показана входная точка к востоку от Блу-Маунтинс, к западу от Коллингвуда с вычисленной численностью населения 16 000 человек в области видимости.
Публикация в качестве сервиса
На этом этапе можно опубликовать модель в качестве сервиса. Для этого может потребоваться подключение администратора к любому серверу ArcGIS for Server. При выполнении сервиса он, в свою очередь, выполнит задачу Видимость на сервере примеров Esri.
Дополнительно: использование итерации для вычисления видимости нескольких точек
Ранее созданная модель обрабатывает отдельное местоположение входа за раз, вычисляя видимость и определяя численность. Сервис видимости, к которому выполнено подключение, принимает несколько точек и создает отдельные видимости для каждой входной точки. Модель можно изменить для использования итератора в целях циклического перебора нескольких входных точек, создания видимостей и возвращения вычислений численности для каждой видимости. В следующей модели для выполнения этой задачи используется итератор.
Инструмент Итерировать выборку строк (Iterate Row Selection) в начале модели выполнит рабочий процесс для каждой входной точки. Инструмент Собрать значения (Collect Values) собирает каждый выходной результат видимости и статистики сводки для добавления в отображение. Встроенная переменная (%Value%) использует выходные данные Значение (Value) из инструмента Итерировать выборку строк (Iterate Row Selection) для создания уникальных имен выхода.
Более подробно о том, как работает Собрать значения (Collect Values) в ModelBuilder