Работа с итератором Для (For)

Краткая информация

Инструмент Для выполняет итерации с начального до конечного значения данной переменной. Он работает так же, как и оператор For в любом языке программирования/написания скриптов, выполняя итерацию заданное число раз.

Готовая модель с итератором Для

В этом уроке вы создадите простую модель для определения влияния проектируемых дорог на основании типов растительности и близости относительно дороги. В модели сначала вы построите вокруг дорог 3 буфера со значениями 500 футов, 1000 футов и 1500 футов. Эти значения расстояний будут получены из итератора Для. Затем буферные зоны будут использоваться для вырезания данных о растительности с помощью инструмента Вырезание, чтобы создать набор данных с типами растительности в пределах полигонов буферов. Затем инструмент Суммарная статистика будет использоваться для вычисления общей площади влияния по типам растительности в пределах буферных полигонов вокруг проектируемых дорог. Инструмент Собрать значения соберет всех выходные результаты итераций, а затем добавит их на панель Содержание для отображения в ArcGIS Pro.

Предварительные условия

Если вы только начинаете работать с ModelBuilder, изучите следующие разделы:

Открытие проекта

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

  1. Откройте обзорную страницу Работа с итератором Для.
  2. Щелкните Скачать в правой части страницы.
  3. Щелкните правой кнопкой мыши на загруженном файле IterateFor.zip и извлеките его в подходящую папку, например, C:\Temp.
  4. В извлеченной папке IterateFor дважды щелкните на файле IterateFor.aprx проекта ArcGIS Pro.

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

  5. Изучите данные на панели Каталог и при необходимости нажмите вкладку Проект. Перейдите к Папки > IteratorFor.
  6. В базе геоданных Data.gdb есть классы объектов PlanA_Roads и vegtype , которые будут использоваться в качестве входных данных для модели. Для сохранения результатов будет использоваться база геоданных ScratchCommon.gdb.

Добавление инструментов

Вы создадите модель в наборе инструментов MyProjectTools. Чтобы добавить инструмент в модель, выполните следующие шаги:

  1. На панели Каталог щелкните вкладку Проект. Перейдите к Папки > IterateFor > MyProjectTools.
  2. Щелкните правой кнопкой MyProjectTools и затем Новый. Выберите Модель, чтобы создать и открыть модель.
  3. Добавьте инструмент Для.
    1. Перейдите на вкладку ModelBuilder.
    2. В группе Вставить щелкните ИтераторыИтераторы.
    3. В списке Итераторы выберите Для.

    Добавление итератора Для

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

  4. Добавьте инструмент Собрать значения.
    1. Перейдите на вкладку ModelBuilder.
    2. В группе Вставить щелкните Утилиты Утилиты.
    3. В списке Утилиты нажмите Собрать значения.

    Добавление инструмента Собрать значения

    Инструмент Собрать значения будет добавлен в модель.

  5. Добавьте инструмент Буфер.
    1. Щелкните в модели и введите Буфер, чтобы открыть диалоговое окно Добавить инструменты в модель.
    2. Найдите инструмент Буфер.
    3. Дважды щелкните инструмент Буфер, чтобы добавить его в модель.
  6. Добавьте в модель инструменты Вырезать и Суммарная статистика, как это было описано в предыдущем шаге.

Настройка параметров и соединение инструментов

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

  1. Дважды щелкните итератор Для, чтобы открыть его диалоговое окно. .
    1. Для Значения от, Значения до и По значению введите соответственно 500, 1500 и 500.
    2. Нажмите OK, чтобы закрыть диалоговое окно.

    Диалоговое окно итератора Для

    Когда инструмент будет запущен, то модель будет использовать значение 500 для первой итерации, а затем значения 1000 и 1500.

  2. Дважды щелкните инструмент Буфер, чтобы открыть его диалоговое окно.
    1. Для параметра Входные объекты щелкните кнопку обзора Обзор и перейдите к базе геоданных <Your Project Location>\IterateFor\Data.gdb. Выберите векторный слой PlanA_Roads.
    2. Для параметра Выходной класс объектов перейдите к базе геоданных <Your Project Location>\IterateFor\ScratchCommon.gdb и введите BufferedFC_%Value%.

      В момент запуска, %Value%, которое является именем выходной переменной итератора Для (голубой овал), будет заменено значением переменной 500, 1000 или 1500.

      Подсказка:

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

    3. Для параметра Расстояние [значение или поле] выберите опцию Линейные единицы; оставьте расстояние пустым и укажите для единиц Футы.
    4. Для остальных параметров оставьте настройки по умолчанию, щелкните OK, чтобы закрыть диалоговое окно.

    Диалоговое окно инструмента Буфер

  3. Наведите указатель мыши на выходную переменную Value итератора Для. Щелкните и перетащите соединительную линию к инструменту Буфер. Отпустите кнопку мыши и нажмите Расстояние [значение или поле] во всплывающем меню.
  4. Дважды щелкните инструмент Вырезать, чтобы открыть его диалоговое окно.
    1. Для параметра Входные объекты щелкните кнопку поиска Обзор и перейдите к базе геоданных <Your Project Location>\IterateFor\Data.gdb. Выберите векторный слой vegtype.
    2. Для параметра Вырезать объекты щелкните ниспадающее меню и выберите BufferedFC_%Value%.
    3. Для параметра Выходной класс объектов перейдите к базе геоданных <Your Project Location>\IterateFor\ScratchCommon.gdb и введите ClippedFC_%Value%.

      В момент запуска, %Value%, которое является именем выходной переменной итератора Для (голубой овал), будет заменено значением переменной 500, 1000 или 1500.

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

    Диалоговое окно инструмента Вырезать

    Будет создано подключение между выходным значением инструмента Буфер и инструментом Вырезать.

  5. Щелкните дважды на элементе Суммарная статистика, чтобы открыть диалоговое окно инструмента.
    1. Для параметра Входная таблица щелкните ниспадающее меню и выберите ClippedFC_%Value%.
    2. Для параметра Выходная таблица перейдите к базе геоданных <Your Project Location>\IterateFor\ScratchCommon.gdb и введите AffectedVegetation%Value%.

      В момент запуска, %Value%, которое является именем выходной переменной итератора Для (голубой овал), будет заменено значением переменной 500, 1000 или 1500.

    3. Для параметра Поле(я) статистики выберите Shape_area для столбца Поле и Сумма для столбца Тип статистики.
    4. Для параметра Поле регистра выберите VEG_TYPE.
    5. Нажмите OK, чтобы закрыть диалоговое окно.
    Диалоговое окно инструмента Суммарная статистика
  6. Наведите указатель мыши на выходную переменную инструмента Вырезать. Щелкните и перетащите соединительную линию к инструменту Собрать значения. Отпустите кнопку мыши и нажмите Ввести значение во всплывающем меню. Сделайте то же самое, чтобы соединить выходную переменную инструмента Суммарная статистика с инструментом Собрать значения.

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

  7. Щелкните правой кнопкой результат выполнения инструмента Буфер и выберите Переименовать. В качестве нового имени введите Buffered FC. Переименуйте все переменные, как это показано в итоговой модели.
  8. Для выравнивания элементов модели щелкните кнопку Автокомпоновка Авто-компоновка на вкладке ModelBuilder и затем кнопку Вписать в окно Вписать в окно, чтобы компоновка модели максимально вписалась в размер окна на экране.

Запуск модели

  1. Щелкните правой кнопкой мыши на результате работы инструмента Собрать значения и щелкните Добавить к изображению.

    Результат будет добавлен на карту.

  2. Щелкните кнопку Сохранить Сохранить на вкладке ModelBuilder чтобы сохранить модель.
  3. Щелкните кнопку Запуск Запустить на вкладке ModelBuilder чтобы запустить модель.
    Результат работы модели с итератором Для

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

  4. На панели Содержание щелкните правой кнопкой на добавленных таблицах и нажмите Открыть Open Table, чтобы посмотреть, на какие типы растительности проектируемые дороги окажут наибольшее влияние в рамках буферных расстояний.
  5. Закройте модель и ArcGIS Pro.