Работа с операторами в Алгебре карт

В Алгебре карт операторы служат для применения математической операции к входным растрам и числам.

В целом, операторы помещаются между двумя входными значениями данных (операндами) для выполнения математической операции (например, outVar = 3 + 7). В Алгебре карт операндами могут являться растры или числа. Чтобы использовать оператор вместе с растром, растр должен являться растровым объектом.

Приведенная ниже таблица может служить кратким справочником по реализации текущих операторов Алгебры карт в отношении операторов Python и операторов Алгебры карт в предыдущих версиях 9.x.

Операция

Оператор Python

Оператор Алгебры карт

Оператор Алгебры карт версии 9.x *

Инструмент Spatial Analyst GP

Арифметическая (Arithmetic)

Добавление

+

+

+

Сложить (Plus)

Деление

/

/

/, div

Разделить (Divide)

Целочисленное деление

//

//

недоступно

недоступно

По модулю (Modulo)

%

%

Остаток (Mod)

Остаток (Mod)

Умножение

*

*

*

Умножить (Times)

Степень (Power)

**

**

недоступно

Инструмент Степень (Power)

Вычитание

-

-

-

Минус (Minus)

Унарный минус

-

-

-

Изменить знак (Negate)

Унарный плюс

+

+

недоступно

недоступно

Логический

Булев оператор And (И)

недоступно

&

&, and

Булев оператор «And» (Boolean And)

Логическое дополнение

недоступно

~

^, not

Булев оператор Not (Boolean Not)

Логический исключающий оператор Or

недоступно

^

!, xor

Булев оператор «XOr» (Boolean XOr)

Булев оператор Or

недоступно

|

|, or

Булев оператор «Or» (Boolean Or)

Отношение

Равно (Equal To)

==

==

==, eq

Равно (Equal To)

Больше

>

>

>, gt

Больше чем (Greater Than)

Больше и равно

>=

>=

>=, ge

Больше или равно (Greater Than Equal)

Меньше

<

<

<, lt

Оператор Меньше чем (Less Than)

Меньше и равно

<=

<=

<=, le

Меньше или равно (Less Than Equal)

Не равно

!=

!=

^=, <>, ne

Не равно (Not Equal)

Побитовые (Bitwise)

Побитовый оператор And

&

недоступно

&&

Побитовый оператор And

Побитовое дополнение

~

недоступно

^^

Побитовый оператор Not (Bitwise Not)

Побитовый исключающий оператор Or

^

недоступно

!!

Побитовый оператор "XOr" (Bitwise XOr)

Побитовый оператор Left Shift (Сдвиг влево)

<<

<<

<<

Побитовый оператор Left Shift (Bitwise Left Shift)

Побитовый оператор Or

|

недоступно

||

Побитовый оператор Or (Bitwise Or)

Побитовый оператор Left Shift (Сдвиг вправо)

>>

>>

>>

Побитовый оператор Right Shift (Bitwise Right Shift)

* Оператор в Алгебре карт относится к символу оператора, который будет использоваться в инструменте Однорезультативная алгебра карт или Калькулятор растра на панели инструментов Spatial Analyst в версиях ArcGIS 9.x и более ранних.

Правила операторов

ПодсказкаПодсказка:

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

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

Приоритет выражения в скобках

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

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

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

Связанные темы

5/10/2014