需要 Spatial Analyst 许可。
描述
在点要素类的指定位置提取一个或多个栅格像元值,并将这些值记录到点要素类的属性表中。
使用
此工具可修改输入点要素,并可更改其内部要素 ID(可将其命名为 ObjectID、FID 或 OID)。在执行分析之前,建议在属性表中使用唯一的 ID 字段。
系统将从每个位置的所有输入栅格中提取像元值。包含每个输入栅格像元值的新字段将追加到输入点要素类。
输入栅格表中的其他属性(若有的话)将不会追加到输入点要素。
输入栅格不会进行重采样以支持分析环境。相反,系统将以所有输入栅格的原始分辨率和空间参考来提取像元值,方法是将输入位置投影到从中提取值的栅格空间参考。
但是,分析环境将应用于输入位置。
从输入栅格的 NoData 像元中提取值的位置将在输出表中被赋予 <空> 值。对于 shapefile,由于不支持空字段,因此 NoData 像元在表中以值 -9999 表示。
shapefile 格式将字段名称的最大长度限制为 10 个字符。因此,对于追加到输入 shapefile 属性表中的任何字段,其名称都将被截断并获得唯一值。如果名称很长或很相似,则可能导致各字段间难以区分。在这种情况下,建议您将输入 shapefile 复制到文件地理数据库,然后将要素类用于分析。
如果使用 XY 事件图层定义了输入点要素(Python 中的 in_point_features),则基础事件表将直接更新。如果基础表为只读,则该工具将失败。
该工具将无法用多点要素执行。要使用多点要素执行分析,首先请将其转换为单点要素,然后在提取工具中使用。有关详细信息,请参阅处理多点数据。
可以为输入栅格(Python 中的 in_rasters)参数指定任意栅格(单波段或多波段)组合。
将多波段栅格指定为输入栅格(Python 中的 in_rasters)之一时,将使用该输入中的所有波段。
要处理一系列来自输入多波段栅格的波段,请首先用波段合成工具创建由这些特定波段组成的新栅格数据集。在输入栅格列表中使用该结果。
当输入多波段栅格时,为所有波段添加的输出字段的名称中将包含指示波段号的 b1_, b2_, …bn 前缀。
默认情况下,将根据输入栅格的名称来创建输出字段的名称;或者,您也可以为每个存储栅格值的字段指定唯一名称。
插值选项决定了从栅格中获取值的方式。默认选项是在输入位置提取准确的像元值。要使用双线性方法提取内插值,请选中点位置值的双线性插值法选项。在 Python 中,您需要将 bilinear_interpolate_values 参数设置为 BILINEAR。
如果在掩膜环境中指定了一个要素,则系统将使用输入栅格的最小像元大小创建内部栅格。提取过程中,内部掩模栅格将被再次重采样到每个输入栅格的像元大小。
有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。
语法
ExtractMultiValuesToPoints(in_point_features, in_rasters, {bilinear_interpolate_values})
参数 | 说明 | 数据类型 |
in_point_features | 要添加栅格值的输入点要素。 | Feature Layer |
in_rasters [Raster, {Output Field Name}] | 要基于输入点要素的位置提取的输入栅格值。 您还可以为存储栅格值的字段指定名称。默认情况下,将根据输入栅格数据集的名称创建唯一的字段名称。 | Extract Values |
bilinear_interpolate_values (可选) | 指定是否使用插值。
| Boolean |
派生输出
名称 | 说明 | 数据类型 |
out_point_features | 已更新的点要素。 | 要素类 |
代码示例
多值提取至点 (ExtractMultiValuesToPoints) 示例 1(Python 窗口)
将多个栅格的像元值提取到 shapefile 点要素类的属性中。
import arcpy
from arcpy.sa import *
from arcpy import env
env.workspace = "c:/sapyexamples/data"
ExtractMultiValuesToPoints("observers.shp", [["elevation", "ELEV"],
["costraster", "COST"], ["flowdir", "DIR"]], "NONE")
多值提取至点 (ExtractMultiValuesToPoints) 示例 2(独立脚本)
使用插值法将多个栅格的像元值提取到 shapefile 点要素类的属性中。
# Name: ExtractMultiValuesToPoints_Ex_02.py
# Description: Extracts the cells of multiple rasters as attributes in
# an output point feature class. This example takes a multiband IMG
# and two GRID files as input.
# 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
inPointFeatures = "poi.shp"
inRasterList = [["doqq.img", "doqqval"], ["redstd", "focalstd"],
["redmin", "focalmin"]]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractValuesToPoints
ExtractMultiValuesToPoints(inPointFeatures, inRasterList, "BILINEAR")
环境
许可信息
- Basic: 需要 Spatial Analyst
- Standard: 需要 Spatial Analyst
- Advanced: 需要 Spatial Analyst