支持“掩膜”环境的工具只会考虑运行过程中落入分析掩膜范围内的像元。
插图
用法说明
- 设置分析掩膜表示只处理落入掩膜范围内的位置,而掩膜外的所有位置都将在输出中指定为 NoData。
注:
掩膜环境适用于输出栅格的 Spatial Analyst、Image Analyst 和 Geostatistical Analyst 扩展模块工具。 它也适用于可输出栅格的 3D Analyst 扩展模块栅格插值、栅格计算、栅格重分类和栅格表面工具集中的工具。
- 掩膜可以是栅格或要素数据。
- 如果分析掩膜是栅格,则定义掩膜时将考虑所有具有值的像元。掩膜栅格中的 NoData 像元将视为位于掩膜之外,并且在输出中将为 NoData。
重分类和条件函数等工具对于创建栅格分析掩膜很有帮助。
- 如果分析掩膜是一个要素类或要素图层,则在执行时它将内部转换为栅格。因此,您需要注意应恰当地设置像元大小和捕捉栅格环境以进行分析。
对话框语法
掩膜 - 用于定义工具执行期间要考虑输入数据中哪些位置处的数据集。如果掩膜数据集是栅格,则将使用所有含值的像元构成掩膜。栅格掩膜中的 NoData 像元在输出中将为 NoData。如果将要素数据集作为掩膜的输入,则在执行时它将内部转换为栅格。
脚本语法
arcpy.env.mask = mask_source
参数 | 说明 |
---|---|
mask_source | 定义掩膜的数据集。 数据集可以是栅格或要素数据。 如果数据集是栅格数据集,含值的像元将构成掩膜,而掩膜中的所有 NoData 像元在输出中都将为 NoData。 |
脚本示例
本示例演示了如何在执行 ArcGIS Spatial Analyst extension 工具之前设置掩膜环境。
import arcpy
# Set environment
arcpy.env.workspace = "C:/workspace"
arcpy.env.extent = "C:/data/StudyArea.tif"
arcpy.env.snapRaster = "C:/data/slope_ras.tif"
# Set Mask environment
arcpy.env.mask = "C:/data/maskpoly.shp"
# Set local variables
InZones = "C:/data/parcels.shp"
InZoneField = "Parcel_ID"
InValueRaster = "C:/data/slope_ras.tif"
# Check out a Spatial Analyst license
arcpy.CheckOutExtension("Spatial")
# Process: Calculate the mean slope of each parcel area.
out = arcpy.sa.ZonalStatistics(InZones, InZoneField, InValueRaster, "MEAN",
"DATA")
out.save("mean_ParSlp.tif")