Руководство пользователя: Создание инструментов в ModelBuilder
В данном учебном руководстве вы пройдете через шаги процесса создания инструмента-модели. В данном руководстве модель, созданная в учебнике Выполнение инструментов в ModelBuilder переделана в полезный инструмент посредством выражения переменных модели как параметров модели.
Для общей информации о создании инструментов – моделей см. Краткий экскурс по созданию инструментов с помощью ModelBuilder
Перед тем как приступить к изучению этого руководства, следует установить ArcGIS for Desktop (ArcGIS for Desktop Basic, ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced). Учебные материалы для данного руководства (поставляются вместе с ArcGIS for Desktop) устанавливаются по умолчанию в папку C:\arcgis\ArcTutor. Сценарий руководства вымышленный, и исходные данные были адаптированы для использования в нем.
Чтобы не нарушить целостность исходных данных, скопируйте папку ModelBuilder из папки C:\arcgis\ArcTutor на диск C: вашего компьютера. Если вы копируете данные на другой диск или в другую папку, убедитесь в том, что вы используете эту папку для всех шагов, указанных ниже.
- Открыть документ карты.
- Создать модель.
- Показать параметры инструмента.
- Создать параметры модели.
- Переименовать элементы модели.
- Задать порядок параметров модели.
- Установить тип параметра модели
- Установить фильтры к параметрам модели.
- Задать символы для выходных данных.
- Управлять промежуточными данными.
- Изменить общие свойства модели.
- Документировать модель.
1-Открытие документа карты
Перейдите в папку C:\ModelBuilder в Проводнике (Windows Explorer) и щелкните дважды на документе Extract Vegetation.mxd. Произойдет запуск ArcMap и откроется документ карты, либо
- Чтобы запустить ArcMap, выберите Пуск > Все программы > ArcGIS > ArcMap 10.1.
-
В диалоговом окне ArcMap - Начало работы (ArcMap - Getting Started), щелкните Существующие карты (Existing Maps) > Найти... (Browse for more).
Появится диалоговое окно Открыть документ ArcMap (Open ArcMap Document).
- Перейдите к папке C:\ModelBuilder, выберите Extract Vegetation.mxd и щелкните Открыть (Open).
Откроется документ Extract Vegetation.mxd.
2-Создание начальной модели
Придерживайтесь последовательности, изложенной в Выполнение инструментов в ModelBuilder Та же модель используется в данном руководстве в качестве отправной точки.
Дважды щелкните на примере модели в окне Каталог. Откроется диалоговое окно этого инструмента, но без значений параметров, как показано на рисунке ниже.
Если вы запустите инструмент, нажав OK, модель также будет запущена. Выходные данные этой модели (ClippedFC) не будут добавлены в таблицу содержания ArcMap даже при включенной опции Добавить к изображению (Add To Display) для переменной выходных данных. Причина этого в том, что когда модель запускается из диалогового окна ее инструмента, настройки Добавить к изображению (Add To Display) игнорируются. Для добавления выходных данных к изображению, вы должны сделать переменную выходных данных параметром модели.
Другая причина для создания параметров модели заключается в том, можно запускать эту модель с различными входными данными, и вам не нужно будет каждый раз открывать ModelBuilder, как показано ниже.
Когда параметры модели будут созданы, вы можете выполнить эту модель из ее диалогового окна инструмента, вводя различные значения для параметров Входные дороги (Input Roads), Буферное расстояние (Buffer Distance), Входная растительность (Input Vegetation), Выходной класс вырезанных пространственных объектов (Output Clipped Feature Class) и Допуск XY (XY Tolerance). Вам не потребуется открывать ModelBuilder каждый раз, когда вы захотите запустить эту модель—вместо этого вы можете использовать диалоговое окно этого инструмента. Преимущество запуска модели из диалогового окна инструмента заключается в том, что в этом случае в окне Результаты (Results) будет создаваться результат; при запуске модели из ModelBuilder этого не происходит
В ходе дальнейших действий переменные модели будут выражены как параметры, которые будут отображаться в диалоговом окне инструмента этой модели, как показано выше.
3-Отображение параметров инструмента
Для того чтобы задать значение параметров Буферное расстояние (Buffer Distance) и Допуск XY (XY Tolerance), вам необходимо создать для них переменные модели.
Когда вы добавите инструмент в модель, переменные модели будут созданы автоматически для входного и выходного наборов данных, но не для параметров каких-либо других инструментов. Причина того лежит в эстетике — если бы переменные автоматически создавались для параметра каждого инструмента, то схема модели скоро стала бы нечитаемой. Например, когда вы добавляете в модель инструмент Буфер (Buffer), автоматически будет сделана переменная для параметра Выходной класс объектов (Output Feature Class). После того, как вы щелкнете правой кнопкой мыши на Буфер (Buffer) и заполните параметр Входные объекты (Input Features), будет создана переменная модели для входных объектов. Все остальные параметры, такие как Расстояние (Distance), Тип стороны (Side Type) и Тип окончания (End Type) - не добавляются автоматически в модель в качестве переменных Выполнив следующие действия, вы создадите переменные модели для Расстояния [значение или поле] (Distance [value or field]) и Допуска XY (XY Tolerance).
- В окне Каталог щелкните правой кнопкой мыши на модели и выберите Редактировать (Edit). Откроется модель в ModelBuilder.
- Щелкните правой кнопкой мыши Буфер (Buffer).
- Щелкните Создать переменную (Make Variable) > Из параметра (From Parameter) > Расстояние (Distance) [значение или поле - value or field].
Параметр Расстояние (Distance) будет добавлен в модель как переменная.
- Щелкните правой кнопкой мыши Вырезать (Clip).
- Щелкните Создать переменную (Make Variable) > Из параметра (From Parameter) > Допуск XY (XY Tolerance).
4-Создание параметров модели
Теперь, когда вы создали переменные для Расстояния и Допуска XY, вы подготовлены для создания параметров моделей.
- Щелкните правой кнопкой мыши Расстояние (Distance) [значение или поле - value or field] и поставьте включите опцию Параметр модели (Model Parameter), как показано ниже.
Рядом с переменной появится буква P, которая укажет на то, что переменная является параметром модели. Параметр этой модели появится также в диалоговом окне инструмента модели.
- Создайте параметры модели для следующих переменных (не делайте параметры модели для BufferedFC):
- PlanA_Roads
- vegetype
- XY Tolerance (Допуск XY)
- ClippedFC
5-Переименование элементов модели
ModelBuilder дает переменным имена по умолчанию. Имена переменных используются для имен параметров в диалоговом окне инструмента модели. Переменные желательно переименовывать, особенно если они являются параметрами модели.
- Щелкните правой кнопкой мыши на PlanA_Roads и нажмите Переименовать(Rename)..
- Введите Input Roads (Входные дороги) и щелкните ОК.
Имя переменной изменится на Input Roads.
- Переименуйте остальные переменные следующим образом:
- Переименуйте Расстояние (Distance) [значение или поле - value or field] в Буферное расстояние (Buffer Distance).
- Переименуйте vegetype в Input Vegetation.
- Переименуйте ClippedFC в Output Clipped Feature Class (Выходной класс вырезанных пространственных объектов).
- Сохранение Модель Вам не нужно выходить из ModelBuilder.
- Щелкните правой кнопкой мыши на модели в окне Каталог, чтобы открылось диалоговое окно инструмента модели. Вам может потребоваться переместить или уменьшить окно ModelBuilder, чтобы сделать возможным доступ в окно Каталога. Диалоговое окно инструмента модели должно выглядеть как на изображении ниже. Порядок параметров в диалоговом окне инструмента может отличаться, но это не имеет значения, так как в дальнейшем вы его поменяете.
Вы можете выполнить инструмент, щелкнув OK, но прежде, чем выполнить инструмент, вам предлагается выбрать другой выходной класс пространственных объектов. Инструмент выполнен, и выходной класс пространственных объектов добавлен в таблицу содержания ArcMap. В отличие от запуска модели из ModelBuilder, запуск модели из ее диалогового окна не изменяет диаграмму модели.
6-Настройка порядка параметров модели
Как было показано выше, данный порядок параметров не является идеальным. Как правило, параметры располагаются в следующем порядке:
- Обязательные наборы входных данных
- Другие обязательные параметры, оказывающие влияние на выполнение инструмента
- Обязательные наборы выходных данных
- Необязательные параметры
- В ModelBuilder щелкните Модель (Model) > Свойства модели (Model Properties).
- Щелкните вкладку Параметры (Parameters).
- Выберите параметр Input Roads (входные дороги) и переместите его наверх при помощи стрелок вверх и вниз, расположенных справа.
- Измените расположение других параметров, как показано ниже:
7-Настройка типа параметра модели
Когда параметры модели будут установлены в правильном порядке, измените тип параметров. Если параметр является обязательным параметром в модели, то в этих настройках вы не сможете изменить его тип на необязательный.
- В ModelBuilder щелкните Модель (Model) > Свойства модели (Model Properties).
- Щелкните вкладку Параметры (Parameters).
- Щелкните ячейку под категорией Тип (Type), чтобы указать Допуск XY (XY Tolerance). Появится список с двумя опциями. Для данного примера оставьте параметр Допуск XY (XY Tolerance) необязательным, а остальные параметры – обязательные, как показано на изображении ниже.
8-Настройка фильтров параметров модели
Вы можете ограничить тип входных данных любого параметра, применив к ним фильтры. В этом примере по модели параметр Входные дороги (Input Roads) должен представлять собой линейные объекты. Выполнив описанные ниже действия, параметр будет изменен при помощи фильтра таким образом, что он будет воспринимать только линейные объекты.
- Щелкните Модель (Model) > Свойства модели (Model Properties).
- Щелкните вкладку Параметры (Parameters).
- Выберите Входные дороги (Input Roads) и щёлкните ячейку в категории Фильтр (Filter).
- Выберите фильтр Класс объектов (Feature Class).
Откроется диалоговое окно Класс объектов (Feature Class).
- Снимите отметки со всех типов, кроме полилиний, и щелкните OK.
- Щелкните OK в диалоговом окне Свойства модели (Model Properties), чтобы применить фильтр.
9-Настройка символов для выходных данных
Выходные данные модели можно настроить таким образом, что они будут иметь определенные символы, которые применяются для отображения выходных данных. В этом примере символы будут назначены по типу растительности в пределах данной буферной зоны. Для того чтобы настроить эти символы для выходных данных, в первую очередь надо создать файл слоя, а во вторую – задать файл слоя в свойствах выходных данных. Для данного руководства файл символов слоя для вас уже создан.
- В окне ModelBuilder щелкните правой кнопкой мыши Выходной класс вырезанных объектов (Output Clipped Feature Class), затем нажмите Свойства (Properties).
- Щелкните на вкладке Символы Слоя (Layer Symbology).
- Укажите файл слоя из папки ToolData, которую вы скопировали в C:\ModelBuilder\ToolData.
- Выберите файл OutputSymbology.lyr и нажмите Добавить (Add).
- Нажмите ОК.
10-Управление промежуточными данными
Когда вы запускаете модель, выходные данные создаются для каждого процесса в модели. Некоторые из этих данных становятся бесполезными после запуска модели, поскольку они создавались только для того, чтобы подключиться к другому процессу, который создает новые выходные данные. Такие данные называются промежуточными данными. Все выходные данные, за исключением окончательных, а также те данные, которые были сделаны параметрами модели, автоматически становятся промежуточными данными в этой модели. В данном примере выходные данные инструмента Буфер (Buffer) полезны только как входные данные инструмента Вырезать (Clip) и после этого не используются, опция Промежуточные данные (Intermediate) включена. Для сохранения промежуточных данных необходимо снять отметку в окошке Промежуточные данные.
11-Изменение общих свойств модели
Вы можете установить для модели имя, настроить надписи и описание.
- В интерфейсе ModelBuilder выберите Модель (Model) > Свойства модели (Model Properties).
- Введите имя модели ExtractVegetationforProposedRoads. В имени модели нельзя использовать пробелы.
- Введите Extract Vegetation for Proposed Roads (извлечь растительность для предложенных дорог) в текстовом окне Надписи (Label). В надписях моделей допускается применение пробелов. Эта надпись применяется для отображения имени модели в окне Каталога .
- Введите текст по вашему желанию в текстовом поле Описание (Description).
Включите опцию Хранить относительный путь (вместо хранения абсолютного пути (Store relative path names (instead of absolute paths)) для общего доступа к вашей модели-инструменту или для того, чтобы иметь возможность переместить данные вашей модели и саму модель в другое местоположение. Эта опция не используется в данном руководстве, но представлена здесь, поскольку она является полезной и ее стоит применять для ваших будущих моделей и инструментов, которые вы сделаете общедоступными:
- Нажмите ОК.
- Сохраните завершенную модель и выйдите из ModelBuilder
Щелкните правой кнопкой мыши на модели в окне Каталог, чтобы открылось диалоговое окно инструмента модели. Поскольку эта модель была сохранена с предопределенными значениями, все параметры в диалоговом окне будут заполнены. Вы можете изменить значение любого параметра посредством ввода нового значения. Щелкните OK для запуска. Окончательные выходные данные модели (Выходной класс вырезанных объектов Output Clipped Feature Class) добавлены к изображению по умолчанию, и сообщения модели отображаются в окне Результаты (Results). Чтобы посмотреть результаты, отключите слой Тип растительности в таблице содержания документа карты.
12-Документирование модели
Всегда полезно документировать модель прежде, чем выкладывать ее в общий доступ. Для документирования:
- Щелкните на модели правой кнопкой мыши в окне Каталог и выберите Описание элемента (Item Description).Откроется окно Описание элемента, в котором вы увидите страницу Описание (Description).
- Щелкните кнопку Редактировать (Edit) в окне Описание элемента (Item Description).
Откроется редактор документации для ввода описания элемента.
- Введите соответствующее описание для каждого элемента этой модели и нажмите кнопку Сохранить (Save).
Дополнительный анализ
Если вы хотите добавить инструменты в модель, то вы можете добавить инструмент Суммарная статистика (Summary Statistics), чтобы создать суммарную таблицу зон влияния по типу растительности в рамках буферных полигонов рядом с проектируемыми дорогами.
Ниже описывается порядок применения модели как инструмента в другой модели.
- Откройте новую модель, щелкнув на кнопке ModelBuilder на панели инструментов Стандартные (Standard) ArcMap.
- Теперь, когда вы создали инструмент модели, вы можете использовать его, как любой другой инструмент. Вы можете добавить инструмент модели в новую модель, перетащив его из окна Каталог в новую модель, как показано ниже.
- Откройте окно Поиск (Search) (если оно уже не открыто в ArcMap), щелкнув Геообработка (Geoprocessing) > Поиск инструментов (Search For Tools).
Откроется окно Поиск (Search).
- В окне Поиск (Search) введите Суммарная статистика (Summary Statistics) и нажмите кнопку Поиск (Search) .
- Перетащите инструмент в модель.
- Щелкните дважды на элементе Суммарная статистика (Summary Statistics), чтобы открыть диалоговое окно инструмента.
- Для параметра Входная таблица (Input Table), щелкните на стрелке вниз ниспадающего списка и выберите Выходной класс вырезанных объектов (Output Clipped Feature Class) с голубым значком рядом. Этот голубой значок означает, что это переменная в модели.
- Для параметра Выходная таблица (Output Table) укажите выходную базу геоданных (C:\ModelBuilder\Scratch\Output.gdb), введите AffectedVegetation для имени таблицы и щелкните Сохранить (Save).
- Для параметра Поля статистики (Statistic Field(s)) выберите Shape_Area из списка.
- Щелкните на ячейке рядом с полем Shape_Area в Тип статистики (Statistic Type) и выберите SUM из ниспадающего списка.
- Для параметра Поле комбинаций (Case field) выберите VEG_TYPE из списка.
- Нажмите ОК.
- Щелкните правой кнопкой мыши Выходной класс вырезанных объектов (Output Clipped Feature Class) (зеленый овал -the green oval) и поставьте флажок Добавить к изображению (Add to Display). Выходные данные будут добавлены к изображению после запуска модели.
- Щелкните правой кнопкой мыши и выберите опцию Добавить к изображению (Add to Display) для переменной AffectedVegetation. Это позволит добавить выходные данные к карте сразу после запуска модели.
- Запустите модель.
Выходные класс Output Clipped Feature Class и таблица AffectedVagetation будут добавлены в таблицу содержания ArcMap.
- Откройте таблицу, щелкнув на ней правой кнопкой мыши и выбрав Открыть (Open).
В таблице показана суммарная статистика площади растительности в зонах растительности в буферных полигонах, которые окажутся под воздействием при проектировании дорог в плане A.