Примеры сервиса геообработки сеть водотоков
Папка |
StreamNet |
Цель |
Создает сеть водотоков на основе данных стока и накопления |
Сервисы |
|
Задача геообработки |
Создать сеть водотоков |
Входные данные |
Минимальная дренажная область вверх по течению в гектарах |
Вывод |
Сеть водотоков |
Данные |
Используются оцифрованные данные рельефа (растр) и другие данные, содержащиеся в руководстве ArcGIS Spatial Analyst. |
Дополнительный модуль |
Инструменты Spatial Analyst |
Примечание |
Использует результирующий картографический сервис для отображения сети |
Соответствующая папка
Данные для этого примера можно загрузить с сайта ArcGIS.com. По окончании загрузки извлеките содержимое zip-файла в папку C:\arcgis\ArcTutor\. Папка GP Service Examples\StreamNet содержит завершенные модели и данные.
О задаче Создать сеть водотоков
Основным назначением задачи Создать сеть водотоков (Create Stream Network) является создание сети водотоков для отображения в картографическом виде. Ниже приведены два результата с использованием отмывки изучаемой территории (город Стоу, штат Вермонт) в качестве базовой карты. Основной идей, стоящей за этим сервисом, является предоставление пользователю возможности создавать различные сети и выбирать ту, которая больше всего удовлетворяет картографическим задачам.
![]() |
Эта задача создает сеть водотоков, определяемую как минимальную площадь – чем меньше площадь, тем больше создается сегментов водотоков. Каждый сегмент водотока получает порядковое значение водотоков, основанное на количестве сегментов водотока вверх по течению. Это значение используется для определения толщины линий для отображения каждого сегмента водотока.
Количество создаваемых сегментов водотока зависит от задействованной минимальной площади. Используя значение на входе 1 гектар, создается примерно 32 000 сегментов водотоков. Для 45 гектар создается примерно 600 сегментов водотоков.
В числе ряда решений, которые следует принять при создании сервиса геообработки, стоит определение максимального количества записей и объектов, возвращаемых сервером клиенту. Значением по умолчанию является 1000, однако его можно увеличить до миллиардов. Однако передача большого количества объектов через Интернет не только дорогостоящая, но и медленная процедура. Если имеется сервис, который может выводить большое количество объектов, необходимо рассмотреть возможность использования результирующего картографического сервиса для создания карты результатов и разрешения ArcGIS for Server передавать через Интернет карту, а не объекты. Так как количество сегментов водотока, создаваемое задачей Создать сеть водотоков зависит от минимальной площади дренажа, а также от использования собственных данных, размера и топографии изучаемой территории, в этом примере используется результирующий картографический сервис для отображения результатов вместо пересылки объектов клиенту через Интернет.
Подготовительные работы
Перед публикацией карты и сервисов геообработки необходимо создать подключения к ГИС-серверу.
Настройка подключений к ГИС серверу
Необходимо настроить подключение издателя, с помощью которого можно публиковать данные на ArcGIS for Server.
- В окне Каталог (Catalog) разверните узел ГИС сервер (GIS Server) и дважды щелкните Добавить ArcGIS Server (Add ArcGIS Server).
- Выберите Публиковать ГИС-сервисы (Publish GIS Services) и щелкните Далее (Next).
- Введите URL-адрес сервера (Server URL), применимый к вашему ГИС-серверу. Например, http://myserver:6080/arcgis/. Предоставьте имя пользователя и пароль, после чего щелкните Готово. Теперь в узле ГИС серверы (GIS Servers) окна Каталог (Catalog) содержится подключение (издателя) к нужному ГИС серверу.
Базовая карта
Базовой картой для этого примера является StoweHillshade.mxd, которая содержит только один слой Отмывка (Hillshade), как показано ниже. Слой Отмывка (Hillshade) отображается со степенью прозрачности 55 процентов.
![]() |
Базовая карта Отмывка (Hillshade) для города Стоу |
Необходимо опубликовать StoweHillshade.mxd в качестве картографического сервиса, что позволит использовать его при работе с сервисом геообработки.
- Запустите новый сеанс ArcMap.
- Откройте документ карты StoweHillshade.
- В меню Файл (File) щелкните Совместно использовать как (Share As) > Сервис (Service).
- Выберите Опубликовать сервис (Publish a service) и щелкните Далее (Next).
- Выберите подключение издателя, которое было создано при настройке подключений к ГИС-серверу. Оставьте имя по умолчанию и щелкните Далее (Next).
- Щелкните Создать новую папку (Create new folder) и введите Водоток. Это приведет к созданию папки для хранения опубликованного сервиса.
- Щелкните Продолжить (Continue), чтобы открыть Редактор сервисов (Service Editor).
- Щелкните кнопку Анализировать (Analyze)
кнопка. Устраните любые ошибки.
Должно появиться только одно предупреждение – данные будут скопированы на сервер, а также одно сообщение – уровень отображается во всех диапазонах масштабов. Можно игнорировать эти сообщения и не предпринимать каких-либо действий.
- Щелкните кнопку Опубликовать.
для завершения публикации картографического сервиса.
Данные моделей и инструментов
Набор инструментов для сервиса геообработки: StoweStreamNet.tbx, а исходный документ карты для сервиса – StoweStreamNet.mxd. StoweStreamNet.mxd содержит два слоя исходных данных: Направление стока (Flow Direction) (растр flowdir) и Суммарный сток (Flow Accumulation) (растр accumulation).
Откройте документ карты StoweSteamNet в окне Каталога, дважды щелкнув его.
Обзор модели
Чтобы лучше понять модель, разверните набор инструментов StoweStreamNet.tbx, щелкните правой кнопкой мыши модель Создать сеть водотоков (Create Stream Network), затем щелкните Редактировать (Edit). Модель Создать сеть водотоков (Create Stream Network) приведена ниже. Имеется одна входная переменная: Минимальная площадь вверх по течению в гектарах (Minimum upstream area in hectares). Эта переменная двойной точности представляет собой минимальную дренажную область, необходимую для создания сегмента водотока. Чем меньше область, тем больше сегментов водотока.
В этом модели вычисляется количество ячеек растра для входной области, затем используется инструмент Con для выполнения оценки по принципу условной выборки для каждой из входных ячеек в растре Суммарный сток (Flow Accumulation). Так как значение ячейки в растре Суммарный сток (Flow Accumulation) равно значению ячеек вверх по течению, выбирается любая ячейка с площадью выше порога. Выбранные ячейки формируют сегменты водотока и получают значение 1 в выходном растре.
Инструмент Порядок водотока назначает порядковое числовое значение растру, представляя отводы линейной сети по принципу выходных данных инструмента Con. В целом, потоки с более высоким значением характеризуются более высоким водотоком, так что порядок водотока может использоваться в качестве заменителя ширины водотока. Символы выходных данных модели организованы таким образом, что более высокие значения будут отображаться более толстыми линиями.
Инструмент Водоток в пространственный объект (Stream To Feature) преобразует растр порядка водотока (Stream Order Raster) в выходной класс линейных объектов. Этот класс пространственных объектов будет отображаться получившимся картографическим сервисом с использованием заданных в нем символов.
![Модель StreamNet Модель StreamNet](0057/GUID-97642015-E3A5-4D0C-93A1-B6056C5C9028-web.png)
Проектные данные
Переменные Суммарный сток (Flow Accumulation) и Направление стока (Flow Direction) являются слоями исходного документа карты StoweStreamNet.mxd. Эти переменные являются временными данными проекции, так как представляют собой непараметризованные входные данные.
Вычисление количества ячеек для минимальной площади
Все растровые наборы данных приведены в системе плановых координат штата Вермонт с использованием метров в качестве линейных единиц. Размер ячейки – 30 на 30 метров. Чтобы определить пространственную привязку и размер ячеек растра, выполните одно из следующих действий.
- В окне Каталога щелкните правой кнопкой растр, затем щелкните Свойства (Properties).
- В таблице содержания ArcMap щелкните правой кнопкой мыши растровый слой, щелкните Свойства (Properties), затем щелкните закладку Источник (Source).
Инструмент Вычислить значение (Calculate Value) разделяет гектары, указанные на входе, на размер ячейки в гектарах (30 x 30 метров = 900 кв. метров = 0,09 гектаров), чтобы определить количество ячеек для минимальной площади вверх по течению. Параметры инструмента Вычислить значение (Calculate Value), приведенные ниже, используют подстановку переменных. Заключение имени переменной в знаки процентов (%) приведет к замене содержимого переменной на значение.
Процесс Con
Инструмент Con выполняет для каждой входной ячейки растра Суммарный сток (Flow Accumulation) оценку по принципу условной выборки.
![Параметры инструмента Условие (Con) Параметры инструмента Условие (Con)](0057/GUID-85F84CDE-0C5F-4074-93F8-803837DDD07C-web.png)
Обратите внимание, что в выражении используется подстановка переменных. В выражении выбираются все ячейки со значением, превышающим минимальное количество ячеек. (Значение ячейки в растре Суммарный сток (Flow Accumulation) – это количество ячеек, стекающих в отдельную ячейку.)
Параметр Входной истинный растр или константа (Input true raster or constant value) – это значение, назначенное каждой выбранной ячейке и равное 1.
Процесс упорядочивания водотоков
Инструмент Порядок водотоков (Stream Order) служит для вычисления числового значения ячеек, представляющих отводы сети водотоков. Значения параметров для инструмента Порядок водотоков (Stream Order) в модели приведены ниже.
![Параметры инструмента Порядок водотоков (Stream Order) Параметры инструмента Порядок водотоков (Stream Order)](0057/GUID-1861FBB3-4B1E-4AC4-AB40-DF62A016D4B8-web.png)
Выходной растр содержит значение порядка водотоков по методу Шреве для каждой ячейки, представляющей водоток.
Процесс преобразования водотока в пространственный объект
Инструмент Водоток в пространственный объект (Stream To Feature) создает шейп-файл сегментов водотока, содержащихся в растре порядка водотоков (Stream Order Raster).
![Параметры инструмента Водоток в пространственный объект (Stream to Feature) Параметры инструмента Водоток в пространственный объект (Stream to Feature)](0057/GUID-8692A46C-B96E-458C-8163-2E2A1901D236-web.png)
Настройка выходных символов
- Разверните StoweStreamNet.tbx и дважды щелкните модель Создать сеть водотоков (Create Stream Network).
- Примите значение по умолчанию, равное 45 гектарам, и выполните модель, нажав кнопку ОК.
- Слой StreamNet будет добавлен в ArcMap.
- Щелкните правой кнопкой мыши слой StreamNet, затем щелкните Свойства (Properties), чтобы открыть окно Свойства слоя (Layer Properties).
- В приведенных ниже пошаговых инструкциях необходимо изменить символы на градуированные линейные символы. Перейдите на закладу Символы (Symbology), чтобы задать нужные символы.
- Щелкните пункт Градуированные символы (Graduated symbols), который располагается в категории Количество (Quantities).
- В качестве значения поля выберите GRID_CODE.
- Щелкните Классифицировать (Classify).
- В диалоговом окне Классификация (Classification) выберите пункт Вручную (Manual) в качестве метода классификации.
- Необходимо настроить классификацию вручную с граничными значениями 100, 250, 500, 750 и 10000. На панели Граничные значения (Break Values) щелкните последнее значение в списке. Это позволит изменить значение. Введите одно из граничных значений, например 10000. Список обновится, чтобы все значения были упорядочены.
- Продолжите редактирование и определение граничных значений, пока список не будет выглядеть, как приведенный на иллюстрации ниже.
- Нажмите ОК. Закладка Символы (Symbology) теперь выглядит, как показано ниже. Может понадобиться сбросить цвет на синий, щелкнув Шаблон (Template) и выбрав подходящий синий цвет.
- Нажмите ОК.
- На легенде слоя StreamNet отображается GRID_CODE в качестве поля классификации, что является не совсем логичным в контексте использования сервиса. Чтобы изменить это, щелкните GRID_CODE в легенде, нажмите клавишу F2 и измените текст на что-нибудь более описательное, например Порядок по методу Шреве или Порядок водотоков.
![Изменение легенды Изменение легенды](0057/GUID-95B83A78-7153-4C0E-BC79-542B74103BD1-web.png)
Публикация
Чтобы опубликовать сервис геообработки, выполните приведенные ниже действия.
- В окне Результаты щелкните правой кнопкой мыши результат Создать сеть водотоков (Create Stream Network) и выберите Общий доступ (Share As) > Сервис геообработки (Geoprocessing Service).
- Выберите Опубликовать сервис (Publish a service) и щелкните Далее (Next).
- Выберите подключение издателя, которое было создано при настройке подключений к ГИС-серверу. Измените Имя сервиса (Service name) на StoweStreamNet и щелкните кнопку Далее (Next).
- Выберите в раскрывающемся списке Использовать существующую папку (Use existing folder) папку Stream, которая была создана при публикации картографического сервиса, затем нажмите кнопку Продолжить (Continue), чтобы запустить редактор сервисов.
- Щелкните кнопку Анализировать (Analyze)
кнопка. Ошибки должны отсутствовать. Если они возникли, исправьте их, прежде чем продолжить работу.
- Откройте страницу Параметры (Parameters), чтобы задать свойства сервиса.
- Поставьте отметку Просмотреть результаты с помощью картографического сервиса (View results with a map service). Эта настройка позволяет сервису геообработки возвратить итоговое изображение выходных данных в дополнение к объектам.
- Кроме того, можно задать уровень сообщений как Информация (Info), чтобы просмотреть сообщения о выполнении инструмента при запуске сервиса.
- Щелкните кнопку Опубликовать.
для завершения публикации сервиса геообработки.
Использование сервисов
Чтобы использовать сервисы, запустите ArcMap и добавьте картографический сервис StoweHillshade из ранее созданного пользовательского подключения. На основе того же подключения к ГИС-серверу откройте задачу Создать сеть водотоков (Create Steam Network) из сервиса геообработки StoweStreamNet. Предоставьте значение для параметра Минимальная площадь вверх по течению в гектарах (Minimum upstream area in hectares) и выполните задачу. Не добавляйте картографический сервис Создать сеть водотоков (Create Steam Network), так как это результирующий картографический сервис.
![ArcMap до выполнения сервиса ArcMap до выполнения сервиса](0057/GUID-B0D28D35-7350-4E0C-AFAF-96C461846560-web.png)
![ArcMap после выполнения задачи Создать сеть водотоков ArcMap после выполнения задачи Создать сеть водотоков](0057/GUID-E561D547-D688-442A-BD44-3C35C4F44036-web.png)
Настройка собственной задачи сети водотоков
Модель из этого руководства можно использовать для обработки своих данных, то есть для настройки собственной задачи сети водотоков. Чтобы настроить модель для использования ваших данных, необходимо использовать инструменты Направление стока (Flow Direction) и Суммарный сток (Flow Accumulation) для предварительного расчета входных данных растров. Нет необходимости создавать отмывку, хотя выходные данные инструмента Отмывка (Hillshade) позволяют создать эффективную базовую карту для отображения сети водотоков.
После создания входных растров, обновите входные значения внутри модели. Кроме того, может понадобиться добавить приемлемый диапазон в параметр Минимальная площадь вверх по течению в гектарах (Minimum upstream area in hectares), который пользователи будут использовать для предоставления числового значения. Задав диапазон, приемлемый для растров, необходимо убедиться в наличии допустимых входных данных.
- Щелкните правой кнопкой мыши модель и выберите Свойства (Properties).
- Перейдите на закладку Параметры (Parameters) и щелкните значение Нет (None) в заголовке фильтра для параметра Минимальная площадь вверх по течению в гектарах (Minimum upstream area in hectares).
- Выберите значение Диапазон (Range) в ниспадающем списке.
- Введите минимальное и максимальное значение и примите изменения, щелкнув кнопку ОК.
![Примечание Примечание](rsrc/note.png)
Заданное вами минимальное значение может повлиять на количество возвращаемых объектов. Если создаваемый сервис может предоставить большое количество водотоков (объекты), возможно, будет необходимо увеличить значение Максимальное число записей, возвращаемое на сервер (Maximum number of records returned to the server) при публикации. Кроме того, можно не возвращать объекты, задав для этого значение, равное 0, так как сервис публикуется с использованием результирующего картографического сервиса для отображения результатов.
Последнее изменение перед публикацией включает настройку подходящих граничных значений для символов классификации. Пограничные значения зависят от размера изучаемой территории, поэтому необходимо поэкспериментировать с различными пограничными значениями. Большая площадь изучения с потенциально большим количеством водотоков потребует создания более высоких пограничных значений. Следуйте инструкциям в приведенном выше разделе, посвященном определению выходных символов.