Определить проекцию (Управление данными)

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

Перезаписывает информацию о системе координат (проекцию карты и датум), хранящуюся с набором данных. Инструмент можно применять к наборам данных, которые имеют неизвестную или неправильно указанную систему координат.

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

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

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

  • Чаще всего этот инструмент применяется для присвоения известной системы координат набору данных с неизвестной системой координат (т. е. свойства набора данных системы координат имеет статус "Неизвестный"). В других случаях происходит присвоение корректной системы координат набору данных, для которого была задана некорректная система координат (например, координаты – в метрах UTM, но система координат определена как географическая).

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

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

Параметры

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

Набор данных или класс пространственных объектов, проекция которых должна быть задана.

Feature Layer;Geodataset
Система координат

Система координат, которая должна применяться к входным данным. Значение по умолчанию устанавливается на основе параметров среды выходной системы координат.

Coordinate System

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

ПодписьОписаниеТип данных
Обновить входной набор данных или класс пространственных объектов

Обновленный входной набор геоданных.

Набор геоданных

arcpy.management.DefineProjection(in_dataset, coor_system)
ИмяОписаниеТип данных
in_dataset

Набор данных или класс пространственных объектов, проекция которых должна быть задана.

Feature Layer;Geodataset
coor_system

Система координат, которая должна применяться к входным данным. Значение по умолчанию устанавливается на основе параметров среды выходной системы координат.

Допустимыми значениями являются: объект SpatialReference, файл с расширением .prj или строковое представление системы координат.

Coordinate System

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

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

Обновленный входной набор геоданных.

Набор геоданных

Пример кода

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

Пример скрипта окна Python для использования функции DefineProjection в режиме прямого запуска.

import arcpy
infc = r"C:\data\citylim_unk.shp"
sr = arcpy.SpatialReference("NAD 1983 UTM Zone 11N")
arcpy.DefineProjection_management(infc, sr)
DefineProjection, пример (автономный скрипт)

Следующий автономный скрипт использует функцию DefineProjection для записи информации системе координат для входного набора данных.

# Name: DefineProjection.py 
# Description: Records the coordinate system information for the specified input dataset or feature class

# import system modules
import arcpy

# set workspace environment
arcpy.env.workspace = "C:/data"

try:
    # set local variables
    in_dataset = "citylim_unk.shp" #"forest.shp"
    
    # get the coordinate system by describing a feature class
    dsc = arcpy.Describe("citylim_utm11.shp")
    coord_sys = dsc.spatialReference
    
    # run the tool
    arcpy.DefineProjection_management(in_dataset, coord_sys)
    
    # print messages when the tool runs successfully
    print(arcpy.GetMessages(0))
    
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])

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

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

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