ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Справка
  • Sign Out
ArcGIS Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS Desktop

Полноценная профессиональная ГИС

ArcGIS Enterprise

ГИС предприятия

ArcGIS Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

ArcMap

  • На главную
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительные модули

|

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

  • Сводка
  • Иллюстрация
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензиях

Сводка

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

Иллюстрация

Иллюстрация булева оператора Or
OutRas = Raster("InRas1") | Raster("InRas2")

Описание

Оператор | выполняет булеву операцию Or, когда одно или несколько входных значений (операндов) являются растрами. Если оба входных значения (операнда) являются числами, | оператор выполняет побитовую операцию Or. Дополнительную информацию о работе с операторами можно найти в разделе Работа с операторами.

Если в выражении используется несколько операторов, они не обязательно выполняются слева направо. Оператор с высшим значением приоритета будет выполнен первым. Более подробно о приоритете операторов см. в таблице приоритета операторов. Порядок выполнения можно изменить с помощью скобок.

Уровень приоритета Булевых операторов (~, &, ^, |) выше, чем у реляционных операторов (<, <=, >, >=, ==, !=). Поэтому, если в одном выражении используются Булевы и реляционные операторы, в первую очередь выполняются булевы операторы. Чтобы изменить порядок выполнения, используйте скобки.

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

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

Для этого оператора не важен порядок входных данных.

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

Также булеву операцию Or можно выполнять a |= b, что является альтернативным способом написания a = a | b.

Синтаксис

in_raster_or_constant1 | in_raster_or_constant2
ОперандОбъяснениеТип данных
in_raster_or_constant1

Первое входное значение булевой операции Or.

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

Raster Layer | Constant
in_raster_or_constant2

Второе входное значение для булевой операции Or.

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

Raster Layer | Constant

Значение отраженного сигнала

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

Объект выходного растра.

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

Raster

Пример кода

| Булев оператор (Boolean Or), пример 1 (окно Python)

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

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

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

# Name: Op_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 = Raster("degs")
inRaster2 = Raster("negs")

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute BooleanOr
outBooleanOr = inRaster1 | inRaster2

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

Параметры среды

  • Размер ячейки
  • Текущая рабочая область
  • Маска
  • Выходная система координат
  • Экстент
  • Временная рабочая область
  • Растр привязки

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

  • Обзор операторов Алгебры карт

ArcGIS Desktop

  • На главную
  • Документация
  • Поддержка

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог Esri
  • Конференция пользователей
  • Саммит разработчиков
Esri
Расскажите нам, что вы думаете.
Copyright © 2021 Esri. | Конфиденциальность | Правовая информация