Построить сетку (Управление данными (Data Management))
Краткая информация
Создает сеть прямоугольных ячеек. Выходными данными могут быть полилинейные или полигональные объекты.
Более подробно о том, как работает инструмент Построить сетку
Использование
-
Система координат выходных данных может быть установлена или на основе класса пространственных объектов или слоя в параметре Экстент шаблона (Template Extent), либо путем установки параметра среды Выходная система координат .
-
В дополнение к созданию выходной сетки создается новый класс точечных объектов с точками меток в центре каждой ячейки сети, если параметр Создать метки (Create Label Points) задан как LABELS(включен). Имя этого класса пространственных объектов совпадает с именем выходного класса объектов с суффиксом _label, и он создается в том же расположении.
-
Параметр Тип геометрии задает опцию создания выходных ячеек полилиний (по умолчанию) или полигонов. Создание полигональной сетки может проходить медленнее, в зависимости от количества строк и столбцов.
-
Значения Ширина ячейки (Cell Size Width) и Высота ячейки (Cell Size Height) вводятся в тех же единицах, которые определены в выходном классе объектов.
Синтаксис
Параметр | Объяснение | Тип данных |
out_feature_class |
Выходной класс объектов, содержащий сетку прямоугольных ячеек. | Feature Class |
origin_coord |
Начальная (левая нижняя) точка сетки. | Point |
y_axis_coord |
Координата по оси Y, которая используется для ориентации сетки. Сетка поворачивается на угол, определяемый линией, которая связывает исходную координату и координату по оси y. | Point |
cell_width |
Определяет ширину каждой ячейки. Если вы хотите, чтобы ширина вычислялась автоматически с помощью значения в параметре Число строк (Number of Rows), оставьте этот параметр пустым или установите значение 0; тогда ширина будет вычисляться при запуске инструмента. | Double |
cell_height |
Определяет высоту каждой ячейки. Если вы хотите, чтобы высота вычислялась автоматически с помощью значения в параметре Число столбцов (Number of Columns), оставьте этот параметр пустым или установите значение 0; тогда при запуске инструмента будет вычисляться высота. | Double |
number_rows |
Определяет количество строк в сетке. Если вы хотите, чтобы количество строк вычислялось автоматически с помощью значения в параметре Ширина ячейки (Cell Size Width), оставьте этот параметр пустым или установите значение 0; тогда количество строк будет вычисляться при запуске инструмента. | Long |
number_columns |
Определяет количество столбцов в сетке. Если вы хотите, чтобы количество столбцов вычислялось автоматически с помощью значения в параметре Высота ячейки (Cell Size Height), оставьте этот параметр пустым или установите значение 0; тогда при запуске инструмента будет вычисляться количество столбцов. | Long |
corner_coord (дополнительно) | Противоположный угол сетки, установленный по значениям Координата по X и Координата по Y. | Point |
labels (дополнительно) |
Устанавливает, будет ли создан класс точечных объектов, содержащий точки меток в центре каждой ячейки сети.
| Boolean |
template (дополнительно) | Задайте экстент сетки. Экстент может быть задан точными значениями координат или взят из существующего набора данных.
| Extent |
geometry_type (дополнительно) |
Определяет, будут ли выходные ячейки сети полилинейными или полигональными объектами.
| String |
Пример кода
Пример скрипта Python для выполнения функции Create Fishnet с запуском из окна Python в ArcGIS.
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")
На следующем автономном скрипте показано, как создавать новые прямоугольные ячейки (сетку) с помощью функции Create Fishnet.
# 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)