栅格转面 (转换)

摘要

将栅格数据集转换为面要素。

使用情况

  • 输入栅格的像元可为任意大小,但必须属于有效的整数型栅格数据集。

  • 字段参数允许您选择将成为输出要素类属性的输入栅格数据集属性字段。若未指定字段,则输入栅格的像元值(VALUE 字段)将在输出要素类的属性表中排成一列(并附加头 Gridcode)。

  • 下图说明了输入栅格在转换为面要素输出时是如何进行矢量化的。针对“简化”参数的两种设置显示结果。

    具有不同简化选项的输出的插图
    比较具有不同简化选项的输出
  • 如果已选中创建多部分要素参数(Python 中的 MULTIPLE_OUTER_PART),则输出将为多部分要素类,且通常处理速度更快。但是,如果输出要素类包含的要素数量过大,则可能会导致内存不足错误。分组过程类似于在融合工具中所使用的相应过程。

  • 每个面的最大折点数参数可用于根据指定的折点限制将面细分为更小的面。当输出要素包含大量折点时,此参数尤其有用。此参数产生的输出与切分工具创建的输出类似。

  • 如果在环境设置中指定了范围,且输出范围的左下角与输入栅格的任何像元角均不匹配,则在处理过程中将移动输入栅格的像元对齐位置,以与指定范围匹配。此移动操作将使用最近邻方法触发输入栅格的重采样。因此,还将移动输出要素的位置,这样一来,生成的输出要素便不会与原始输入栅格完全叠加。可以避免执行此移动操作,方法为将输入栅格用作环境中的捕捉栅格

参数

标注说明数据类型
输入栅格

输入栅格数据集。

栅格数据必须是整型。

Raster Layer
输出面要素

包含已转换面的输出要素类。

Feature Class
简化面
(可选)

用于确定输出的面将平滑为简单的形状还是与输入栅格的像元边缘保持一致。

  • 选中 - 面将平滑处理为简单的形状。面拥有最少线段数,同时尽可能接近原始栅格像元边缘,这就是平滑的实现方式。这是默认设置。
  • 未选中 - 面的边将与输入栅格的像元边缘完全保持一致。使用此选项将面要素类转换回栅格,将产生与原始栅格相同的栅格。
Boolean
字段
(可选)

此字段用于将输入栅格中像元值指定给输出数据集中的面。

栅格字段可为整型或字符串型字段。

Field
创建多部件要素
(可选)

指定输出面是由单部分要素还是多部分要素组成。

  • 选中 - 指定将根据具有相同值的面创建多部分要素。
  • 未选中 - 指定将为每个面创建单个要素。这是默认设置。
Boolean
每个面要素的最大折点数
(可选)

用于将面细分为更小的面的折点限制。此参数产生的输出与切分工具创建的输出类似。

如果留空,则输出面不会被分割。默认值为空。

Long

arcpy.conversion.RasterToPolygon(in_raster, out_polygon_features, {simplify}, {raster_field}, {create_multipart_features}, {max_vertices_per_feature})
名称说明数据类型
in_raster

输入栅格数据集。

栅格数据必须是整型。

Raster Layer
out_polygon_features

包含已转换面的输出要素类。

Feature Class
simplify
(可选)

用于确定输出的面将平滑为简单的形状还是与输入栅格的像元边缘保持一致。

  • SIMPLIFY面将平滑为简单的形状。面拥有最少线段数,同时尽可能接近原始栅格像元边缘,这就是平滑的实现方式。这是默认设置。
  • NO_SIMPLIFY面的边将与输入栅格的像元边缘完全保持一致。使用此选项将面要素类转换回栅格,将产生与原始栅格相同的栅格。
Boolean
raster_field
(可选)

此字段用于将输入栅格中像元值指定给输出数据集中的面。

栅格字段可为整型或字符串型字段。

Field
create_multipart_features
(可选)

指定输出面是由单部分要素还是多部分要素组成。

  • MULTIPLE_OUTER_PART指定将根据具有相同值的面创建多部分要素。
  • SINGLE_OUTER_PART指定将为每个面创建单个要素。这是默认设置。
Boolean
max_vertices_per_feature
(可选)

用于将面细分为更小的面的折点限制。此参数产生的输出与切分工具创建的输出类似。

如果留空,则输出面不会被分割。默认值为空。

Long

代码示例

RasterToPolygon 示例(Python 窗口)

将栅格数据集转换为面要素。

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.conversion.RasterToPolygon("zone", "c:/output/zones.shp", "NO_SIMPLIFY",
                                 "VALUE")
RasterToPolygon 示例(独立脚本)

将栅格数据集转换为面要素。

# Name: RasterToPolygon_Ex_02.py
# Description: Converts a raster dataset to polygon features.
# Requirements: None

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"

# Set local variables
inRaster = "zone"
outPolygons = "c:/output/zones.shp"
field = "VALUE"

# Run RasterToPolygon
arcpy.conversion.RasterToPolygon(inRaster, outPolygons, "NO_SIMPLIFY", field)