Минимальная ограничивающая геометрия (Minimum Bounding Geometry) (Управление данными)
Резюме
Создает класс пространственных объектов, содержащий полигоны, которые представляют минимальные области, включающие каждый входной объект или каждую группу входных объектов.
Рисунок
Использование
-
Выходные полигональные объекты и их атрибуты будут варьироваться в зависимости от заданного типа геометрии и выбора группировки.
-
Параметр Опция группы (Group Option) диалогового окна (параметр group_option в скриптах) будет влиять на выходные полигоны и атрибуты следующими способами:
- При использовании NONE, ни один из входных объектов не будет сгруппирован. Выходной полигональный объект будет создан для каждого входного объекта; результирующие полигоны могут перекрываться. Атрибуты входных объектов будут скопированы в выходной класс объектов. Новое поле, ORIG_FID, будет добавлено к выходному классу объектов и будет содержать идентификаторы входных объектов.
- При использовании ALL, один входной полигональный объект будет создан для всех входных объектов. Атрибуты входных объектов не будут поддерживаться в выходном классе объектов.
- При использовании LIST, каждый набор входных объектов с одинаковыми значениями поля в установленных полях группировки будет рассматриваться как группа. Для каждой группы будет создан выходной полигональный объект; результирующие полигоны могут перекрываться. Атрибуты входных объектов, используемые в качестве полей группировки или полей, будут поддерживаться в выходном классе объектов.
-
Каждый тип геометрии может быть охарактеризован одним или несколькими уникальными измерениями; эти измерения могут дополнительно быть добавлены к выходным данным в качестве новых полей, как описано ниже. Значения ширины, длины и диаметра – в единицах объектов; углы ориентировки – в десятичных градусах по часовой стрелке с севера. Префикс MBG_, указывает на поле минимальной геометрии Боулдинга.
- Для RECTANGLE_BY_AREA и RECTANGLE_BY_WIDTH новые поля и измерения следующие:
- MBG_Width – Длина самой короткой стороны результирующего прямоугольника.
- MBG_Length – Длина самой длинной стороны результирующего прямоугольника.
- MBG_Orientation – Ориентация самой длинной стороны результирующего прямоугольника.
- Для ENVELOPE создаются следующие новые поля и измерения:
- MBG_Width – Длина самой короткой стороны результирующего прямоугольника.
- MBG_Length – Длина самой длинной стороны результирующего прямоугольника.
- Для CONVEX_HULL, новые поля и измерения следующие:
- MBG_Width – Кратчайшее расстояние между любыми двумя вершинами выпуклой оболочки. (Может находиться между более чем одной парой вершин, но будет использоваться первое найденное).
- MBG_Length – Самое большое расстояние между двумя вершинами выпуклой оболочки; эти вершины называются парами-антиподами или точками-антиподами. (Может находиться между более чем одной парой вершин, но будет использоваться первое найденное).
- MBG_APodX1 – Координата по x первой точки пар-антиподов.
- MBG_APodY1 – Координата по y первой точки пар-антиподов.
- MBG_APodX2 – Координата по x второй точки пар-антиподов.
- MBG_APodY2 – Координата по y второй точки пар-антиподов.
- MBG_Orientation – Ориентация воображаемой линии, соединяющей пары-антиподы.
- Для CIRCLE, новые поля и измерения следующие:
- MBG_Diameter – Диаметр результирующего круга.
- Для RECTANGLE_BY_AREA и RECTANGLE_BY_WIDTH новые поля и измерения следующие:
-
В ряде случаем, во входном классе объектов могут присутствовать объекты, минимальная ограничивающая геометрия которых приведет к некорректным (с нулевой площадью) выходным полигонам. В этих случаях, маленькое значение, полученное из Допуска XY входного объекта, будет использоваться как ширина, длина или диаметр для создания выходных полигонов. Эти полигоны служат как "владельцы мест" для сохранения трека объектов. Если результирующие полигоны появляются "невидимыми" в ArcMap с использованием ширины контура полигона по умолчанию, измените на линейный символ более тонкого контура для их отображения. Примеры этих случаев включают:
- Если мультиточечный объект содержит только одну точку или группу таких совпадающих объектов, очень малый квадратный полигон будет создан вокруг точки для типов геометрии RECTANGLE_BY_AREA, RECTANGLE_BY_WIDTH, CONVEX_HULL и ENVELOPE; и очень малый круг – для типа геометрии CIRCLE. Значения MBG_Width, MBG_Length, MBG_Orientation и MBG_Diameter будут установлены на ноль для обозначения этих случаев.
- Если входной объект или группа входных объектов идеально выровнены, например, горизонтальная или вертикальная линии или мультиточечные объекты из двух точек, вокруг объектов будет создан прямоугольный полигон очень маленькой ширины. Это применяется к типам геометрии RECTANGLE_BY_AREA, RECTANGLE_BY_WIDTH, CONVEX_HULL и ENVELOPE; результирующее значение MBG_Width будет установлено на ноль для обозначения этих случаев.
Опции Типа геометрии (Geometry Type) (geometry_type) CONVEX_HULL, CIRCLE и ENVELOPE доступны только с лицензией ArcGIS for Desktop Advanced.
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Входные объекты, которые могут быть точками, мультиточками, линиями, полигонами или мультипатчами. | Feature Layer |
out_feature_class |
Выходной класс полигональных объектов. | Feature Class |
geometry_type (дополнительно) |
Указывает, какой тип минимальной ограничивающей геометрии будут представлять выходные полигоны.
Лицензия: Опции CONVEX_HULL, CIRCLE и ENVELOPE доступны только с лицензией ArcGIS for Desktop Advanced. | String |
group_option (дополнительно) |
Указывает, как будут сгруппированы входные объекты; каждая группа будет охвачена одним выходным полигоном.
| String |
group_field [group_field,...] (дополнительно) |
Поле или поля входных объектов, которые будут использоваться для группировки пространственных объектов, если LIST задан как Опция группировки (Group Option). Для опции LIST требуется, по крайней мере, одно поле группировки. Все пространственные объекты, имеющие одно значение в указанном поле или полях, будут рассматриваться как группа. | Field |
mbg_fields_option (дополнительно) |
Указывает, добавлять ли геометрические атрибуты в выходной класс объектов или пропускать их в выходном классе объектов.
| Boolean |
Пример кода
Пример скрипта Python для выполнения функции Минимальная ограничивающая геометрия (Minimum Bounding Geometry) с запуском из окна Python в ArcGIS.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.MinimumBoundingGeometry_management("parks.shp",
"c:/output/output.gdb/parks_mbg",
"RECTANGLE_BY_AREA", "NONE")
Пример скрипта Python для выполнения функции Минимальная ограничивающая геометрия (Minimum Bounding Geometry) в автономном режиме.
# Name: MinimumBoundingGeometry.py
# Description: Use MinimumBoundingGeometry function to find an area
# for each multipoint input feature.
# Author: ESRI
# import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Create variables for the input and output feature classes
inFeatures = "treeclusters.shp"
outFeatureClass = "forests.shp"
# Use MinimumBoundingGeometry function to get a convex hull area
# for each cluster of trees which are multipoint features
arcpy.MinimumBoundingGeometry_management(inFeatures, outFeatureClass,
"CONVEX_HULL", "NONE")