需要 Spatial Analyst 许可。
获得 Image Analyst 许可后可用。
描述
定义通过指定半径(以地图单位或像元数为单位)而创建的圆形邻域。
插图
讨论
使用圆形邻域对象的工具包括:块统计、焦点统计、点统计以及点密度。
许可:
如果具有 Image Analyst 扩展模块许可,也可以使用该类,但仅限于焦点统计工具。
通过指定 radius 值来创建圆形邻域。radius 以像元或地图单位为单位,并沿垂直于 x 轴或 y 轴的方向进行测量。采用地图单位指定半径时,会将其转换为以像元为单位的半径。所得的以像元为单位的半径会生成一个区域,该区域能够近似地表示出使用原始的地图单位为半径时计算的区域。在执行邻域处理时,所有中心位于圆形中的像元都会参与运算。
语法
NbrCircle ({radius}, {units})
参数 | 说明 | 数据类型 |
radius | 圆形邻域的半径。 (默认值为 3) | Double |
units | 定义邻域单位。
(默认值为 CELL) | String |
属性
属性 | 说明 | 数据类型 |
radius (可读写) | 圆形邻域的半径。 | Double |
units (可读写) | 定义邻域单位。 | String |
代码示例
演示如何创建 NbrCircle 类以及如何在 Python 窗口的 BlockStatistics 工具中使用该类。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNbrC = BlockStatistics("block", NbrCircle(2, "MAP"))
outNbrC.save("C:/sapyexamples/output/blstatsnbrc2")
使用 NbrCircle 类执行 BlockStatistics 工具。
# Name: NbrCircle_Ex_02.py
# Description: Uses the NbrCircle object to execute BlockStatistics tool.
# 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 = "block"
# Create the Neighborhood Object
radius = 2
myNbrCirc = NbrCircle(radius, "MAP")
# Execute BlockStatistics
outBlkStat = BlockStatistics(inRaster, myNbrCirc, "MINIMUM", "DATA")
# Save the output
outBlkStat.save("C:/sapyexamples/output/blstat_cir3")