Создать замощение (Управление данными)

Краткая информация

Создает мозаичную сетку объектов - правильных многоугольников для покрытия заданного экстента. Замощение может состоять из треугольников, квадратов, ромбов, шестиугольников, шестиугольников H3 или поперечных шестиугольников.

Иллюстрация

Иллюстрация инструмента Создать замощение

Использование

  • Для того, чтобы мозаичная сетка точно покрывала весь входной экстент, выходные объекты должны выходить за пределы входного экстента. Это происходит потому, что мозаичная сетка не всегда может иметь прямолинейные границы, и если сеть будет ограничена экстентом, будут появляться пробелы.

  • Поле GRID_ID будет добавлено в выходные данные.

    Когда параметр Тип формы задан как Шестиугольник H3, значения поля GRID_ID будут уникальным иерархическим индексом для каждой ячейки.

    Значения поля GRID_ID для шестиугольников H3 со значением размера 3

    Для других значений параметра Тип формы поле GRID_ID будет уникальным ID каждого объекта. ID имеют вид: A-1, A-2, B-1, B-2 и т.д. Это облегчает выборку строк и столбцов с помощью запросов в инструменте Выбрать в слое по атрибуту. Например, выберите все объекты в столбце A с помощью GRID_ID like 'A-%' или все объекты в строке 1 с помощью GRID_ID like '%-1'.

  • Чтобы создать сетку, исключающую объекты замощения, которые не пересекаются с объектами из другого набора данных, используйте инструмент Выбрать в слое по расположению, чтобы выбрать выходные полигоны, содержащие объекты-источники, и используйте инструмент Копировать объекты, чтобы создать постоянную копию выбранных выходных объектов в новом классе объектов.

  • Инструмент создает формы в единицах площади. Чтобы определить площадь геометрии на основе длины стороны, используйте одну из следующих формул для расчета значения параметра Размер:

    ФормаФормулаПример

    Шестиугольник или Поперечный шестиугольник

    Формула площади шестиугольника

    Чтобы создать шестиугольники со стороной 100 метров, задайте для параметра Размер значение 25980,76211353316 квадратных метров (100, возведенное в степень 2, умноженное на 3, умноженное на квадратный корень из 3, деленный на 2).

    Квадрат

    Формула площади квадрата

    Чтобы создать квадраты со стороной 100 метров, укажите для параметра Размер значение 10000 квадратных метров (100 в степени 2).

    Ромб

    Формула площади ромба

    Чтобы создать ромбы со стороной 100 метров, укажите для параметра Размер значение 10000 квадратных метров (100 в степени 2).

    Треугольник

    Формула площади треугольника

    Чтобы создать треугольники со стороной 100 метров, задайте для параметра Размер значение 4330,127018922193 квадратных метра (100, возведенное в степень 2, умноженное на квадратный корень из 3, деленный на 4).

    Для значения параметра Тип формы выбранная опция Шестиугольник H3 игнорирует параметр Размер. Площадь шестиугольника будет зависеть от значения параметра Разрешение H3.

    Подробнее о разрешениях H3

Параметры

ПодписьОписаниеТип данных
Выходной класс пространственных объектов

Путь и имя выходного класса объектов, содержащего мозаичную сеть.

Feature Class
Экстент

Экстент, который покрывается мозаичной сетью. Это может быть текущая отображаемая область, экстент набора данных или значения, введенные вручную.

  • По умолчанию – экстент основывается на максимальном экстенте всех задействованных слоев. Это значение по умолчанию.
  • Объединение входных данных – экстент будет основан на максимальном экстенте всех входных сцен.
  • Пересечение входных данных – экстент будет основан на минимальной области, являющейся общей для всех входных сцен.
  • Экстент текущего отображения – экстент будет равен видимому отображению. Опция недоступна, если нет активной карты.
  • Как указано ниже – экстент будет основан на указанных минимальном и максимальном значениях экстента.
  • Найти—экстент будет основан на существующем наборе данных.
Extent
Тип формы
(Дополнительный)

Задает форму, которая будет создана.

  • ШестиугольникБудут созданы объекты в форме шестиугольника. Верхняя и нижняя стороны каждого шестиугольника будут параллельны оси x системы координат (верхняя и нижняя стороны плоские).
  • Поперечный шестиугольникБудут созданы объекты в форме поперечного шестиугольника. Правая и левая стороны каждого шестиугольника будут параллельны оси y системы координат набора данных (верхняя и нижняя стороны остроконечны).
  • КвадратБудут созданы объекты в форме квадрата. Верхняя и нижняя стороны каждого квадрата будут параллельны оси x системы координат, а правая и левая стороны будут параллельны оси y системы координат.
  • РомбБудут созданы объекты в форме ромба. Стороны каждого полигона будут повернуты на 45 градусов относительно осей x и y системы координат.
  • ТреугольникБудут созданы объекты в форме треугольника. Каждый треугольник будет полигоном, представляющим правильный равносторонний треугольник.
  • Шестиугольник H3Объекты в форме шестиугольника будут сгенерированы на основе Шестиугольной иерархической геопространственной системы индексации H3.
String
Размер
(Дополнительный)

Площадь каждой отдельной формы, входящей в состав элементов замощения.

Areal Unit
Пространственная привязка
(Дополнительный)

Пространственная привязка, в которую будет проецироваться выходной набор данных. Если пространственная привязка не указана, выходные данные будут проецированы в привязку входного экстента. Если пространственная привязка отсутствует, данные будут проецированы в GCS_WGS_1984.

Spatial Reference
Разрешение H3
(Дополнительный)

Задает разрешение H3 для шестиугольников.

С каждым увеличением значения разрешения площадь полигонов будет на одну седьмую больше размера.

  • 0 — шестиугольники будут созданы с разрешением H3 равным 0, со средней площадью 4 357 449,41 6078381 квадратных километров.
  • 1 — шестиугольники будут созданы с разрешением H3 равным 1, со средней площадью 609 788,441794133 квадратных километров.
  • 2 — шестиугольники будут созданы с разрешением H3 равным 2, со средней площадью 86 801.780398997 квадратных километров.
  • 3 — шестиугольники будут созданы с разрешением H3 равным 3, со средней площадью 12 393,434655088 квадратных километров.
  • 4 — шестиугольники будут созданы с разрешением H3 равным 4, со средней площадью 1770,347654491 квадратных километров.
  • 5 — шестиугольники будут созданы с разрешением H3 5, со средней площадью 252,903858182 квадратных километров.
  • 6 — шестиугольники будут созданы с разрешением H3 6, со средней площадью 36,129062164 квадратных километров.
  • 7 — шестиугольники будут созданы с разрешением H3 7, со средней площадью 5,161293360 квадратных километров. Это значение по умолчанию
  • 8 — шестиугольники будут созданы с разрешением H3 8, со средней площадью 0,737327598 квадратных километров.
  • 9 — шестиугольники будут созданы с разрешением H3 9, со средней площадью 0,105332513 квадратных километров.
  • 10 — шестиугольники будут созданы с разрешением H3 10, со средней площадью 0,015047502 квадратных километра.
  • 11 — шестиугольники будут созданы с разрешением H3 11, со средней площадью 0,002149643 квадратных километра.
  • 12 — шестиугольники будут созданы с разрешением H3 12, со средней площадью 0,000307092 квадратных километра.
  • 13 — шестиугольники будут созданы с разрешением H3 13, со средней площадью 0,000043870 квадратных километров.
  • 14 — шестиугольники будут созданы с разрешением H3 14, со средней площадью 0,000006267 квадратных километров.
  • 15 — шестиугольники будут созданы с разрешением H3 15, со средней площадью 0,000000895 квадратных километров.

Этот параметр активен, когда для параметра Тип формы задано значение Шестиугольник H3.

Long

arcpy.management.GenerateTessellation(Output_Feature_Class, Extent, {Shape_Type}, {Size}, {Spatial_Reference}, {H3_Resolution})
ИмяОписаниеТип данных
Output_Feature_Class

Путь и имя выходного класса объектов, содержащего мозаичную сеть.

Feature Class
Extent

Экстент, который покрывается мозаичной сетью. Это может быть текущая отображаемая область, экстент набора данных или значения, введенные вручную.

  • MAXOF - будет использоваться максимальный экстент всех входных данных.
  • MINOF - будет использоваться минимальная область, общая для всех входных данных.
  • DISPLAY– экстент будет равен видимому отображению.
  • Имя слоя - будет использоваться тот же экстент, что и в указанном слое.
  • Объект Extent - будет использоваться тот же экстент, что и в указанном объекте.
  • Строка координат, разделенных пробелами – будет использоваться экстент из заданной строки. Координаты должны быть выражены в таком порядке: x-min, y-min, x-max, y-max.
Extent
Shape_Type
(Дополнительный)

Задает форму, которая будет создана.

  • HEXAGONБудут созданы объекты в форме шестиугольника. Верхняя и нижняя стороны каждого шестиугольника будут параллельны оси x системы координат (верхняя и нижняя стороны плоские).
  • TRANSVERSE_HEXAGONБудут созданы объекты в форме поперечного шестиугольника. Правая и левая стороны каждого шестиугольника будут параллельны оси y системы координат набора данных (верхняя и нижняя стороны остроконечны).
  • SQUAREБудут созданы объекты в форме квадрата. Верхняя и нижняя стороны каждого квадрата будут параллельны оси x системы координат, а правая и левая стороны будут параллельны оси y системы координат.
  • DIAMONDБудут созданы объекты в форме ромба. Стороны каждого полигона будут повернуты на 45 градусов относительно осей x и y системы координат.
  • TRIANGLEБудут созданы объекты в форме треугольника. Каждый треугольник будет полигоном, представляющим правильный равносторонний треугольник.
  • H3_HEXAGONОбъекты в форме шестиугольника будут сгенерированы на основе Шестиугольной иерархической геопространственной системы индексации H3.
String
Size
(Дополнительный)

Площадь каждой отдельной формы, входящей в состав элементов замощения.

Areal Unit
Spatial_Reference
(Дополнительный)

Пространственная привязка, в которую будет проецироваться выходной набор данных. Если пространственная привязка не указана, выходные данные будут проецированы в привязку входного экстента. Если пространственная привязка отсутствует, данные будут проецированы в GCS_WGS_1984.

Spatial Reference
H3_Resolution
(Дополнительный)

Задает разрешение H3 для шестиугольников.

С каждым увеличением значения разрешения площадь полигонов будет на одну седьмую больше размера.

  • 0 — шестиугольники будут созданы с разрешением H3 равным 0, со средней площадью 4 357 449,41 6078381 квадратных километров.
  • 1 — шестиугольники будут созданы с разрешением H3 равным 1, со средней площадью 609 788,441794133 квадратных километров.
  • 2 — шестиугольники будут созданы с разрешением H3 равным 2, со средней площадью 86 801.780398997 квадратных километров.
  • 3 — шестиугольники будут созданы с разрешением H3 равным 3, со средней площадью 12 393,434655088 квадратных километров.
  • 4 — шестиугольники будут созданы с разрешением H3 равным 4, со средней площадью 1770,347654491 квадратных километров.
  • 5 — шестиугольники будут созданы с разрешением H3 5, со средней площадью 252,903858182 квадратных километров.
  • 6 — шестиугольники будут созданы с разрешением H3 6, со средней площадью 36,129062164 квадратных километров.
  • 7 — шестиугольники будут созданы с разрешением H3 7, со средней площадью 5,161293360 квадратных километров. Это значение по умолчанию
  • 8 — шестиугольники будут созданы с разрешением H3 8, со средней площадью 0,737327598 квадратных километров.
  • 9 — шестиугольники будут созданы с разрешением H3 9, со средней площадью 0,105332513 квадратных километров.
  • 10 — шестиугольники будут созданы с разрешением H3 10, со средней площадью 0,015047502 квадратных километра.
  • 11 — шестиугольники будут созданы с разрешением H3 11, со средней площадью 0,002149643 квадратных километра.
  • 12 — шестиугольники будут созданы с разрешением H3 12, со средней площадью 0,000307092 квадратных километра.
  • 13 — шестиугольники будут созданы с разрешением H3 13, со средней площадью 0,000043870 квадратных километров.
  • 14 — шестиугольники будут созданы с разрешением H3 14, со средней площадью 0,000006267 квадратных километров.
  • 15 — шестиугольники будут созданы с разрешением H3 15, со средней площадью 0,000000895 квадратных километров.

Этот параметр активен тогда, когда параметр Shape_Type имеет значение H3_HEXAGON.

Long

Пример кода

GenerateTessellation, пример 1 (окно Python)

В следующем скрипте окна Python показано, как используется функция GenerateTessellation в режиме прямого запуска.

import arcpy
tessellation_extent = arcpy.Extent(0.0, 0.0, 10.0, 10.0)
spatial_ref = arcpy.SpatialReference(4326)
arcpy.management.GenerateTessellation(r"C:\data\project.gdb\hex_tessellation", 
                                      tessellation_extent, "HEXAGON", 
                                      "100 SquareMiles", spatial_ref)
GenerateTessellation, пример 2 (окно Python)

Следующее окно скрипта Python демонстрирует использование функции GenerateTessellation для создания шестиугольников H3.

# Import modules
import arcpy

# Create some variables
out_gdb = r"C:\temp\project.gdb\h3_hexagon"
extent = arcpy.Extent(0.0, 0.0, 10.0, 10.0)
sr = arcpy.SpatialReference(4326)

# Generate H3 hexagons
arcpy.management.GenerateTessellation(out_gdb, Extent=extent, Shape_Type="H3_HEXAGON",
                                      H3_Resolution=5, Spatial_Reference=sr)
GenerateTessellation, 3 (автономный скрипт)

В следующем автономном скрипте Python показано, как программно извлечь экстент класса объектов и использовать его для заполнения параметров функции GenerateTessellation.

# Name: GenerateDynamicTessellation.py
# Purpose: Generate a grid of squares over the envelope of a provided feature 
# class.

# Import modules
import arcpy 

# Set paths of features
my_feature = r"C:\data\project.gdb\myfeature"
output_feature = r"C:\data\project.gdb\sqtessellation"

# Describe the input feature and extract the extent
description = arcpy.Describe(my_feature)
extent = description.extent

# Find the width, height, and linear unit used by the input feature class' extent
# Divide the width and height value by three.
# Multiply the divided values together and specify an area unit from the linear 
# unit.
# Should result in a 4x4 grid covering the extent. (Not 3x3 since the squares 
# hang over the extent.)
w = extent.width
h = extent.height
u = extent.spatialReference.linearUnitName
area = "{size} Square{unit}s".format(size=w/3 * h/3, unit=u)

# Use the extent's spatial reference to project the output
spatial_ref = extent.spatialReference

arcpy.management.GenerateTessellation(output_feature, extent, "SQUARE", area, 
                                      spatial_ref)