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

Сводка

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

Похожим инструментом, который добавляет множество атрибутов геометрии в новые поля атрибутов, является инструмент Добавить атрибуты геометрии.

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

    Внимание:

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

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

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

  • Этот инструмент работает с точечными, мультиточечными, полилинейными, полигональными классами.

Синтаксис

arcpy.management.CalculateGeometryAttributes(in_features, geometry_property, {length_unit}, {area_unit}, {coordinate_system}, {coordinate_format})
ParameterОбъяснениеТип данных
in_features

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

Feature Layer
geometry_property
[[Target Field, Property],...]

Указывает поля, в которые будут добавлены результаты вычисления геометрии, а также в свойства которых будут рассчитаны. Список поддерживаемых свойств геометрии:

  • AREA —Площадь каждого объекта полигона.
  • AREA_GEODESIC —Геодезическая площадь каждого объекта полигона.
  • CENTROID_X —X координата центроида каждого объекта.
  • CENTROID_Y —Y координата центроида каждого объекта.
  • CENTROID_Z —Z координата центроида каждого объекта.
  • CENTROID_M —M координата центроида каждого объекта.
  • INSIDE_X —X координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_Y —Y координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_Z —Z координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_M —M координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • CURVE_COUNT —Число кривых в каждом объекте. К кривым относятся эллиптические и круговые дуги, а также параметрические кривые.
  • HOLE_COUNT —Число внутренних контуров (дырок) в каждом объекте полигона.
  • EXTENT_MIN_X —Минимальная X координата экстента каждого объекта.
  • EXTENT_MIN_Y —Минимальная Y координата экстента каждого объекта.
  • EXTENT_MIN_Z —Минимальная Z координата экстента каждого объекта.
  • EXTENT_MAX_X —Максимальная X координата экстента каждого объекта.
  • EXTENT_MAX_Y —Максимальная Y координата экстента каждого объекта.
  • EXTENT_MAX_Z —Максимальная Z координата экстента каждого объекта.
  • LENGTH —Длина каждого линейного объекта.
  • LENGTH_GEODESIC —Геодезическая длина каждого линейного объекта.
  • LENGTH_3D —3D-длина каждого линейного объекта.
  • LINE_BEARING —Азимут каждого линейного объекта. Значения находятся в диапазоне от 0 до 360, причем нулю соответствует северное направление, 180 – южное, 270 – западное и т.д.
  • LINE_START_X —X координата начальной точки каждого линейного объекта.
  • LINE_START_Y —Y координата начальной точки каждого линейного объекта.
  • LINE_START_Z —Z координата начальной точки каждого линейного объекта.
  • LINE_START_M —M координата начальной точки каждого линейного объекта.
  • LINE_END_X —X координата конечной точки каждого линейного объекта.
  • LINE_END_Y —Y координата конечной точки каждого линейного объекта.
  • LINE_END_Z —Z координата конечной точки каждого линейного объекта.
  • LINE_END_M —M координата конечной точки каждого линейного объекта.
  • PART_COUNT —Число сегментов, входящих в каждый объект.
  • PERIMETER_LENGTH —Длина периметра или границы каждого полигонального объекта.
  • PERIMETER_LENGTH_GEODESIC —Геодезическая длина периметра или границы каждого полигонального объекта.
  • POINT_COUNT —Число точек или вершин, из которых состоит каждый объект.
  • POINT_X —X координата каждого точечного объекта.
  • POINT_Y —Y координата каждого точечного объекта.
  • POINT_Z —Z координата каждого точечного объекта.
  • POINT_M —M координата каждого точечного объекта.
  • POINT_COORD_NOTATION —Координаты x и y каждого точечного объекта отформатированы в определенном обозначении координат.
Value Table
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
(Дополнительный)

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

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

Coordinate System
coordinate_format
(Дополнительный)

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

Несколько форматов координат - Градусы, минуты, секунды; градусы, десятичные минуты и другие - требуют выполнения вычисления в текстовом поле.

  • SAME_AS_INPUT —Единицы пространственной привязки входных объектов используются для форматирования координат. Используется по умолчанию.
  • DD —Десятичные градусы.
  • DMS_DIR_LAST —Градусы Минуты Секунды с обозначением стороны света в конце (DDD ° MM 'SSS.ss "<N | S | E | W>).
  • DMS_DIR_FIRST —Градусы Минуты Секунды с обозначением стороны света вначале (<N|S|E|W> DDD° MM' SSS.ss").
  • DMS_POS_NEG —Градусы Минуты Секунды с положительным и отрицательным знаком направления вначале (<+|-> DDD° MM' SSS.ss").
  • DMS_PACKED —Градусы Минуты Секунды, упакованные в одно значение с положительным и отрицательным знаком направления вначале (<+|-> DDD.MMSSSss).
  • DDM_DIR_LAST —Градусы Десятичные минуты с обозначением стороны света в конце (DDD ° MM '<N | S | E | W>).
  • DDM_DIR_FIRST —Градусы Десятичные минуты с обозначением стороны света вначале (<N|S|E|W> DDD° MM' ).
  • DDM_POS_NEG —Градусы Десятичные минуты с положительным и отрицательным знаком направления вначале (<+|-> DDD° MM' ).
  • GARS —Система Global Area Reference System основывается на широте и долготе, а мир разделен на ячейки.
  • GEOREF —Система World Geographic Reference System основывается на широте и долготе, но использует более простое и более гибкое обозначение.
  • MGRS —Military Grid Reference System (Военная система прямоугольных координат).
  • USNG —Национальная энергосистема США.
  • UTM —Универсальная поперечная проекция Меркатора.
  • UTMNS —Универсальная поперечная проекция Меркатора (без пробелов).
String

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

NameОбъяснениеТип данных
updated_features

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

Векторный слой

Пример кода

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

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

import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.CalculateGeometryAttributes_management("roads", [["Length_mi", "LENGTH"], ["Stops", "POINT_COUNT"]], "MILES_US")
CalculateGeometryAttributes, пример (автономный скрипт)

Получает прямоугольник экстента для каждого объекта.

# Name: ExtentCreation.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"
# Generate the extent coordinates using CalculateGeometry
arcpy.CalculateGeometryAttributes_management(in_features, [["Left", "EXTENT_MIN_X"],
                                                           ["Bottom", "EXTENT_MIN_Y"],
                                                           ["Right", "EXTENT_MAX_X"],
                                                           ["Top", "EXTENT_MAX_Y"]])

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

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

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