Конвертировать обозначения координат (Управление данными)

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

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

Более подробно о поддерживаемых форматах обозначений

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

  • Система координат значений в полях X (Долгота) и Y (Широта) указана с параметром Входная система координат. По умолчанию это система координат GCS_WGS_1984, если только входная таблица не является классом пространственных объектов, для которого по умолчанию используется координатная система входных объектов.

  • Поддерживаются следующие форматы:

    • Десятичные градусы (DD)
    • Градусы с десятичными минутами (DDM)
    • Градусы-минуты-секунды (DMS)
    • Global Area Reference System (GARS)
    • Всемирная система географических координат (GEOREF и GEOREF 16)
    • Универсальная поперечная проекция Меркатора (UTM)
    • United States National Grid (USNG и USNG 16)
    • Военная система прямоугольных координат (MGRS и MGRS 16)

  • Для опция параметра Формат входных координат DD 1, DDM 1 и DMS 1 значения широты и долготы должны быть объединены вместе и храниться в одном поле.

    Для опций DD 2, DDM 2 и DMS 2 значения широты и долготы представлены двумя отдельными полями.

    Для опции Числовое значение DD значения долготы и широты хранятся в двух отдельных полях типа double.

    Для опций Gars, Georef, Georef 16, Зоны UTM, Каналы UTM, USNG, USNG 16, MGRS и MGRS 16 значения используют формат единой строки, т.е. координаты находятся в одном поле.

  • Для параметров Входной формат координат и Выходной формат координат опции MGRS 16 (пример: 11SLT7858811533670379), USNG 16, и Georef 16 имеют более высокую точность (16 знаков), что эквивалентно опциям MGRS (пример: 11SLT78588115), USNG и Georef (8 знаков).

  • Все поля из входной таблицы, включая поле OID и поля входного формата, переносятся в выходной класс точечных объектов. Значения поля OID могут использоваться для различения корректных конвертированных обозначений, если включена опция Исключить записи с недопустимым представлением.

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

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

  • Отключите параметр Исключить записи с недопустимым представлением, чтобы сохранить информацию, относящуюся ко всем входным записям. Для идентификации записей с недопустимым представлением можно использовать инструмент Проверить геометрию.

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

  • Инструмент Добавить поля XY можно использовать для добавления двух полей — POINT_X и POINT_Y – в выходной класс точечных объектов. Эти поля содержат координаты точки в единицах системы координат класса пространственных объектов.

  • Инструмент может конвертировать обозначения DD (Десятичные градусы), DMS (градусы, минуты, секунды) и DDM (градусы, десятичные минуты) в другие выходные форматы, при условии, что входные значения в форматах DD, DMS и DDM не содержат буквенных символов.

Параметры

ПодписьОписаниеТип данных
Входная таблица

Входная таблица или текстовой файл. Точечные объекты также допустимы.

Table View
Выходной класс пространственных объектов

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

Feature Class
Поле X (Долгота)

Поле из входной таблицы, содержащей значение долготы.

Для параметра Входной формат координат опции DD 2, Числовой DD, DDM 2 и DMS 2 соответствуют полю долготы.

Для опций DD 1, DDM 1 и DMS 1 это поле содержит оба значения широты и долготы в одной строке.

Для опций Gars, Georef, Georef 16, Зоны UTM, Каналы UTM, USNG, USNG 16, MGRS и MGRS 16 поле содержит буквенно-числовое обозначение в одном текстовом поле.

Field
Поле Y (Широта )

Поле из входной таблицы, содержащей значение широты.

Для параметра Входной формат координат опции DD 2, Числовой DD, DDM 2 и DMS 2 соответствуют полю широты.

Этот параметр неактивен при выборе одного из одностроковых форматов.

Field
Формат входных координат

Задает формат координат входных полей.

DD, DDM, DMS и UTM также являются допустимыми ключевыми словами, которые можно использовать путем простого ввода (в диалоговом окне) или передачи значения в скрипте. Тем не менее, ключевые слова, содержащие нижнее подчеркивание и уточнение, больше сообщают о значениях поля.

  • DD 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DD 2Значения широты и долготы находятся в двух отдельных полях.Это значение по умолчанию
  • DDM 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DDM 2 Значения широты и долготы находятся в двух отдельных полях.
  • DMS 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DMS 2Значения широты и долготы находятся в двух отдельных полях.
  • GarsGlobal Area Reference System (Глобальная система координат). Карта мира разделяется на ячейки на основе координат широты и долготы.
  • GeorefВсемирная система географических координат. Система, основанная на сетке, с помощью которой карта мира разделяется на на квадраты со сторонами 15 градусов и подразделяется на квадраты меньшего размера.
  • Georef 16Всемирная система географических координат с 16-разрядной точностью.
  • Зоны UTMБуква N или S после номера зоны UTM обозначает северное или южное полушарие.
  • Пояса UTMБуква после номера зоны UTM обозначает один из 20 поясов долготы. N или S не обозначают полушарие.
  • USNGUnited States National Grid. Практически в точности повторяет MGRS, однако, в качестве датума использует Североамериканский датум 1983 (NAD83).
  • USNG 16United States National Grid с повышенной 16-разрядной точностью.
  • MGRSMilitary Grid Reference System (Военная система прямоугольных координат). Использует координаты UTM для разделения карты мира на пояса по 6 градусов по долготе и 20 поясов по широте, однако, MGRS затем подразделяет зоны сетки на 100 000-метровые участки меньшего размера. Эти 100000-метровые сетки затем разделяются на сетки размером 10000 метров, 1000 метров, 100 метров, 10 метров и 1 метр.
  • MGRS 16Military Grid Reference System с 16-разрядной точностью.
  • ФормаДоступно только если в качестве входных данных выбран слой точечных объектов. Координаты каждой из точек используются для определения выходного формата.
String
Формат выходных координат

Задает формат координат, в который будут конвертироваться входные обозначения.

DD, DDM, DMS и UTM также являются допустимыми ключевыми словами, которые можно использовать путем простого ввода (в диалоговом окне) или передачи значения в скрипте. Тем не менее, ключевые слова, содержащие нижнее подчеркивание и уточнение, больше сообщают о значениях поля.

  • DD 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DD 2Значения широты и долготы находятся в двух отдельных полях.
  • числовое значение DDЗначения долготы и широты хранятся в двух отдельных полях типа Double. Значения западной долготы и южной широты обохначаются знаком "минус".
  • DDM 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DDM 2 Значения широты и долготы находятся в двух отдельных полях.
  • DMS 1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DMS 2Значения широты и долготы находятся в двух отдельных полях.
  • GarsGlobal Area Reference System (Глобальная система координат). Карта мира разделяется на ячейки на основе координат широты и долготы.
  • GeorefВсемирная система географических координат. Система, основанная на сетке, с помощью которой карта мира разделяется на на квадраты со сторонами 15 градусов и подразделяется на квадраты меньшего размера.
  • Georef 16Всемирная система географических координат с 16-разрядной точностью.
  • Зоны UTMБуква N или S после номера зоны UTM обозначает северное или южное полушарие.
  • Пояса UTMБуква после номера зоны UTM обозначает один из 20 поясов долготы. N или S не обозначают полушарие.
  • USNGUnited States National Grid. Практически в точности повторяет MGRS, однако, в качестве датума использует Североамериканский датум 1983 (NAD83).
  • USNG 16United States National Grid с повышенной 16-разрядной точностью.
  • MGRSMilitary Grid Reference System (Военная система прямоугольных координат). Использует координаты UTM для разделения карты мира на пояса по 6 градусов по долготе и 20 поясов по широте, однако, MGRS затем подразделяет зоны сетки на 100 000-метровые участки меньшего размера. Эти 100000-метровые сетки затем разделяются на сетки размером 10000 метров, 1000 метров, 100 метров, 10 метров и 1 метр.
  • MGRS 16Military Grid Reference System с 16-разрядной точностью.
String
ID
(Дополнительный)

Этот параметр больше не используется, поскольку все поля переносятся в выходную таблицу.

Field
Выходная система координат
(Дополнительный)

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

Инструмент проецирует, используя указанную пространственную привязку. Если входная и выходная координатные системы используют разные датумы, применяется трансформация по умолчанию – на основе входной и выходной координатных систем и экстента данных.

Spatial Reference
Входная система координат
(Дополнительный)

Пространственная привязка входных данных. Если входная пространственная привязка не может быть получена из входной таблицы, по умолчанию используется система GCS_WGS_1984.

Coordinate System
Исключить записи с недопустимым представлением
(Дополнительный)

Задает, будут ли исключаться записи с недопустимым обозначением.

  • Не отмечено - некорректные записи будут исключены, в точки будут конвертированы только корректные записи. Это значение по умолчанию
  • Отмечено – корректные записи будут конвертированы в выходные точки, а некорректные будут включены как пустая геометрия.

Boolean

arcpy.management.ConvertCoordinateNotation(in_table, out_featureclass, x_field, y_field, input_coordinate_format, output_coordinate_format, {id_field}, {spatial_reference}, {in_coor_system}, {exclude_invalid_records})
ИмяОписаниеТип данных
in_table

Входная таблица или текстовой файл. Точечные объекты также допустимы.

Table View
out_featureclass

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

Feature Class
x_field

Поле из входной таблицы, содержащей значение долготы.

Для параметра input_coordinate_format опции DD_2, DD_NUMERIC, DDM_2 и DMS_2 соответствуют полю долготы.

Для DD_1, DDM_1 и DMS_1 это поле содержит оба значения широты и долготы в одной строке.

Для GARS, GEOREF, GEOREF16, UTM_ZONES, UTM_BANDS, USNG, USNG16, MGRS и MGRS16 это поле содержит буквенно-числовую систему обозначений в одном текстовом поле.

Field
y_field

Поле из входной таблицы, содержащей значение широты.

Для параметра input_coordinate_format опции DD_2, DD_NUMERIC, DDM_2 и DMS_2 соответствуют полю долготы.

При выборе одного из этих одностроковых форматов этот параметр игнорируется.

Field
input_coordinate_format

Задает формат координат входных полей.

  • DD_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DD_2Значения широты и долготы находятся в двух отдельных полях.Это значение по умолчанию
  • DDM_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DDM_2 Значения широты и долготы находятся в двух отдельных полях.
  • DMS_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DMS_2Значения широты и долготы находятся в двух отдельных полях.
  • GARSGlobal Area Reference System (Глобальная система координат). Карта мира разделяется на ячейки на основе координат широты и долготы.
  • GEOREFВсемирная система географических координат. Система, основанная на сетке, с помощью которой карта мира разделяется на на квадраты со сторонами 15 градусов и подразделяется на квадраты меньшего размера.
  • GEOREF16Всемирная система географических координат с 16-разрядной точностью.
  • UTM_ZONESБуква N или S после номера зоны UTM обозначает северное или южное полушарие.
  • UTM_BANDSБуква после номера зоны UTM обозначает один из 20 поясов долготы. N или S не обозначают полушарие.
  • USNGUnited States National Grid. Практически в точности повторяет MGRS, однако, в качестве датума использует Североамериканский датум 1983 (NAD83).
  • USNG16United States National Grid с повышенной 16-разрядной точностью.
  • MGRSMilitary Grid Reference System (Военная система прямоугольных координат). Использует координаты UTM для разделения карты мира на пояса по 6 градусов по долготе и 20 поясов по широте, однако, MGRS затем подразделяет зоны сетки на 100 000-метровые участки меньшего размера. Эти 100000-метровые сетки затем разделяются на сетки размером 10000 метров, 1000 метров, 100 метров, 10 метров и 1 метр.
  • MGRS16Military Grid Reference System с 16-разрядной точностью.
  • SHAPEДоступно только если в качестве входных данных выбран слой точечных объектов. Координаты каждой из точек используются для определения выходного формата.

DD, DDM, DMS и UTM также являются допустимыми ключевыми словами, которые можно использовать путем простого ввода (в диалоговом окне) или передачи значения в скрипте. Тем не менее, ключевые слова, содержащие нижнее подчеркивание и уточнение, больше сообщают о значениях поля.

String
output_coordinate_format

Задает формат координат, в который будут конвертироваться входные обозначения.

  • DD_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DD_2Значения широты и долготы находятся в двух отдельных полях.
  • DD_NUMERICЗначения долготы и широты хранятся в двух отдельных полях типа Double. Значения западной долготы и южной широты обохначаются знаком "минус".
  • DDM_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DDM_2 Значения широты и долготы находятся в двух отдельных полях.
  • DMS_1Значения широты и долготы содержатся в одном поле. Два значения разделяются пробелом, запятой или косой чертой.
  • DMS_2Значения широты и долготы находятся в двух отдельных полях.
  • GARSGlobal Area Reference System (Глобальная система координат). Карта мира разделяется на ячейки на основе координат широты и долготы.
  • GEOREFВсемирная система географических координат. Система, основанная на сетке, с помощью которой карта мира разделяется на на квадраты со сторонами 15 градусов и подразделяется на квадраты меньшего размера.
  • GEOREF16Всемирная система географических координат с 16-разрядной точностью.
  • UTM_ZONESБуква N или S после номера зоны UTM обозначает северное или южное полушарие.
  • UTM_BANDSБуква после номера зоны UTM обозначает один из 20 поясов долготы. N или S не обозначают полушарие.
  • USNGUnited States National Grid. Практически в точности повторяет MGRS, однако, в качестве датума использует Североамериканский датум 1983 (NAD83).
  • USNG16United States National Grid с повышенной 16-разрядной точностью.
  • MGRSMilitary Grid Reference System (Военная система прямоугольных координат). Использует координаты UTM для разделения карты мира на пояса по 6 градусов по долготе и 20 поясов по широте, однако, MGRS затем подразделяет зоны сетки на 100 000-метровые участки меньшего размера. Эти 100000-метровые сетки затем разделяются на сетки размером 10000 метров, 1000 метров, 100 метров, 10 метров и 1 метр.
  • MGRS16Military Grid Reference System с 16-разрядной точностью.

DD, DDM, DMS и UTM также являются допустимыми ключевыми словами, которые можно использовать путем простого ввода (в диалоговом окне) или передачи значения в скрипте. Тем не менее, ключевые слова, содержащие нижнее подчеркивание и уточнение, больше сообщают о значениях поля.

String
id_field
(Дополнительный)

Этот параметр игнорируется, поскольку все поля переносятся в выходную таблицу.

Field
spatial_reference
(Дополнительный)

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

Инструмент проецирует, используя указанную пространственную привязку. Если входная и выходная координатные системы используют разные датумы, применяется трансформация по умолчанию – на основе входной и выходной координатных систем и экстента данных.

Spatial Reference
in_coor_system
(Дополнительный)

Пространственная привязка входных данных. Если входная пространственная привязка не может быть получена из входной таблицы, по умолчанию используется система GCS_WGS_1984.

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

Задает исключение записей с недопустимым обозначением.

  • EXCLUDE_INVALIDНекорректные записи будут исключены, в точки будут конвертированы только корректные записи. Это значение по умолчанию
  • INCLUDE_INVALIDКорректные записи будут конвертированы в выходные точки, а некорректные будут включены как пустая геометрия.
Boolean

Пример кода

ConvertCoordinateNotation, пример 1 (автономный скрипт)

В следующем автономном скрипте показано, как использовать функцию ConvertCoordinateNotation с одним из полей входного формата.

# import arcpy module
import arcpy

# set locals variables
in_tab = r"c:\data\notation.gdb\loc_mgrs"
out_pts = r"c:\data\notation.gdb\loc_final"

# call Convert Coordinate Notation with MGRS as input field.
# leaving out spatial reference parameter will default to WGS 1984 
arcpy.ConvertCoordinateNotation_management(in_tab, out_pts, "m10d", "#", "MGRS", "DD_1")
ConvertCoordinateNotation, пример 2 (автономный скрипт)

В следующем автономном скрипте показано, как использовать функцию ConvertCoordinateNotation с двумя полями входного формата.

# imports
import arcpy

arcpy.env.workspace = r"c:\data\mtf.gdb"

# set parameter values
input_table = 'rit_up_DD'
output_points = 'ritLOC'
x_field = 'LON'
y_field = 'LAT'
input_format = 'DD_2'
output_format = 'GARS'
id_field = 'CITY_NAME'
spatial_ref = arcpy.SpatialReference('WGS 1984')

try:
    arcpy.ConvertCoordinateNotation_management(input_table, output_points, x_field, y_field, 
                                               input_format, output_format, id_field, spatial_ref)
    print(arcpy.GetMessages(0))

except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])
ConvertCoordinateNotation, пример 3 (автономный скрипт)

В следующем автономном скрипте показано, как использовать функцию ConvertCoordinateNotation с форматами UTM_ZONES и UTM_BANDS.

# imports
import arcpy

arcpy.env.workspace = r"c:\data\ccn.gdb"

# export_utm58 table contains coordinates in UTM_BANDS format 
# where N and S indicate latitude bands, 
# for example, 58S4144921393176 - here 58S is latitude band
input_table = 'export_utm58'

# the coordinate values in output point table will be in UTM_ZONES format
# for example, 58N4144921393176 - note that it is now 58N because
# the point is in UTM 58 North zone
output_points = 'utm_zone18'

spatial_ref = arcpy.SpatialReference('WGS 1984')

try:
    arcpy.ConvertCoordinateNotation_management(input_table, output_points, "LOCS", "", 
                                               "UTM_BANDS", "UTM_ZONES", "", spatial_ref)
    print(arcpy.GetMessages(0))
    
except Exception as ex:
    print(ex.args[0])
ConvertCoordinateNotation, пример 4 (автономный скрипт)

В следующем автономном скрипте показано, как использовать функцию ConvertCoordinateNotation для конвертации выходных текстовых значений координат в десятичных градусахы в числовые значения с плавающей точкой. Помните, что вместо S и W используется знак "минус".

# imports
import arcpy

# output from Convert Coordinate Notation tool
# for DD_2 (and also for DD_1) format, the output values are in string format
# for example, for DD_1, the output values may be '43.63872N 116.24135W'
in_table = r"c:\data\ccn.gdb\ccn_dd1"

# add a field of type DOUBLE to store the numeric longitude value
arcpy.AddField_management(in_table, "DDLonDbl", "DOUBLE")

# now call CalculateField tool to convert the values, 'W' is negative
expr = """def convertToDouble(fldval):
    val = float(fldval[:-1])
    if fldval[-1:] == 'W':
        return val * -1.0
    else:
        return val"""

# DDLon field contains longitudes in a string field
arcpy.CalculateField_management(in_table,"DDLonDbl","convertToDouble(!DDLon!)","PYTHON_9.3",expr)
    
# add another field to store the numeric longitude value
arcpy.AddField_management(in_table, "DDLatDbl", "DOUBLE")

# call CalculateField again to convert the values, 'S' is negative
expr = """def convertToDouble(fldval):
    val = float(fldval[:-1])
    if fldval[-1:] == 'S':
        return val * -1.0
    else:
        return val"""

# DDLat field contains latitudes in a string field
arcpy.CalculateField_management(in_table,"DDLatDbl","convertToDouble(!DDLat!)","PYTHON_9.3",expr)