Disponible con una licencia de Spatial Analyst.
Disponible con licencia de Image Analyst.
Resumen
El valor de un ráster de posición se utiliza para determinar desde qué ráster de una lista de rásteres de entrada se obtendrá el valor de la celda de salida.
Ilustración
Uso
El valor de cada celda del Ráster de posición de entrada (in_position_raster en Python) determina qué entrada se utilizará para obtener el valor del ráster de salida. Por ejemplo, si una celda del Ráster de posición de entrada tiene un valor de 1, el valor de la primera entrada en la lista del ráster se utilizará para el valor de la celda de salida. Si la entrada de posición tiene un valor de 2, el valor de salida provendrá de la segunda entrada en la lista de rásteres y así sucesivamente.
El orden de los Valores de rásteres o constantes de entrada (in_rasters_or_constants en Python) es importante para esta herramienta. Si el orden de los rásteres cambia, los resultados cambiarán.
Si el valor de celda del Ráster de posición de entrada es cero o negativo, el resultado será NoData. Si el valor de posición es más grande que la cantidad de rásteres en la lista, el resultado será NoData.
Si el Ráster de posición de entrada es de punto flotante, los valores se truncarán a los enteros antes de que se procesen.
Toda celda con un valor NoData en el ráster de posición recibirá NoData en el ráster de salida.
Si alguno de los rásteres en la lista de entrada es de punto flotante, el ráster de salida será de punto flotante. Si todos son enteros, el ráster de salida será un entero.
Si el parámetro Procesar como multibanda está desactivado (process_as_multiband tiene el valor SINGLE_BAND en Python), solo se usará la primera banda de un Ráster de posición de entrada multibanda (in_position_raster en Python). Cada banda de los Rásteres o valores constantes de entrada multibanda o valores constantes (in_rasters_or_constants en Python) se procesará por separado como un ráster de banda única.
Si el parámetro Procesar como multibanda está activado (process_as_multiband tiene el valor MULTI_BAND en Python), cada entrada de ráster multibanda se procesa como un ráster multibanda.
El número de bandas de la salida depende del Ráster de posición de entrada. Si el Ráster de posición de entrada es de banda única, el número de bandas del ráster de salida tendrá el número máximo de bandas de todos los rásteres multibanda de Valores de rásteres o constantes de entrada. Si el Ráster de posición de entrada es multibanda, el ráster de salida tendrá el mismo número de bandas que el Ráster de posición de entrada.
Si cualquiera de los Valores de rásteres o constantes de entrada es un ráster con un número menor de bandas que el ráster de salida, las bandas ausentes se interpretarán como una banda llena de NoData. Si el valor de celda del Ráster de posición de entrada toma el valor uno de la banda ausente, el ráster de salida recibirá NoData. Si cualquiera de los Rásteres o valores constantes de entrada es una constante, se interpretará como un ráster multibanda, en el que los valores de las celdas de todas las bandas son iguales a la constante y tienen el mismo número de bandas que el ráster de salida.
Sintaxis
Pick(in_position_raster, in_rasters_or_constants, {process_as_multiband})
Parámetro | Explicación | Tipo de datos |
in_position_raster | El ráster de entrada que define la posición del ráster que se utilizará para el valor de salida. La entrada puede ser de ráster entero o punto flotante. | Raster Layer |
in_rasters_or_constants [in_raster_or_constant,...] | La lista de entradas desde la cual se seleccionará el valor de salida. Las entradas pueden ser rásteres enteros o flotantes. También se puede utilizar un número como entrada. | Raster Layer; Constant |
process_as_multiband (Opcional) | Especifica cómo se procesarán las bandas de ráster multibanda de entrada.
| Boolean |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_raster | El ráster de salida. | Raster |
Muestra de código
En este ejemplo se asigna el valor de salida en función del orden de diferentes rásteres de salida.
import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outPick = Pick("cost", ["degs", "negs", "fourgrd"], "SINGLE_BAND")
outPick.save("C:/iapyexamples/output/outpick.tif")
En este ejemplo se asigna el valor de salida en función del orden de diferentes rásteres de salida.
# Name: Pick_Ex_02.py
# Description: Assigns output values using one of a list of rasters
# determined by the value of an input raster.
# Requirements: Spatial 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
inPositionRas = "inzone_MB"
inRas01 = "Ras1_MB"
inRas02 = "Ras2_MB"
inRas03 = "Ras3_MB"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute Pick
outPick = Pick(inPositionRaster, [inRas01, inRas02, inRas03], "MULTI_BAND")
# Save the output
outPick.save("C:/iapyexamples/output/outpick")
Entornos
Información de licenciamiento
- Basic: Requiere Image Analyst or Spatial Analyst
- Standard: Requiere Image Analyst or Spatial Analyst
- Advanced: Requiere Image Analyst or Spatial Analyst