Доступно с лицензией Spatial Analyst.
Доступно с лицензией Image Analyst.
Сводка
Значение из растра положения используется для определения, из какого растра в списке входных растров будет получено выходные значения ячеек.
Иллюстрация
Использование
Значение каждой ячейки Входного растра положения (in_position_raster в Python) определяет то, какой входной растр будет использован для получения значения выходного растра. Например, если ячейка во Входном растре положения имеет значение 1, значение из первого входного растра в списке будет использоваться для выходного значения ячейки. Если входной растр положения имеет значение 2, выходное значение будет взято из второго растра в списке и т. д.
Порядок входных растров или постоянных значений (in_rasters_or_constants в Python) важен для этого инструмента. Если порядок растров поменяется, изменится и результат.
Если значение ячейки во Входном растре положения нулевое или отрицательное, результатом будет значение NoData. Если значение положения больше количества растров в списке, результатом будет значение NoData.
Если Входной растр положения содержит числа с плавающей точкой, перед началом обработки значения будут округлены до целых.
Любые ячейки со значением NoData на растре положения получат на выходном растре также значение NoData.
Если любой из растров во входном списке представлен числами с плавающей точкой, выходной растр будет также содержать числа с плавающей точкой. Если все входные растры целочисленные, выходной растр будет целочисленным.
Если параметр Обработать как многоканальный не отмечен ( для process_as_multiband задано SINGLE_BAND в Python), будет использоваться только первый канал многоканального Входного растра положения (in_position_raster в Python). Каждый канал многоканального Входного растра или постоянного значения (in_rasters_or_constants в Python) будет обрабатываться отдельно - как одноканальный растр.
Если отмечен параметр Обработать как многоканальный (для process_as_multiband задано MULTI_BAND в Python), каждый многоканальный входной растр будет обрабатываться, как многоканальный растр.
Число каналов выходного растра зависит от Входного растра положения. Если Входной растр положения одноканальный, выходной канал будет содержать максимальное число каналов всех многоканальных растров из параметра Входные растры или постоянные значения. Если Входной растр положения многоканальный, выходной канал будет содержать такое же число каналов, что и Входной растр положения.
Если любой из Входных растров или постоянных значений является растром с числом каналов, меньшим, чем содержится в выходном растре, отсутствующие каналы будут интерпретированы, как каналы, заполненные значениями NoData. Если значение ячейки Входного растра положения берет значение отсутствующего канала, выходной растр получит значение NoData. Если любой из Входных растров или постоянных значений - константа, это будет интерпретироваться как многоканальный растр, все значения во всех каналах которого будут равны этому значению, а число каналов будет соответствовать числу каналов выходного растра.
Синтаксис
Pick(in_position_raster, in_rasters_or_constants, {process_as_multiband})
Parameter | Объяснение | Тип данных |
in_position_raster | Входной растр, определяющий положение растра, используемого для получения выходного значения. Это может быть целочисленный растр или растр с плавающей точкой. | Raster Layer |
in_rasters_or_constants [in_raster_or_constant,...] | Список входных растров, из которого будет выбрано выходное значение. Это могут быть целочисленные растры или представленные значениями с плавающей точкой. В качестве входных данных может использоваться число. | Raster Layer; Constant |
process_as_multiband (Дополнительный) | Задает способ обработки каналов входного многоканального растра.
| Boolean |
Значение отраженного сигнала
Name | Объяснение | Тип данных |
out_raster | Выходной растр. | Raster |
Пример кода
В этом примере присваивается выходное значение на основе порядка нескольких входных растров.
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")
В этом примере присваивается выходное значение на основе порядка нескольких входных растров.
# 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")
Environments
Информация о лицензиях
- Basic: Требуется Image Analyst or Spatial Analyst
- Standard: Требуется Image Analyst or Spatial Analyst
- Advanced: Требуется Image Analyst or Spatial Analyst