Булев оператор Or (Spatial Analyst)

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

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

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

Выполняет Булеву операцию ИЛИ (OR) для значений ячеек двух входных растров.

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

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

Иллюстрация

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

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

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

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

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

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

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

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

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

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

    Если все входные данные имеют одну переменную, но разные имена, снимите отметку Сопоставить многомерную переменную для среды геообработки (установите arcpy.env.matchMultidimensionalVariable = False в Python) перед запуском инструмента.

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

  • В Алгебре карт эквивалентным символом для этого оператора является "|" (ссылка).

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

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

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

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

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

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

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

Raster Layer; Constant

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

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

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

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

Raster

BooleanOr(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

Пример кода

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

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanOr = BooleanOr("degs", "negs")
outBooleanOr.save("C:/sapyexamples/output/outboolor2")
BooleanOr, пример 2 (автономный скрипт)

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

# Name: BooleanOr_Ex_02.py
# Description: Performs a Boolean Or operation on the cell values of
#              two input rasters
# 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
inRaster1 = "degs"
inRaster2 = "negs"

# Execute BooleanOr
outBooleanOr = BooleanOr(inRaster1, inRaster2)

# Save the output 
outBooleanOr.save("C:/sapyexamples/output/outboolor")

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

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

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