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

Сводка

Добавляет информацию к полям атрибутов объектов, представляющих геометрические характеристики и местоположение каждого объекта, например, длину, площадь, координаты 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_XX координата центроида каждого объекта.
  • CENTROID_YY координата центроида каждого объекта.
  • CENTROID_ZZ координата центроида каждого объекта.
  • CENTROID_MM координата центроида каждого объекта.
  • INSIDE_XX координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_YY координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_ZZ координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • INSIDE_MM координата для центральной точки внутри или на каждом объекте. Эта точка совпадает с центроидом, если центроид внутри объекта, в противном случае – это внутренняя точка надписи.
  • 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_3D3D-длина каждого линейного объекта.
  • LINE_BEARINGАзимут каждого линейного объекта. Значения находятся в диапазоне от 0 до 360, причем нулю соответствует северное направление, 180 – южное, 270 – западное и т.д.
  • LINE_START_XX координата начальной точки каждого линейного объекта.
  • LINE_START_YY координата начальной точки каждого линейного объекта.
  • LINE_START_ZZ координата начальной точки каждого линейного объекта.
  • LINE_START_MM координата начальной точки каждого линейного объекта.
  • LINE_END_XX координата конечной точки каждого линейного объекта.
  • LINE_END_YY координата конечной точки каждого линейного объекта.
  • LINE_END_ZZ координата конечной точки каждого линейного объекта.
  • LINE_END_MM координата конечной точки каждого линейного объекта.
  • PART_COUNTЧисло сегментов, входящих в каждый объект.
  • PERIMETER_LENGTHДлина периметра или границы каждого полигонального объекта.
  • PERIMETER_LENGTH_GEODESICГеодезическая длина периметра или границы каждого полигонального объекта.
  • POINT_COUNTЧисло точек или вершин, из которых состоит каждый объект.
  • POINT_XX координата каждого точечного объекта.
  • POINT_YY координата каждого точечного объекта.
  • POINT_ZZ координата каждого точечного объекта.
  • POINT_MM координата каждого точечного объекта.
  • 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 основывается на широте и долготе, но использует более простое и более гибкое обозначение.
  • MGRSMilitary 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: Да

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