描述
创建由矩形像元组成的渔网。输出可以是折线或面要素。
使用方法
可通过在模板范围参数中输入要素类或图层,或通过设置“输出坐标系”环境变量,来设置输出的坐标系。
除了创建输出渔网之外,如果选中了创建标注点参数(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 (可选) | 指定是否创建包含在每个渔网像元中心标注点的点要素类。
| Boolean |
template (可选) | 指定渔网的范围。可通过指定坐标或使用模板数据集来输入范围。
| Extent |
geometry_type (可选) | 确定输出渔网像元是折线要素还是面要素。
| 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: 是