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

Уровень лицензии:BasicStandardAdvanced

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

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

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

Синтаксис

AddGeometryAttributes_management (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_INSIDEДобавляет атрибуты, хранящие координаты центроидов внутри или на объектах.
  • EXTENTДобавляет атрибуты, хранящие координаты экстента объектов.
  • LENGTHДобавляет атрибут, хранящий длины линейных объектов.
  • LENGTH_GEODESICДобавляет атрибут, хранящий геодезические длины линейных объектов.
  • LENGTH_3DДобавляет атрибут, хранящий 3D-длины линейных объектов.
  • LINE_BEARINGДобавляет атрибут, хранящий азимуты линейных объектов. Значения находятся в диапазоне от 0 до 360, причем нулю соответствует северное направление, 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

Пример кода

Пример 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 = "{0} {1} {2} {3}".format(minX, maxX, minY, maxY),
                    origin_coord = "{0} {1}".format(minX, minY),
                    y_axis_coord = "{0} {1}".format(minX, maxY),
                    corner_coord = "{0} {1}".format(maxX, maxY),
                    geometry_type = "POLYGON",
                    labels = "NO_LABELS")

Параметры среды

Связанные темы

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

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
5/10/2014