Добавить атрибуты геометрии (Управление данными)

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

Добавляет новые поля атрибутов ко входным объектам, отображающие пространственные или геометрические характеристики и местоположение каждого объекта, например, длину, площадь, координаты x, y, z и m.

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

    Внимание:

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

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

    Свойство геометрииДобавленное поле

    AREA

    POLY_AREA – площадь полигона

    AREA_GEODESIC

    AREA_GEO – сохраняющая форму геодезическая площадь полигона.

    CENTROID

    CENTROID_X – x-координата точки центроида.

    CENTROID_Y – y-координата точки центроида.

    CENTROID_Z – z-координата точки центроида. Поле добавляется, только если для входных объектов активированы значения z.

    CENTROID_M – m-координата точки центроида. Поле добавляется, только если для входных объектов активированы значения m.

    CENTROID_INSIDE

    INSIDE_X – x-координата центральной точки внутри или на входном объекте.

    INSIDE_Y – y-координата центральной точки внутри или на входном объекте.

    INSIDE_Z – z-координата центральной точки внутри или на входном объекте. Поле добавляется, только если для входных объектов активированы значения z.

    INSIDE_M – m-координата центральной точки внутри или на входном объекте. Поле добавляется, только если для входных объектов активированы значения m.

    EXTENT

    EXT_MIN_X – минимальная x-координата объекта.

    EXT_MIN_Y – минимальная y-координата объекта.

    EXT_MAX_X – максимальная x-координата объекта.

    EXT_MAX_Y – максимальная y-координата объекта.

    LENGTH

    LENGTH – длина линии.

    LENGTH_GEODESIC

    LENGTH_GEO – сохраняющая форму геодезическая длина линии.

    LENGTH_3D

    LENGTH_3D – 3D-длина линии.

    LINE_BEARING

    BEARING – азимут линии. Диапазон значений от 0 до 360, где 0 означает север, 90 – восток, 180 – юг, а 270 – запад.

    LINE_START_MID_END

    START_X – x-координата первой точки линии или границы полигона.

    START_Y – y-координата первой точки линии или границы полигона.

    START_Z – z-координата первой точки линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения z.

    START_M – m-координата первой точки линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения m.

    MID_X – x-координата точки середины линии или границы полигона.

    MID_Y – y-координата точки середины линии или границы полигона.

    MID_Z – z-координата точки середины линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения z.

    MID_M – m-координата точки середины линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения m.

    END_X – x-координата последней точки линии или границы полигона.

    END_Y – y-координата последней точки линии или границы полигона.

    END_Z – z-координата последней точки линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения z.

    END_M – m-координата последней точки линии или границы полигона. Поле добавляется, только если для входных объектов активированы значения m.

    PART_COUNT

    PART_COUNT – количество частей, составляющих объект.

    PERIMETER_LENGTH

    PERIMETER – длина периметра полигона или границы.

    PERIMETER_LENGTH_GEODESIC

    PERIM_GEO – сохраняющая форму геодезическая длина периметра полигона или границы.

    POINT_COUNT

    PNT_COUNT – количество точек, составляющих объект.

    POINT_X_Y_Z_M

    POINT_X – x-координата точки.

    POINT_Y – y-координата точки.

    POINT_Z – z-координата точки. Поле добавляется, только если для входных объектов активированы значения z.

    POINT_M – m-координата точки. Поле добавляется, только если для входных объектов активированы значения m.

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

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

  • Если во входных объектах сделана выборка, только выбранные объекты получат вычисленные в добавленных полях значения, а все остальные объекты – нулевые значения.

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

Параметры

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

Входные объекты, к которым будут добавлены новые атрибутивные поля для хранения таких свойств, как длина, площадь, координаты x, y, z и m.

Feature Layer
Свойства геометрии

Определяет свойства геометрии или формы, которые будут вычислены в новых атрибутивных полях.

  • ПлощадьБудет добавлен атрибут для хранения площади каждого полигонального объекта.
  • Геодезическая площадьБудет добавлен атрибут для хранения сохраняющей форму геодезической площади каждого полигонального объекта.
  • Координаты центроидаБудут добавлены атрибуты для хранения координат центроида каждого объекта.
  • Координаты центральной точкиБудут добавлены атрибуты для хранения координат центральной точки внутри или на каждом объекте.
  • Координаты экстентаБудут добавлены атрибуты для хранения координат экстента каждого объекта.
  • ДлинаБудет добавлен атрибут для хранения длины каждого линейного объекта.
  • Геодезическая длинаБудет добавлен атрибут для хранения сохраняющей форму геодезической длины каждого линейного объекта.
  • 3D-длинаБудет добавлен атрибут для хранения 3D-длины каждого линейного объекта.
  • Направление линииБудет добавлен атрибут для хранения азимута каждого линейного объекта. Диапазон значений от 0 до 360, где 0 означает север, 90 – восток, 180 – юг, а 270 – запад.
  • Координаты начальной, конечной и средней точки линииБудут добавлены атрибуты для хранения координат начальной, средней и конечной точек каждого объекта.
  • Количество частейБудет добавлен атрибут для хранения количества частей, составляющих каждый объект.
  • Длина периметраБудет добавлен атрибут для хранения периметра или границы каждого полигонального объекта.
  • Геодезическая длина периметраБудет добавлен атрибут для хранения сохраняющей форму геодезической длины периметра или границы каждого полигонального объекта.
  • Количество вершинБудет добавлен атрибут для хранения количества точек или вершин, составляющих каждый объект.
  • Координаты x-, y-, z- и m- для точкиБудут добавлены атрибуты для хранения x-, y-, z- и m-координат каждого точечного объекта.
String
Единицы длины
(Дополнительный)

Указывает единицы, в которых рассчитывается длина.

  • Футы (U.S.)Длина в футах (U.S.)
  • МетрыДлина в метрах
  • КилометрыДлина в километрах
  • Мили (U.S.)Длина в милях (U.S.)
  • Морские мили (U.S.)Длина в морских милях (U.S.)
  • Ярды (U.S.)Длина в ярдах (U.S.)
String
Единицы площади
(Дополнительный)

Указывает единицы, в которых рассчитывается площадь.

  • АкрыПлощадь в акрах
  • ГектарыПлощадь в гектарах
  • Квадратные мили (U.S.)Площадь в квадратных милях (U.S.)
  • Квадратные километрыПлощадь в квадратных километрах
  • Квадратные метрыПлощадь в квадратных метрах
  • Квадратные футы (U.S.)Площадь в квадратных футах (U.S.)
  • Квадратные ярды (U.S.)Площадь в квадратных ярдах (U.S.)
  • Квадратные морские мили (U.S.)Площадь в квадратных морских милях (U.S.)
String
Система координат
(Дополнительный)

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

Coordinate System

Производные выходные данные

ПодписьОписаниеТип данных
Измененные входные объекты

Обновленные входные объекты.

Feature Layer

arcpy.management.AddGeometryAttributes(Input_Features, Geometry_Properties, {Length_Unit}, {Area_Unit}, {Coordinate_System})
ИмяОписаниеТип данных
Input_Features

Входные объекты, к которым будут добавлены новые атрибутивные поля для хранения таких свойств, как длина, площадь, координаты x, y, z и m.

Feature Layer
Geometry_Properties
[Geometry_Properties,...]

Определяет свойства геометрии или формы, которые будут вычислены в новых атрибутивных полях.

  • AREAБудет добавлен атрибут для хранения площади каждого полигонального объекта.
  • AREA_GEODESICБудет добавлен атрибут для хранения сохраняющей форму геодезической площади каждого полигонального объекта.
  • CENTROIDБудут добавлены атрибуты для хранения координат центроида каждого объекта.
  • CENTROID_INSIDEБудут добавлены атрибуты для хранения координат центральной точки внутри или на каждом объекте.
  • EXTENTБудут добавлены атрибуты для хранения координат экстента каждого объекта.
  • LENGTHБудет добавлен атрибут для хранения длины каждого линейного объекта.
  • LENGTH_GEODESICБудет добавлен атрибут для хранения сохраняющей форму геодезической длины каждого линейного объекта.
  • LENGTH_3DБудет добавлен атрибут для хранения 3D-длины каждого линейного объекта.
  • LINE_BEARINGБудет добавлен атрибут для хранения азимута каждого линейного объекта. Диапазон значений от 0 до 360, где 0 означает север, 90 – восток, 180 – юг, а 270 – запад.
  • LINE_START_MID_ENDБудут добавлены атрибуты для хранения координат начальной, средней и конечной точек каждого объекта.
  • PART_COUNTБудет добавлен атрибут для хранения количества частей, составляющих каждый объект.
  • PERIMETER_LENGTHБудет добавлен атрибут для хранения периметра или границы каждого полигонального объекта.
  • PERIMETER_LENGTH_GEODESICБудет добавлен атрибут для хранения сохраняющей форму геодезической длины периметра или границы каждого полигонального объекта.
  • POINT_COUNTБудет добавлен атрибут для хранения количества точек или вершин, составляющих каждый объект.
  • POINT_X_Y_Z_MБудут добавлены атрибуты для хранения x-, y-, z- и m-координат каждого точечного объекта.
String
Length_Unit
(Дополнительный)

Указывает единицы, в которых рассчитывается длина.

  • FEET_USДлина в футах (U.S.)
  • METERSДлина в метрах
  • KILOMETERSДлина в километрах
  • MILES_USДлина в милях (U.S.)
  • NAUTICAL_MILESДлина в морских милях (U.S.)
  • YARDSДлина в ярдах (U.S.)
String
Area_Unit
(Дополнительный)

Указывает единицы, в которых рассчитывается площадь.

  • ACRESПлощадь в акрах
  • HECTARESПлощадь в гектарах
  • SQUARE_MILES_USПлощадь в квадратных милях (U.S.)
  • SQUARE_KILOMETERSПлощадь в квадратных километрах
  • SQUARE_METERSПлощадь в квадратных метрах
  • SQUARE_FEET_USПлощадь в квадратных футах (U.S.)
  • SQUARE_YARDSПлощадь в квадратных ярдах (U.S.)
  • SQUARE_NAUTICAL_MILESПлощадь в квадратных морских милях (U.S.)
String
Coordinate_System
(Дополнительный)

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

Coordinate System

Производные выходные данные

ИмяОписаниеТип данных
Modified_Input_Features

Обновленные входные объекты.

Feature Layer

Пример кода

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

В следующем скрипте окна Python показано, как используется инструмент AddGeometryAttributes.

import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.AddGeometryAttributes_management("roads", "LENGTH;LINE_START_MID_END")
AddGeometryAttributes, пример (автономный скрипт)

Берет прямоугольник экстента каждогой линейного объекта и строит сетку 10х10 внутри этого экстента.

# Name: GridCreation.py

# import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.env.outputCoordinateSystem = arcpy.Describe("roads").spatialReference

# Set local variables
in_features = "roads"
properties = "EXTENT"
length_unit = ""
area_unit = ""
coordinate_system = ""

# Generate the extent coordinates using Add Geometry Properties tool
arcpy.AddGeometryAttributes_management(in_features, properties, length_unit,
                                       area_unit, coordinate_system)

# Use Search Cursor to walk through each feature and generate grids
with arcpy.da.SearchCursor(in_features, ["OID@", "EXT_MIN_X", "EXT_MIN_Y",
                                         "EXT_MAX_X", "EXT_MAX_Y"]) as sCur:
    for row in sCur:
        minX, minY, maxX, maxY = row[1], row[2], row[3], row[4]
        arcpy.CreateFishnet_management("fishnet_{0}".format(row[0]),
                    number_rows = 10,
                    number_columns = 10,
                    template = "{} {} {} {}".format(minX, maxX, minY, maxY),
                    origin_coord = "{} {}".format(minX, minY),
                    y_axis_coord = "{} {}".format(minX, maxY),
                    corner_coord = "{} {}".format(maxX, maxY),
                    geometry_type = "POLYGON",
                    labels = "NO_LABELS")

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

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