Краткая информация
Создает новый слой точечных объектов на основе координат x и y, определенных в исходной таблице. Если исходная таблица содержит z координаты (значения высот), это поле также может быть указано в создании слоя событий. Слой, созданный этим инструментом, временный.
Использование
Выходной слой точечных объектов, созданный этим инструментом, является временным и будет удален по окончании сеанса. Можно экспортировать этот слой события в класс пространственных объектов на диске с помощью инструментов Копировать объекты (Copy Features), Объект в точку (Feature to Point) или Класс объектов в класс объектов (Feature Class to Feature Class).
Невозможно интерактивно переместить точки выходного слоя с помощью элементов редактирования, т.к. слои событий не являются редактируемыми. Альтернативой прямому перемещению этих точек может быть изменение атрибутов координат x и y во входной таблице, затем повторное создание слоя событий, или же сохранение слоя событий в класс пространственных объектов на диске и последующего редактирования класса пространственных объектов.
Стандартным разделителем для табличных текстовых файлов с расширениями .csv или .txt является запятая, а для файлов с расширением .tab – табуляция. Чтобы использовать входную таблицу с нестандартным разделителем, необходимо сначала указать необходимый разделитель для таблицы в файле schema.ini.
Если во входной таблице отсутствует поле ObjectID, вы не сможете сделать выборки или добавить соединения в результирующий слой. Многие текстовые файлы с разделителями или таблицы из подключений OLE DS не имеют полей ObjectID.
Синтаксис
MakeXYEventLayer_management (table, in_x_field, in_y_field, out_layer, {spatial_reference}, {in_z_field})
Параметр | Объяснение | Тип данных |
table | Таблица с координатами X и Y, определяющими положения точечных объектов, которые будут созданы. | Table View |
in_x_field | Поле входной таблицы, которое содержит координаты x. | Field |
in_y_field | Поле входной таблицы, которое содержит координаты y. | Field |
out_layer | Имя выходного слоя точечных событий. | Feature Layer |
spatial_reference (дополнительно) | Пространственная привязка координат в Полях X и Y, определенных выше. Это будет пространственная привязка выходного слоя событий. | Spatial Reference |
in_z_field (дополнительно) | Поле входной таблицы, которое содержит координаты z. | Field |
Пример кода
MakeRouteEventLayer, пример (окно Python)
Следующий скрипт окна Python демонстрирует, как использовать инструмент Создать слой событий XY (MakeRouteEventLayer).
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.MakeXYEventLayer_management("firestations.dbf", "POINT_X", "POINT_Y", "firestations_points","", "POINT_Z")
MakeXYEventLayer, пример (автономный скрипт)
Следующий автономный Python скрипт демонстрирует, как использовать инструмент Создать слой событий XY (MakeRouteEventLayer).
# MakeXYLayer.py
# Description: Creates an XY layer and exports it to a layer file
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
try:
# Set the local variables
in_Table = "firestations.dbf"
x_coords = "POINT_X"
y_coords = "POINT_Y"
z_coords = "POINT_Z"
out_Layer = "firestations_layer"
saved_Layer = r"c:\output\firestations.lyr"
# Set the spatial reference
spRef = r"Coordinate Systems\Projected Coordinate Systems\Utm\Nad 1983\NAD 1983 UTM Zone 11N.prj"
# Make the XY event layer...
arcpy.MakeXYEventLayer_management(in_Table, x_coords, y_coords, out_Layer, spRef, z_coords)
# Print the total rows
print(arcpy.GetCount_management(out_Layer))
# Save to a layer file
arcpy.SaveToLayerFile_management(out_Layer, saved_Layer)
except Exception as err:
print(err.args[0])