创建渔网 (数据管理)

摘要

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

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

使用情况

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

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

  • 几何类型参数用于选择是创建输出折线像元(默认)还是面像元。创建面渔网可能较慢,具体情况取决于行数和列数。

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

参数

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

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

Feature Class
渔网原点坐标

渔网的起始枢轴点。

Point
Y 轴坐标

Y 轴坐标用于定向渔网。按照原点坐标与 y 轴坐标的连线所定义的角度旋转渔网。

Point
像元宽度

确定每个单元的宽度。如果要使用行数参数值自动计算宽度,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算宽度。

Double
像元高度

确定每个单元的高度。如果要使用列数参数值自动计算高度,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算高度。

Double
行数

确定渔网所含的行数。如果要使用像元宽度参数值自动计算行数,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算行数。

Long
列数

确定渔网所含的列数。如果要使用像元高度参数值自动计算列数,则将该参数留空或将该值设置为零,这样在运行工具时便会自动计算列数。

Long
渔网的对角
(可选)

X 坐标Y 坐标值设置的渔网的对角。如果使用模板范围,则自动设置对角的值。如果已设置原点、Y 轴、像元大小以及行数和列数,则此参数将变为不可用。

Point
创建标注点
(可选)

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

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

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

  • 默认 - 该范围将基于所有参与输入的最大范围设定。这是默认设置。
  • 当前显示范围 - 该范围与数据框或可见显示范围相等。如果没有活动地图,则该选项将不可用。
  • 如下面的指定 - 该范围将基于指定的最小和最大范围值。
  • 浏览 - 该范围将基于现有数据集。
Extent
几何类型
(可选)

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

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

派生输出

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

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

如果选中了创建标注点参数(Python 中的 labels = 'LABELS'),则会创建一个新的点要素类,其中每个渔网像元中心都具有标注点。此要素类的名称以 _label 为后缀并与输出要素类相同,且创建于同一位置。

要素类

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

确定每个单元的宽度。如果要使用行数参数值自动计算宽度,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算宽度。

Double
cell_height

确定每个单元的高度。如果要使用列数参数值自动计算高度,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算高度。

Double
number_rows

确定渔网所含的行数。如果要使用像元宽度参数值自动计算行数,则请将该参数留空或将该值设置为零,这样在运行工具时便会自动计算行数。

Long
number_columns

确定渔网所含的列数。如果要使用像元高度参数值自动计算列数,则将该参数留空或将该值设置为零,这样在运行工具时便会自动计算列数。

Long
corner_coord
(可选)

X 坐标Y 坐标值设置的渔网的对角。

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

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

如果选中了创建标注点参数(Python 中的 labels = 'LABELS'),则会创建一个新的点要素类,其中每个渔网像元中心都具有标注点。此要素类的名称以 _label 为后缀并与输出要素类相同,且创建于同一位置。

要素类

代码示例

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)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题