需要 Spatial Analyst 许可。
描述
通过指定圆心和半径,基于圆提取栅格像元。
插图
使用
输入栅格中的其他属性(若有的话)将按照原样添加到输出栅格属性表。根据所记录属性的性质,某些属性值可能需要重新计算。
将多波段栅格指定为输入栅格(Python 中的 in_raster)时,将使用所有波段。
要处理一系列来自多波段栅格的波段,请首先用波段合成工具创建由这些特定波段组成的新栅格数据集,并将结果用作输入栅格(Python 中的 in_raster)。
默认输出格式为地理数据库栅格。如果输出格式指定为 Esri 格网栈,请注意名称不得以数字开头,不得使用空格且长度不能超过九个字符。
可通过像元的中心来确定该像元是位于圆的内部还是位于圆的外部。如果中心位于圆弧的内部,则即使部分像元落在圆外,也会将此像元视为完全处于圆内。
未选择的像元位置被赋予 NoData 值。
如果输入栅格为整型,那么输出栅格也为整型。如果输入栅格为浮点型,则输出栅格也为浮点型。
有关适用于此工具的地理处理环境的详细信息,请参阅分析环境和 Spatial Analyst。
语法
ExtractByCircle(in_raster, center_point, radius, {extraction_area})
参数 | 说明 | 数据类型 |
in_raster | 提取像元的输入栅格。 | Raster Layer |
center_point | Point 类指示了用于定义提取区域的圆的中心坐标 (x,y)。 该类的形式为:
将指定坐标使用与输入栅格相同的地图单位。 | Point |
radius | 用于定义提取区域的圆半径。 将以地图单位指定半径,并且与输入栅格的单位相同。 | Double |
extraction_area (可选) | 标识要提取输入圆内部还是输入圆外部的像元。
| String |
返回值
名称 | 说明 | 数据类型 |
out_raster | 包含从输入栅格中提取的像元值的输出栅格。 | Raster |
代码示例
ExtractByCircle 示例 1(Python 窗口)
本示例将在某一点位置方圆 500 米的半径范围内提取像元。
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outExtCircle = ExtractByCircle("elevation", arcpy.Point(482838.823, 222128.982),
500, "INSIDE")
outExtCircle.save("c:/sapyexamples/output/extcircle")
ExtractByCircle 示例 2(独立脚本)
本示例将在某一点位置方圆 1,000 米的半径范围内提取像元。
# Name: ExtractByCircle_Ex_02.py
# Description: Extracts the cells of a raster based on a circle.
# 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 = ("elevation")
centerPoint = arcpy.Point(482838.823, 222128.982)
circRadius = 1000
extractType = "INSIDE"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ExtractByCircle
outExtCircle = ExtractByCircle(inRaster, centerPoint, circRadius,
extractType)
# Save the output
outExtCircle.save("c:/sapyexamples/output/extcircle02")
环境
许可信息
- Basic: 需要 Spatial Analyst
- Standard: 需要 Spatial Analyst
- Advanced: 需要 Spatial Analyst