• 输入栅格中的其他属性(若有的话)将按照原样添加到输出栅格属性表。 根据所记录的属性,某些属性值可能需要重新计算。

  • 将多波段栅格指定为 输入栅格 (Python 中的 in_raster )值时,将使用所有波段。

    要处理一系列来自多波段栅格的波段,请首先使用 波段合成 工具创建由这些特定波段组成的栅格数据集。 然后将结果用作 输入栅格 (Python 中的 in_raster )值。

    默认输出格式为地理数据库栅格。 如果将 Esri 格网堆栈指定为输出格式,则堆栈的名称不能以数字开头、不能使用空格且长度不得超过九个字符。

  • 当为输入栅格掩膜指定多波段栅格时,将只在运算中使用第一个波段。

  • 输入栅格 (Python 中的 in_raster )值和 输入栅格掩膜或要素掩膜数据 栅格数据(Python 中的 in_mask_data )具有相同的像元大小,且像元对齐,则可将其直接应用于工具中。 在工具运行期间,系统不会对其进行内部重采样。

    如果像元大小不同,则输出像元大小将为输入的最大值,而 输入栅格 值将在内部用作捕捉栅格。 如果像元大小相同,但是像元未对齐,则 输入栅格 值将在内部用作捕捉栅格。 在执行提取操作之前,上述任一情况都会触发内部重采样。

    有关详细信息,请参阅 像元大小 捕捉栅格 环境主题。

  • 默认情况下,如果掩膜输入为一个要素,将使用 输入栅格 值中的像元大小和像元对齐(捕捉栅格)从内部将其转换为栅格。

  • 运行 按掩膜提取 工具时,如果在环境设置中指定了 掩膜 ,则输出栅格仅包含位于环境掩膜和输入掩膜数据交集内区域的像元值。

  • 您可以使用 分析范围 (Python 中的 analysis_extent )参数为独立工具操作显式指定输出分析区域,或将环境设置覆盖为工作流的一部分。 通过输入值、选择显示范围、选择图层或浏览输入数据集,可以指定范围。

  • 默认 分析范围 值是根据 输入栅格 值与 输入栅格或要素掩膜数据 值的交集计算得出的。

  • 如果未将分析范围显式指定为参数值,则将从分析环境设置中获取。

  • 有关适用于此工具的地理处理环境的详细信息,请参阅 分析环境和 Spatial Analyst

  • 参数

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

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

    Raster Layer
    输入栅格数据或要素掩膜数据

    用于定义要提取的像元位置的输入掩膜数据。

    它可以是栅格,也可以是要素数据集。

    当输入掩膜数据为栅格时,将在输出栅格中为掩膜数据中的 NoData 像元指定 NoData 值。

    当输入掩膜是要素数据时,如果输入栅格中像元的中心位于要素指定形状内,则会在输出中包含这些像元,而其中心落在要素周长之外的像元将会收到 NoData。

    Raster Layer; Feature Layer
    提取区域
    (可选)

    指定是选择输入掩膜定义的位置内部还是外部的像元并将其写入输出栅格。

    • 内部 将选择输入掩膜内部的像元并将其写入输出栅格。 掩膜外部的所有像元都将在输出栅格中获得 NoData 值。 这是默认设置。
    • 外部 将选择输入掩膜外部的像元并将其写入输出栅格。 掩膜覆盖的所有像元均会获得 NoData。
    String
    分析范围
    (可选)

    用于定义待提取区域的范围。

    默认情况下,该范围是根据 输入栅格 值与 输入栅格或要素掩膜数据 值的交集计算得出的。 处理可能会超出 x 和 y 坐标范围,在此范围之外的像元将为 NoData。

    使用通过左箭头和下箭头识别的参数定义待提取区域左下方的坐标,并使用通过右箭头和上箭头识别的参数定义右上方的坐标。

    如果分析环境未显式设置,则将指定坐标使用与输入栅格相同的地图单位。

    Extent

    返回值

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

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

    Raster

    ExtractByMask(in_raster, in_mask_data, {extraction_area}, {analysis_extent})
    名称 说明 数据类型
    in_raster

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

    Raster Layer
    in_mask_data

    用于定义要提取的像元位置的输入掩膜数据。

    它可以是栅格,也可以是要素数据集。

    当输入掩膜数据为栅格时,将在输出栅格中为掩膜数据中的 NoData 像元指定 NoData 值。

    当输入掩膜是要素数据时,如果输入栅格中像元的中心位于要素指定形状内,则会在输出中包含这些像元,而其中心落在要素周长之外的像元将会收到 NoData。

    Raster Layer; Feature Layer
    extraction_area
    (可选)

    指定是选择输入掩膜定义的位置内部还是外部的像元并将其写入输出栅格。

    • INSIDE 将选择输入掩膜内部的像元并将其写入输出栅格。 掩膜外部的所有像元都将在输出栅格中获得 NoData 值。 这是默认设置。
    • OUTSIDE 将选择输入掩膜外部的像元并将其写入输出栅格。 掩膜覆盖的所有像元均会获得 NoData。
    String
    analysis_extent
    (可选)

    Extent 类用于确定输出栅格数据集的范围。

    Extent 类的形式如下:

    • Extent (XMin, YMin, XMax, YMax)

      其中:

      • XMin - 范围 X 最小值
      • YMin - 范围 Y 最小值
      • XMax - 范围 X 最大值
      • YMax - 范围 Y 最大值

    如果未指定,则默认范围为 in_raster 值和 in_mask_data 值的交集。

    如果分析环境未显式设置,则将指定坐标使用与输入栅格相同的地图单位。

    Extent

    返回值

    名称 说明 数据类型
    out_raster

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

    Raster

    代码示例

    按掩膜提取 (ExtractByMask) 示例 1(Python 窗口)

    本示例将从栅格内提取由输入面 shapefile 要素类所定义的掩膜内的像元。

    import arcpy
    from arcpy import env
    from arcpy.sa import *
    env.workspace = "C:/sapyexamples/data"
    outExtractByMask = ExtractByMask("elevation", "mask.shp", "INSIDE")
    outExtractByMask.save("C:/sapyexamples/output/maskextract")
    按掩膜提取 (ExtractByMask) 示例 2(独立脚本)

    本示例将从栅格内提取位于由输入面 shapefile 要素类所定义的掩膜外部所有区域的像元,同时保留输入栅格的输出范围。

    # Name: ExtractByMask_Ex_02.py
    # Description: Extracts the cells of a elevation raster for all areas outside of the mask features.
    #     Keeping the output extent of the input elevation raster. 
    # 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"
    inMaskData = "mask.shp"
    extraction_area = "OUTSIDE"
    analysis_extent = "elevation"
    # Execute ExtractByMask
    outExtractByMask = ExtractByMask(inRaster, inMaskData, extraction_area, analysis_extent)
    # Save the output 
    outExtractByMask.save("C:/sapyexamples/output/extractmask")