ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

Определение инструмента в наборе инструментов Python

  • Настройка метода __init__ класса инструмента

Инструменты добавляются в файл .pyt в виде классов. Каждый класс инструмента должен включать как минимум два метода — __init__ и execute. По желанию, также можно использовать методы getParameterInfo, isLicensed, updateParameters и updateMessages для добавления дополнительных возможностей управления поведением инструментов.

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

Метод инструментаОбязательный/необязательныйОписание

__init__

Обязательный

Инициализирует класс инструмента.

getParameterInfo

Необязательный

Определяет параметры инструмента.

isLicensed

Необязательный

Возвращает сведения о том, лицензирован ли инструмент для выполнения.

updateParameters

Необязательный

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

updateMessages

Необязательный

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

execute

Обязательный

Исходный код инструмента.

Настройка метода __init__ класса инструмента

Метод __init__ в классе инструмента является стандартным методом инициализации класса в Python. Для инструмента в наборе инструментов Python метод __init__ используется для задания его свойств, включая label и description. Имя инструмента определяется по имени класса (в примере ниже именем инструмента будет CalculateSinuosity).

Метод __init__ определяет свойства инструмента, такие как подпись и описание. Ниже показано создание инструмента CalculateSinuosity.

class CalculateSinuosity(object):
    def __init__(self):
        self.label = "Calculate Sinuosity"
        self.description = "Sinuosity measures the amount that a river meanders within its valley, " + \
                           "calculated by dividing total stream length by valley length."

В методе __init__ инструмента можно задать следующие свойства.

СвойствоОписание

canRunInBackground

Если свойство canRunInBackground не задано или для него установлено значение True, инструмент будет использовать текущее значение параметра Обработка в фоновом режиме (Background Processing) в диалоговом окне Опции геообработки (Geoprocessing Options).

Если для него установлено значение False, инструмент всегда будет выполняться в приоритетном режиме, несмотря на значение параметра Обработка в фоновом режиме (Background Processing) в диалоговом окне Опции геообработки (Geoprocessing Options).

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

категория

Имя набора инструментов, в котором расположен инструмент. Группа инструментов - это способ организации инструментов в наборе.

описание

Описание инструмента.

подпись

Подпись представляет собой имя инструмента, которое отображается в окне Каталога.

стиль

Используется для изменения стиля по умолчанию для инструмента. Если это свойство не задано, используется стиль по умолчанию.

Связанные разделы

  • Определение параметров в наборе инструментов Python
  • Определение типов данных параметров в наборе инструментов Python
  • Что такое набор инструментов Python?

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2021 Esri. | Конфиденциальность | Правовая информация