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

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

Создает мозаичную сетку объектов - правильных многоугольников для покрытия заданного экстента. Замощение может состоять из треугольников, квадратов, ромбов, шестиугольников, шестиугольников 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
Экстент

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

  • Текущий экстент отображения Вид карты — Экстент будет основан на активной карте или сцене. Эта опция доступна только при наличии активной карты.
  • Нарисовать экстент Закончить прямым углом - экстент будет основан прямоугольнике, нарисованном на карте или сцене. Эта опция создает класс пространственных объектов в базе геоданных проекта и добавляет слой на карту. Класс объектов будет иметь ту же систему координат, что и карта.
    Примечание:

    Данная опция не доступна в диалоговом окне Параметры среды. Он доступен только из параметра инструмента, с экстентом в качестве типа данных, или на вкладке Среды диалогового окна инструмента.

    Примечание:

    Если включена опция Включать и отключать редактирование на вкладке Редактирование, вы должны включить редактирование на вкладке ленты Редактирование, чтобы нарисовать экстент.

  • Экстент слоя 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
Тип формы
(Дополнительный)

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

  • ШестиугольникБудут созданы объекты в форме шестиугольника. Верхняя и нижняя стороны каждого шестиугольника будут параллельны оси 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)

Связанные разделы