Доступно с лицензией Spatial Analyst.
Доступно с лицензией Image Analyst.
Сводка
Выполняет Булеву операцию исключающего Или (XOr) для значений ячеек двух входных растров.
Если одно входное значение истинно (ненулевое), а остальные ложные (нулевые) выходное значение будет 1. Если оба входных значения истинные или оба входных значения ложные, выходное значение будет 0.
Иллюстрация
Использование
Булевы математические инструменты интерпретируют входные данные как логические значения, когда ненулевые значения рассматриваются как истинные, а нулевые значения – как ложные.
Для выполнения Булевой операции необходимо наличие двух входных файлов.
Порядок входных данных не имеет значения для этого инструмента.
Если входными данными служат значения с плавающей точкой, они преобразуются в целые числа 0 или 1 до выполнения логической операции. Если входное значение с плавающей запятой 0.0, оно конвертируется в целое 0. Если входное значение является любым, отличным от 0.0, оно конвертируется в целое 1. Например, входные значения 0.6, 32.22 и -4.2 будут рассматриваться как 1. Выходные значения всегда целочисленные.
Если оба входных набора данных являются одноканальными растрами, либо один из входных параметров является константой, то выходной результат будет одноканальным растром.
Если оба входных набора данных являются многоканальными растрами, либо один из входных параметров является константой, то выходной результат будет многоканальным растром. Число каналов в каждом входном многоканальном растре должно быть одинаковым.
Инструмент будет выполнять операцию для каждого канала из входных данных по отношению к соответствующему каналу из другого входного набора данных. Если один из входных наборов данных является многоканальным растром, а другой - константой, то инструмент будет выполнять операцию со значением константы для каждого канала в многоканальном растре.
Синтаксис
BooleanXOr(in_raster_or_constant1, in_raster_or_constant2)
Parameter | Объяснение | Тип данных |
in_raster_or_constant1 | Первый входной растр для выполнения этой Булевой операции. В качестве входных данных для этого параметра может использоваться число, при условии, что для другого параметра задан растр. Чтобы задать число для двух входных данных, необходимо сперва указать экстент и размер ячейки в параметрах среды. | Raster Layer; Constant |
in_raster_or_constant2 | Второй входной растр для выполнения этой операции Булевой операции. В качестве входных данных для этого параметра может использоваться число, при условии, что для другого параметра задан растр. Чтобы задать число для двух входных данных, необходимо сперва указать экстент и размер ячейки в параметрах среды. | Raster Layer; Constant |
Значение отраженного сигнала
Name | Объяснение | Тип данных |
out_raster | Выходной растр. Выходное значение ячейки должно быть 0 или 1. | Raster |
Пример кода
В этом примере выполняется Булева операция XOr на двух растрах GRID, и выводится растр TIFF.
import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outBooleanXOr = BooleanXOr("degs", "negs")
outBooleanXOr.save("C:/iapyexamples/output/outboolxor.tif")
В этом примере выполняется Булева операция XOr на двух растрах GRID.
# Name: BooleanXOr_Ex_02.py
# Description: Performs a Boolean Exclusive Or operation on the
# pixel values of two input rasters
# Requirements: Image Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.ia import *
# Set environment settings
env.workspace = "C:/iapyexamples/data"
# Set local variables
inRaster1 = "degs"
inRaster2 = "negs"
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute BooleanXOr
outBooleanXOr = BooleanXOr(inRaster1, inRaster2)
# Save the output
outBooleanXOr.save("C:/iapyexamples/output/outboolxor")
Environments
Информация о лицензиях
- Basic: Требуется Image Analyst or Spatial Analyst
- Standard: Требуется Image Analyst or Spatial Analyst
- Advanced: Требуется Image Analyst or Spatial Analyst