~ (Boolean Not) operator

Disponible con una licencia de Spatial Analyst.

Disponible con licencia de Image Analyst.

Resumen

Performs a Boolean-complement (Not) operation on the cell values of the input raster.

Ilustración

Boolean Not illustration
OutRas = ~ Raster("InRas1")

Debate

The ~ operator will perform a Boolean Not operation when the input (operand) is a raster. If the input (operand) is a number, then the ~ operator will perform a Bitwise Not operation. For more information on how to work with operators, refer to Working with operators.

Cuando se utilizan varios operadores en una expresión, no necesariamente se ejecutan por orden de izquierda a derecha. El operador con el valor de jerarquía más alto será el que se ejecute primero. Para obtener más información, consulte la tabla de jerarquía del operador en Trabajar con operadores en Álgebra de mapas. Puede utilizar paréntesis para controlar el orden de ejecución.

Los operadores booleanos (~, &, ^, |) tienen un nivel más alto en la jerarquía que los operadores relacionales (<, <=, >, >=, ==, !=). Por consiguiente, los operadores booleanos se utilizan en la misma expresión que los operadores relacionales, pero los booleanos se ejecutan primero. Para cambiar el orden de la ejecución, utilice paréntesis.

Cuando se utilizan varios operadores booleanos y/o relacionales en una sola expresión, en algunos casos puede producirse un error de ejecución. Para evitar este posible problema, utilice paréntesis adecuados en la expresión para definir de manera explícita el orden de ejecución de los operadores. Para obtener más información, consulte la sección de reglas de sentencias complejas de Crear sentencias complejas.

Only a single input is necessary for the Boolean evaluation to take place.

Si los valores de entrada son de punto flotante, se convierten en valores enteros mediante truncamiento antes de que se realice la operación booleana. Los valores de salida siempre son enteros.

Si esta entrada es un ráster multibanda, la salida será un ráster multibanda. El operador realizará la operación en cada banda en la entrada.

Si la entrada es un ráster multidimensional, se procesarán todas las porciones de todas las variables y la salida será un ráster multidimensional.

Parámetros

OperandoExplicaciónTipo de datos
in_raster_or_constant

The input to use in the Boolean Not operation.

Raster Layer | Constant

Muestra de código

~ (Boolean Not) example 1 (Python window)

This sample performs a Boolean Not (complement) operation on an input raster.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outBooleanNot = ~ Raster("degs")
outBooleanNot.save("C:/sapyexamples/output/outboolnot.tif")
~ (Boolean Not) example 2 (stand-alone script)

This sample performs a Boolean Not (complement) operation on an input raster.

# Name: Op_BooleanNot_Ex_02.py
# Description: Performs a Boolean complement (NOT) operation on the
#              cell values of an input raster
# 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
inRaster = Raster("degs")

# Execute BooleanNot
outBooleanNot = ~ inRaster

# Save the output 
outBooleanNot.save("C:/sapyexamples/output/outboolnot")

Temas relacionados