Boolean XOr (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Mit der Image Analyst-Lizenz verfügbar.

Zusammenfassung

Führt eine Operation mit "Boolean eXclusive Or" für die Zellenwerte von zwei Eingabe-Rastern durch.

Wenn ein Eingabewert TRUE (ungleich 0) und der andere FALSE (0) ist, lautet die Ausgabe 1. Wenn beide Eingabewerte TRUE oder beide FALSE sind, lautet die Ausgabe 0.

Weitere Informationen zur Funktionsweise von booleschen mathematischen Werkzeugen

Abbildung

Abbildung: Boolean XOr
OutRas = BooleanXOr(InRas1, InRas2)

Verwendung

  • Die booleschen mathematischen Werkzeuge interpretieren die Eingaben als boolesche Werte, wobei Werte ungleich 0 als wahr angesehen werden und der Wert 0 als falsch angesehen wird.

  • Zwei Eingaben sind notwendig, damit diese boolesche Auswertung stattfindet.

  • Für dieses Werkzeug ist die Reihenfolge der Eingaben irrelevant.

  • Wenn die Eingabewerte Gleitkommawerte sind, werden sie in ganzzahlige Werte von entweder 0 oder 1 konvertiert, bevor der Vorgang ausgeführt wird. Wenn der Eingabewert ein Gleitkommawert von 0,0 ist, wird er in einen ganzzahligen Wert von 0 konvertiert. Wenn die Eingabe ein beliebiger anderer Wert als 0,0 ist, wird sie in einen ganzzahligen Wert von 1 konvertiert. Beispielsweise werden die eingegebenen Gleitkommawerte 0,6, 32,22 und -4,2 alle als ein Wert von 1 verarbeitet. Die Ausgabewerte sind immer ganzzahlig.

  • Wenn beide Eingaben Einzelband-Raster sind oder wenn eine der Eingaben eine Konstante ist, dann ist die Ausgabe ein Einzelband-Raster.

  • Wenn beide Eingaben Multiband-Raster sind oder wenn eine der Eingaben eine Konstante ist, dann ist die Ausgabe ein Multiband-Raster. Die Anzahl an Bändern in jeder Multiband-Eingabe muss identisch sein.

  • Das Werkzeug führt den Vorgang für jedes Band aus einer Eingabe mit dem entsprechenden Band aus der anderen Eingabe durch. Wenn eine der Eingaben ein Multiband-Raster und die andere Eingabe eine Konstante ist, führt das Werkzeug den Vorgang für jedes Band in der Multiband-Eingabe mit dem konstanten Wert durch.

  • In Map Algebra ist das entsprechende Operatorsymbol für dieses Werkzeug "^" (Link).

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Syntax

BooleanXOr(in_raster_or_constant1, in_raster_or_constant2)
ParameterErklärungDatentyp
in_raster_or_constant1

Die erste Eingabe, die bei dieser booleschen Operation verwendet werden soll.

Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Um eine Zahl für beide Eingaben anzugeben, müssen Sie zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen.

Raster Layer; Constant
in_raster_or_constant2

Die zweite Eingabe, die bei dieser booleschen Operation verwendet werden soll.

Für diesen Parameter kann eine Zahl als Eingabe verwendet werden, vorausgesetzt für den anderen Parameter wird ein Raster angegeben. Um eine Zahl für beide Eingaben anzugeben, müssen Sie zunächst in der Umgebung die Zellengröße und die Ausdehnung festlegen.

Raster Layer; Constant

Rückgabewert

NameErklärungDatentyp
out_raster

Das Ausgabe-Raster.

Die Ausgabezellenwerte sind entweder 0 oder 1.

Raster

Codebeispiel

BooleanXOr – Beispiel 1 (Python-Fenster)

In diesem Beispiel wird eine Operation mit "Boolean XOr" für zwei Grid-Raster ausgeführt und das Ergebnis als TIFF-Raster ausgegeben.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanXOr = BooleanXOr("degs", "negs")
outBooleanXOr.save("C:/sapyexamples/output/outboolxor.tif")
BooleanXOr – Beispiel 2 (eigenständiges Skript)

In diesem Beispiel wird eine Operation mit "Boolean XOr" für zwei Grid-Raster ausgeführt.

# Name: BooleanXOr_Ex_02.py
# Description: Performs a Boolean Exclusive 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 BooleanXOr
outBooleanXOr = BooleanXOr(inRaster1, inRaster2)

# Save the output 
outBooleanXOr.save("C:/sapyexamples/output/outboolxor")

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst oder Image Analyst
  • Standard: Erfordert Spatial Analyst oder Image Analyst
  • Advanced: Erfordert Spatial Analyst oder Image Analyst

Verwandte Themen