创建渔网 (数据管理)

摘要

创建由矩形像元组成的渔网。 输出可以是折线或面要素。

了解有关“创建渔网”的工作原理的详细信息

使用情况

  • 可通过在模板范围参数中输入要素类或图层,或通过设置输出坐标系环境变量,来设置输出的坐标系。

  • 除了创建输出渔网之外,如果选中了创建标注点参数,则会新建一个包含在每一渔网像元的中心位置标注点的点要素类。 此要素类后缀为 _label,与输出要素类的名称、创建位置均相同。

  • 使用几何类型参数,可以创建输出折线像元(默认)或面像元。 创建面渔网可能会更慢,具体取决于行数和列数。

  • 像元宽度像元高度参数值的单位相同,均由输出要素类定义。

参数

标注说明数据类型
输出要素类

包含由矩形像元组成的渔网的输出要素类。

Feature Class
渔网原点坐标

渔网的起始枢轴点。

Point
Y 轴坐标

y 轴坐标用于定向渔网。 渔网旋转的角度与连接原点和 y 轴坐标的线所定义的角度相同。

Point
像元宽度

每个像元的宽度。 要使用行数参数值计算像元宽度,请将此参数留空或将值设置为零;这样工具运行时将自动计算宽度。

Double
像元高度

每个像元的高度。 要使用列数参数值计算像元高度,请将此参数留空或将值设置为零;这样工具运行时将自动计算高度。

Double
行数

渔网所含的行数。 要使用像元宽度参数值计算行数,请将此参数留空或将值设置为零;这样工具运行时将自动计算行数。

Long
列数

渔网所含的列数。 要使用像元高度参数值计算列数,请将此参数留空或将值设置为零;这样工具运行时将自动计算列数。

Long
渔网对角
(可选)

使用渔网原点坐标参数设置的渔网对角。 如果指定了模板范围参数,则会自动设置对角的值。

如果指定了渔网原点坐标Y 轴坐标像元宽度像元高度行数列数参数,则此参数无效。

Point
创建标注点
(可选)

指定是否创建包含在每个渔网像元中心标注点的点要素类。

  • 选中 - 将创建点要素类。 这是默认设置。
  • 未选中 - 不创建点要素类。
Boolean
模板范围
(可选)

渔网范围。 可以通过指定坐标或使用模板数据集来输入范围。

  • 当前显示范围 地图视图 - 范围基于活动地图或场景。 仅在存在活动地图时,才可使用此选项。
  • 绘制范围 构造直角并完成草图 - 范围将基于在地图或场景上绘制的矩形。 此选项将在工程地理数据库中创建要素类并将图层添加至地图。 该要素类的坐标系将与地图相同。
    注:

    环境对话框中不提供此选项。 只能在具有范围数据类型的工具参数中或工具对话框的环境选项卡中找到此选项。

    注:

    当选中从“编辑”选项卡启用和禁用编辑编辑选项时,必须在编辑功能区选项卡上启用编辑才能绘制范围。

  • 图层范围 Layer - 范围基于活动地图图层。 使用下拉列表选择可用图层,或使用所有图层中数据的范围选项获取所有活动地图图层(不包括底图)的组合范围。 仅在存在具有图层的活动地图时,才可使用此选项。

    每个地图图层具有以下选项:

    • 所有要素 全选 - 图层中所有要素的范围。
    • 选定要素Area from Selected Features - 图层中选定要素的范围。
    • 可见要素 Extent Indicator - 图层中可见要素的范围。
      注:

      选定要素 Area from Selected Features可见要素 Extent Indicator 选项中的范围仅适用于要素图层。

  • 浏览 浏览 - 范围基于现有数据集。
  • 剪贴板 粘贴 - 可在剪贴板中复制和粘贴范围。
    • 复制范围 复制 - 将范围坐标和坐标系复制到剪贴板。
    • 使用粘贴范围 粘贴 - 从剪贴板粘贴范围坐标和(可选)坐标系。 如果剪贴板值不包含坐标系,则范围将使用地图的坐标系。
    注:

    将使用与 ArcPy Extent 对象相同的格式和顺序从剪贴板中复制和粘贴范围坐标:x-min、y-min、x-max、y-max 和空间参考。

  • 重置范围 重置 - 将范围重置为默认值。
  • 手动输入坐标 - 坐标必须是数值,并且与活动地图的坐标系相匹配。
    警告:

    地图可能使用与输入的坐标不同的显示单位。 不支持使用主方向(N、S、E、W)。 在南纬和西经坐标中使用负号。

Extent
几何类型
(可选)

指定输出渔网像元是折线要素还是面要素。

  • 折线输出将为折线要素类。 每个像元都由四个线要素定义。
  • 输出将为面要素类。 每个像元都由一个面要素定义。
String

派生输出

标注说明数据类型
输出标注要素类(可选)

创建一个新的点要素类,其中每个渔网像元中心都具有标注点

如果选中了创建标注点参数,则会创建一个新的点要素类,其中每个渔网像元中心都具有标注点。 此要素类后缀为 _label,与输出要素类的名称、创建位置均相同。

如果将 labels 参数设置为 LABELS,则会创建一个新的点要素类,其中每个渔网像元中心都具有标注点。 此要素类后缀为 _label,与输出要素类的名称、创建位置均相同。

Feature Class

arcpy.management.CreateFishnet(out_feature_class, origin_coord, y_axis_coord, cell_width, cell_height, number_rows, number_columns, {corner_coord}, {labels}, {template}, {geometry_type})
名称说明数据类型
out_feature_class

包含由矩形像元组成的渔网的输出要素类。

Feature Class
origin_coord

渔网的起始枢轴点。

Point
y_axis_coord

y 轴坐标用于定向渔网。 渔网旋转的角度与连接原点和 y 轴坐标的线所定义的角度相同。

Point
cell_width

每个像元的宽度。 要使用 number_rows 参数值计算像元宽度,请将此参数留空或将值设置为零;这样工具运行时将自动计算宽度。

Double
cell_height

每个像元的高度。 要使用 number_columns 参数值计算像元高度,请将此参数留空或将值设置为零;这样工具运行时将自动计算高度。

Double
number_rows

渔网所含的行数。 要使用 cell_width 参数值计算行数,请将此参数留空或将值设置为零;这样工具运行时将自动计算行数。

Long
number_columns

渔网所含的列数。 要使用 cell_height 参数值计算列数,请将此参数留空或将值设置为零;这样工具运行时将自动计算列数。

Long
corner_coord
(可选)

使用 origin_coord 参数设置的渔网对角。

如果指定了 origin_coordy_axis_coordcell_widthcell_heightnumber_rowsnumber_columns 参数,则此参数无效。

Point
labels
(可选)

指定是否创建包含在每个渔网像元中心标注点的点要素类。

  • LABELS将创建点要素类。 这是默认设置。
  • NO_LABELS不创建点要素类。
Boolean
template
(可选)

渔网范围。 可以通过指定坐标或使用模板数据集来输入范围。

  • MAXOF - 将使用的所有输入的最大范围。
  • MINOF - 将使用的所有输入共用的最小范围。
  • DISPLAY - 范围与可见显示范围相等。
  • 图层名称 - 将使用指定图层的范围。
  • Extent 对象 - 将使用指定对象的范围。
  • 以空格分隔的坐标字符串 - 将使用指定字符串的范围。 坐标以 x-min,y-min,x-max,y-max 的顺序表示。
Extent
geometry_type
(可选)

指定输出渔网像元是折线要素还是面要素。

  • POLYLINE输出将为折线要素类。 每个像元都由四个线要素定义。
  • POLYGON输出将为面要素类。 每个像元都由一个面要素定义。
String

派生输出

名称说明数据类型
out_label

创建一个新的点要素类,其中每个渔网像元中心都具有标注点

Feature Class

代码示例

CreateFishnet 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何在即时模式下使用 CreateFishnet 函数。

import arcpy

# Create a fishnet with 9 columns and 9 rows
# with origin at (1, 1) and output geometry is set to default (POLYLINE)
arcpy.CreateFishnet_management("C:/data/output/fishnet1.shp", "1 1", "1 9", "1", "1", "9", "9", "#", "NO_LABELS")
CreateFishnet 示例 2(独立脚本)

以下独立脚本显示了如何使用 CreateFishnet 函数创建矩形像元(渔网)。

# Name: CreateFishnet.py
# Description: Creates rectangular cells

# import system module
import arcpy
from arcpy import env

# set workspace environment
env.workspace = "C:/data/output"

# Set coordinate system of the output fishnet
env.outputCoordinateSystem = arcpy.SpatialReference("NAD 1983 UTM Zone 11N")

outFeatureClass = "fishnet10by10.shp"

# Set the origin of the fishnet
originCoordinate = '1037.26 4145.81'

# Set the orientation
yAxisCoordinate = '1037.26 4155.81'

# Enter 0 for width and height - these values will be calcualted by the tool
cellSizeWidth = '0'
cellSizeHeight = '0'

# Number of rows and columns together with origin and opposite corner 
# determine the size of each cell 
numRows =  '10'
numColumns = '10'

oppositeCoorner = '19273.61 18471.17'

# Create a point label feature class 
labels = 'LABELS'

# Extent is set by origin and opposite corner - no need to use a template fc
templateExtent = '#'

# Each output cell will be a polygon
geometryType = 'POLYGON'

arcpy.CreateFishnet_management(outFeatureClass, originCoordinate, yAxisCoordinate, cellSizeWidth, cellSizeHeight, numRows, numColumns, oppositeCoorner, labels, templateExtent, geometryType)

相关主题