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

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

Краткая информация

Выполняет булеву операцию "And" над значениями ячеек двух исходных растров.

Если оба входных значений истинны (ненулевые), выходное значение равно 1. Если одно или оба значения ложны (нулевые), выходное значение – 0.

Более подробно о Булевых математических инструментах

Иллюстрация

Рисунок булева оператора And
OutRas = BooleanAnd(InRas1, InRas2)

Использование

  • Булевы математические инструменты интерпретируют входные данные как логические значения, когда ненулевые значения рассматриваются как истинные, а нулевые значения – как ложные.

  • Для выполнения Булевой операции необходимо наличие двух входных файлов.

  • Порядок входных данных не имеет значения для этого инструмента.

  • Если входными данными служат значения с плавающей точкой, они преобразуются в целые числа 0 или 1 до выполнения логической операции. Если входное значение с плавающей запятой 0.0, оно конвертируется в целое 0. Если входное значение является любым, отличным от 0.0, оно конвертируется в целое 1. Например, входные значения 0.6, 32.22 и -4.2 будут рассматриваться как 1. Выходные значения всегда целочисленные.

  • Если оба входных растра одноканальные либо одни из входных данных представлены константой, выходной растр будет одноканальным.

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

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

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

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

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

Параметры

ПодписьОписаниеТип данных
Входной растр или постоянное значение 1

Первый входной растр для выполнения этой Булевой операции.

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

Raster Layer; Constant
Входной растр или постоянное значение 2

Второй входной растр для выполнения этой операции Булевой операции.

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

Raster Layer; Constant

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной растр.

Выходное значение ячейки должно быть 0 или 1.

Raster

BooleanAnd(in_raster_or_constant1, in_raster_or_constant2)
ИмяОписаниеТип данных
in_raster_or_constant1

Первый входной растр для выполнения этой Булевой операции.

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

Raster Layer; Constant
in_raster_or_constant2

Второй входной растр для выполнения этой операции Булевой операции.

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

Raster Layer; Constant

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной растр.

Выходное значение ячейки должно быть 0 или 1.

Raster

Пример кода

BooleanAnd, пример 1 (окно Python)

В этом примере выполняется Булева операция And на двух растрах GRID, в результате чего получается растр IMG.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outBooleanAnd = BooleanAnd("degs", "negs")
outBooleanAnd.save("C:/iapyexamples/output/outbooland.img")
BooleanAnd, пример 2 (автономный скрипт)

В этом примере выполняется Булева операция And на двух растрах GRID.

# Name: BooleanAnd_Ex_02.py
# Description: Performs a Boolean And 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 BooleanAnd
outBooleanAnd = BooleanAnd(inRaster1, inRaster2)

# Save the output 
outBooleanAnd.save("C:/iapyexamples/output/outbooland")

Информация о лицензиях

  • Basic: Обязательно Image Analyst или Spatial Analyst
  • Standard: Обязательно Image Analyst или Spatial Analyst
  • Advanced: Обязательно Image Analyst или Spatial Analyst

Связанные разделы