边界清理 (Spatial Analyst)

摘要

通过扩展和收缩来平滑区域间的边界。

了解有关“边界清理”工作原理的详细信息

插图

Boundary Clean illustration
OutRas = BoundaryClean(InRas1)

用法

语法

BoundaryClean (in_raster, {sort_type}, {number_of_runs})
参数说明数据类型
in_raster

将平滑区域之间边界的输入栅格。

必须为整型。

Raster Layer
sort_type
(可选)

指定要在平滑处理中使用的排序类型。

这将确定像元可扩展到相邻像元的优先级。

  • NO_SORT 不按大小排序。值较大的区域具有较高的优先级,可以扩展到值较小的若干区域。 这是默认设置。
  • DESCEND 以大小的降序顺序对区域进行排序。总面积较大的区域具有较高的优先级,可以扩展到总面积较小的若干区域。
  • ASCEND 以大小的升序顺序对区域进行排序。总面积较小的区域具有较高的优先级,可以扩展到总面积较大的若干区域。
String
number_of_runs
(可选)

指定发生平滑处理过程的方向的数目。

  • TWO_WAY 根据排序类型执行扩展和收缩,然后使用相反的优先级多执行一次收缩和扩展。 这是默认设置。
  • ONE_WAY 根据排序类型执行扩展和收缩一次。
Boolean

返回值

名称说明数据类型
out_raster

输出概化的栅格。

将对输入中的区域间边界进行平滑处理。

Raster

代码示例

边界清理 (BoundaryClean) 示例 1(Python 窗口)

本示例执行双向处理以降序顺序平滑区域间边界。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
OutBndCln = BoundaryClean("land", "DESCEND", "TWO_WAY")
OutBndCln.save("c:/sapyexamples/output/bndcln_des2")
边界清理 (BoundaryClean) 示例 2(独立脚本)

本示例执行双向处理以降序顺序平滑区域间边界。

# Name: BoundaryClean_Ex_02.py
# Description: Smoothes the boundary between zones 
#              by expanding and shrinking it.
# 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 = "land"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute BoundaryClean
OutBndCln = BoundaryClean(inRaster, "ASCEND", "TWO_WAY")

# Save the output 
OutBndCln.save("c:/sapyexamples/output/bndcln_asc2")

环境

相关主题

许可信息

ArcView: 需要 Spatial Analyst
ArcEditor: 需要 Spatial Analyst
ArcInfo: 需要 Spatial Analyst

7/10/2012