Булев оператор Not (Spatial Analyst)
Краткая информация
Выполняет Булеву операцию Нет (Not) (дополнительно) для значений ячеек двух входных растров.
Если входные значения истинны (ненулевые), выходное значение будет 0. Если входные значения ложные (нулевые), выходное значение будет 1.
Рисунок
Использование
Булевы математические инструменты интерпретируют входные данные как логические значения, когда ненулевые значения рассматриваются как истинные, а нулевые значения — как ложные.
-
Для выполнения этой Булевой операции необходимо наличие только одного входного файла.
Если входными данными служат значения с плавающей точкой, они преобразуются в целые числа 0 или 1 до выполнения логической операции. Если входное значение — 0,0 с плавающей точкой, оно конвертируется в целочисленное значение 0. Если входное значение отличается от 0,0, оно конвертируется в целочисленное значение 1. Например, входные значения с плавающей точкой 0,6, 32,22 и -4,2 будут считаться значением 1. Исходное значение всегда целочисленное.
-
В Алгебре карт (Map Algebra), символом эквивалентного оператора для данного инструмента является "~" (ссылка).
Синтаксис
Параметр | Объяснение | Тип данных |
in_raster_or_constant |
Входные данные, которые будут использоваться в этой Булевой операции. Чтобы использовать число в качестве входных данных для этого параметра, необходимо сперва указать экстент и размер ячейки в параметрах среды. | Raster Layer | Constant |
Возвращено значение
Имя | Объяснение | Тип данных |
out_raster |
Выходной растр. Выходное значение должно быть 0 или 1. | Raster |
Пример кода
В этом примере выполняется Булева операция Not (дополнительно) на растре GRID, в результате чего получается растр TIFF.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanNot = BooleanNot("degs")
outBooleanNot.save("C:/sapyexamples/output/outboolnot.tif")
В этом примере выполняется Булева операция Not (дополнительно) на растре GRID.
# Name: 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 = "degs"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute BooleanNot
outBooleanNot = BooleanNot(inRaster)
# Save the output
outBooleanNot.save("C:/sapyexamples/output/outboolnot")