| Операнд | Описание | Тип данных |
in_raster_or_constant | Входные данные, которые будут использоваться в операции Булев Не. | Raster Layer | Constant |
Доступно с лицензией Spatial Analyst.
Доступно с лицензией Image Analyst.
Краткая информация
Выполняет булеву операцию Not для значений ячеек входного растра.
Иллюстрация

Обсуждение
Оператор ~ выполнит булеву операцию Not, если входными данными (операндом) будет растр. Если входными данными (операндом) будет число, оператор ~ выполнит побитовую операцию Not. Дополнительную информацию о работе с операторами можно найти в разделе Работа с операторами.
Если в выражении используется несколько операторов, их необязательно выполнять в порядке слева направо. Оператор с наивысшим значением приоритета будет выполнен первым. Более подробно см. таблицу приоритета операторов в разделе Работа с операторами в алгебре карт. Порядок выполнения операторов меняется с помощью скобок.
У булевых операторов (~, &, ^, |) уровень приоритет более высокий, чем у операторов сравнения (<, <=, >, >=, ==, !=). Если булевы операторы используются в выражении вместе с операторами сравнения, булевы операторы будут выполняться первыми. Для изменения порядка выполнения операторов используйте скобки.
Когда несколько реляционных или логических операторов используются последовательно в одном выражении, в некоторых случаях выражение может не выполниться. Чтобы избежать этого, используйте в выражении соответствующие круглые скобки, чтобы явно задать порядок выполнения операторов. Более подробно изучите Правила сложных выражений.
Для выполнения этой Булевой операции необходимо наличие только одного входного файла.
Если входными данными служат значения с плавающей точкой, они преобразуются в целые числа путем усечения до выполнения Булевой операции. Выходные значения всегда целочисленные.
Если входной растр многоканальный, выходной растр также будет многоканальным. Оператор выполнит операцию для всех каналов входных данных.
Если входным набором данных является многомерный растр, то будут обработаны все срезы от всех переменных, а результатом будет многоканальный растр.
Параметры
Пример кода
В этом примере на входном растре выполняется булева операция Not (дополнительно).
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanNot = ~ Raster("degs")
outBooleanNot.save("C:/sapyexamples/output/outboolnot.tif")В этом примере на входном растре выполняется булева операция Not (дополнительно).
# Name: Op_BooleanNot_Ex_02.py
# Description: Performs a Boolean complement (NOT) operation on the
# cell values of an input raster
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = Raster("degs")
# Execute BooleanNot
outBooleanNot = ~ inRaster
# Save the output
outBooleanNot.save("C:/sapyexamples/output/outboolnot")