Более подробно о выражениях Python, см. Примеры Python Вычислить поле.
Более подробно о выражениях Arcade см. ArcGIS Arcade в Справке для разработчиков.
Более подробно о выражениях SQL см. в разделах Синтаксис выражения SQL и Вычислить значения полей.
Более подробно о выражениях VBScript, см. Примеры VBScript Вычислить поле.
Выражения Arcade этого инструмента используют профиль Вычисление поля Arcade. Профиль Arcade является контекстом, в котором распознается и оценивается выражение Arcade. Когда вычисляется выражение Arcade, возвращаемое значение приводится к типу поля выходного значения.
При использовании с выбранным набором объектов, например, созданных из запроса в инструментах Создать векторный слой или Выбрать в слое по атрибуту, этот инструмент обновит только выбранные записи.
Существующие значения поля будут перезаписаны. Чтобы сохранить исходные значения, создайте резервную копию входной таблицы или воспользуйтесь опцией Включить возможность отмены на панели Геообработка.
В вычислениях Python имена полей должны быть заключены в восклицательные знаки (например, !fieldname!).
В вычислениях Arcade перед именами полей должно стоять $feature. (например, $feature.fieldname).
Чтобы перенести временные значения между типами полей (дата, только дата, только время, сдвиг метки времени и текст), используйте инструмент Конвертировать поле времени.
Чтобы вычислить строки в текстовые или символьные поля, в диалоговом окне строка должна использовать двойные кавычки ("строка"), или в скрипте строка, использующая двойные кавычки, также должна быть заключена в одинарные кавычки (например, '"string"').
Чтобы вычислить поле как числовое значение, введите числовое значение в параметр Выражение, кавычки при этом не требуются.
Вы можете создавать сложные выражения с помощью параметра Блок кода. Введите блок кода либо непосредственно в диалоговое окно, либо в виде строки в скрипт. Выражение и блок кода являются соединенными. Блок кода должен иметь обратное отношение к выражению; результат выполнения блока кода должен передаваться в выражение.
Параметр Блок кода поддерживается только для выражений Python.
Можно использовать модуль Python math и форматирование в параметре Блок кода. Также можно импортировать дополнительные модули. Модуль math предлагает теоретико-числовые функции и функции представления, степенные и логарифмические функции, тригонометрические функции, функции углового преобразования, гиперболические функции и математические константы. Более подробно о модуле math см. Справку Python.
Чтобы вычислить информацию о геометрии в Python, воспользуйтесь свойствами объекта Geometry. Например, используйте выражение !shape.pointCount! для вычисления числа вершин объекта.
Чтобы вычислить площадь и длину в Python, используйте методы getArea и getLength с указанием метода и типа единицы измерения.
- Для расчета геодезической площади полигонов в квадратных километрах воспользуйтесь следующим выражением:
!shape.getArea('GEODESIC', 'SQUAREKILOMETERS')!
- Чтобы вычислить длину полилиний или полигонов на плоскости в ярдах, используйте следующее выражение:
!shape.getLength('PLANAR', 'YARDS')
Для получения подробной информации см. объекты ArcPy Polygon и Polyline.
Подробнее об инструментах геообработки и линейных и площадных единицах измерения
При работе с присоединенными данными вы можете обновлять только поля исходной таблицы. Невозможно обновлять поля присоединенной таблицы. Чтобы выполнить вычисление в присоединенной таблице, он должен осуществляться непосредственно в этой таблице.
Выражения Python, в которых соединяются строковые поля, содержащие значения null либо деление на ноль, возвратят null в качестве значения такого поля.
Выражения SQL поддерживают более быстрые вычисления в сервисах объектов. Вместо выполнения вычислений по одному объекту или строке за раз, к серверу устанавливается один запрос, что приводит к более быстрым вычислениям.
Выражения SQL поддерживаются только в сервисах объектов. Для других форматов используйте выражение Python или Arcade.
При использовании опции SQL для параметра Тип выражения есть следующие ограничения: