多边形提取 (空间分析)

摘要

基于多边形提取栅格像元。

用法

语法

ExtractByPolygon (in_raster, polygon, {extraction_area})
参数说明数据类型
in_raster

从其中提取像元的输入栅格。

Raster Layer
polygon
[point,...]

用于定义要提取的输入栅格区域的一个或多个多边形。

每个多边形部分都是由类定义的一系列折点。作为可选的,可使用多边形类来定义各个多边形部分。

点将指定为 x,y 坐标对。对象形式为:

  • [[point(x1,y1), point(x2,y2),point(xn,yn),...point(x1,y1)], [point(x'1,y'1), point(x'2,y'2),point(x'n,y'n),...,point(x'1,y'1)]

请注意,最后一个坐标应与第一个坐标相同,从而使多边形闭合。

Point
extraction_area
(可选)

标识要提取输入多边形内部还是输入多边形外部的像元。

  • INSIDE 指定应选择输入多边形内部的像元并将其写入输出栅格的关键字。多边形区域外部的所有像元都将在输出栅格中获得 NoData 值。
  • OUTSIDE 指定应选择输入多边形外部的像元并将其写入输出栅格的关键字。多边形区域内部的所有像元都将在输出栅格中获得 NoData 值。
String

返回值

名称说明数据类型
out_raster

包含从输入栅格中提取的像元值的输出栅格。

Raster

代码示例

多边形提取 (ExtractByPolygon) 示例 1(Python 窗口)

本示例将基于定义的多边形坐标提取栅格的像元。

import arcpy
from arcpy import env
from arcpy.sa import *
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), 
             arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]
env.workspace = "C:/sapyexamples/data"
extPolygonOut = ExtractByPolygon("soil", polyPoints, "INSIDE")
extPolygonOut.save("c:/sapyexamples/output/extpoly")
多边形提取 (ExtractByPolygon) 示例 2(独立脚本)

本示例将基于定义的多边形坐标提取栅格的像元。

# Name: ExtractByPolgyon_Ex_02.py
# Description: Extracts the cells of a raster based on a polygon.
# 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 = "soil"
polyPoints = [arcpy.Point(743050, 4321275), arcpy.Point(743100, 4321200), 
             arcpy.Point(743500, 4322000),arcpy.Point(742900, 4321800)]

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

# Execute ExtractByPolygon
extPolygonOut = ExtractByPolygon(inRaster, polyPoints, "INSIDE")

# Save the output 
extPolygonOut.save("c:/sapyexamples/output/extpoly02")

环境

相关主题

许可信息

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

7/10/2012