Размещение объектов вдоль маршрута (Системы линейных координат)
Резюме
Вычисляет пересечение входных объектов (точек, линий или полигонов) и объектов-маршрутов и записывает информацию о маршруте и измерениях в новую таблицу событий.
Использование
-
Выходная таблица может быть файлом dBASE или таблицей базы геоданных.
-
Тип события должен быть POINT, если Входные объекты (Input Features) — точки и LINE, если входные объекты — линии или полигоны.
-
Вы достигнете наилучших результатов в случае, если исходные и целевые маршруты полностью накладываются друг на друга.
Внимание:Не используйте большой кластерный допуск, чтобы попытаться преодолеть расхождения между исходным и целевым маршрутами, т. к. это может привести к неожиданным результатам.
-
Для уменьшения количества входных объектов, которые будут обрабатываться этим инструментом, можно ввести слои с выборками. Более подробную информацию см. в разделе Использование слоев и представлений таблиц.
-
Выходная таблица может быть отображена в ArcMap при помощи инструмента Создать слой событий на маршруте (Make Route Event Layer) либо при помощи команды Отобразить события на маршруте (Display Route Events) в ArcMap.
Синтаксис
Параметр | Объяснение | Тип данных |
in_features |
Входные точечные, линейные или полигональные объекты. | Feature Layer |
in_routes |
Маршруты, с которыми будут пересекаться входные объекты. | Feature Layer |
route_id_field |
Поле, содержащее значения, которые позволяют уникально идентифицировать каждый маршрут. Это поле может быть числовым или текстовым. | Field |
radius_or_tolerance |
Если в качестве входных используются точечные объекты, радиус поиска представляет собой числовое значение, определяющее, на каком максимальном расстоянии от точки будет вестись поиск соответствующего маршрута. Если в качестве входных используются линейные объекты, радиус поиска представляет максимальное допустимое расстояние между линией и соответствующим маршрутом. Если в качестве входных используются полигональные объекты, этот параметр не учитывается, а радиус поиска не используется. | Linear unit |
out_table |
Создаваемая таблица. | Table |
out_event_properties |
Параметр, состоящий из полей, определяющих местоположения на маршруте, и типа событий, которые будут записаны в выходную таблицу событий.
| Route Measure Event Properties |
route_locations (дополнительно) |
При размещении точек вдоль маршрута, возможно в пределы радиуса поиска вокруг какой-либо точки попадает более одного маршрута. Параметр не учитывается при размещении линий или полигонов вдоль маршрутов.
| Boolean |
distance_field (дополнительно) |
Определяет, будет ли добавлено поле DISTANCE к выходной таблице событий. Значения этого поля в единицах, в которых был указан радиус поиска. Параметр не учитывается при размещении линий или полигонов вдоль маршрутов.
| Boolean |
zero_length_events (дополнительно) |
При размещении полигонов вдоль маршрутов, возможно создание события, для которого измерение "От " равно измерению "До ". Параметр не учитывается при размещении точек или линий вдоль маршрутов.
| Boolean |
in_fields (дополнительно) |
Определяет, будет ли выходная таблица событий кроме информации о маршруте содержать все атрибуты входных объектов.
| Boolean |
m_direction_offsetting (дополнительно) |
Указывает, будут ли расстояния смещения рассчитаны исходя из направления М, или из оцифрованных направлений. Расстояния включаются в выходную таблицу событий, если указано значение DISTANCE параметра distance_field.
| Boolean |
Пример кода
Пример скрипта Python для выполнения функции LocateFeaturesAlongRoutes в окне Python
import arcpy
from arcpy import env
env.workspace = "C:/Data"
arcpy.LocateFeaturesAlongRoutes_lr("rail_segments.shp", "rail_routes.shp", "rkey", "0.5 Feet", "locate_lines", "rkey LINE fmp tmp")
Следующий скрипт Python показывает порядок применения функции LocateFeaturesAlongRoutes в автономном скрипте Python.
# Name: LocateFeaturesAlongRoutes_Example1.py
# Description: Locate shapefile lines along shapefile routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data"
# Set local variables
feats = "rail_segments.shp"
rts = "rail_routes.shp"
rid = "rkey"
tol = "0.5 Feet"
tbl = "locate_lines"
props = "rkey LINE fmp tmp"
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, tol, tbl, props)
Следующий скрипт Python показывает порядок применения функции LocateFeaturesAlongRoutes в автономном скрипте Python с помощью данных базы геоданных.
# Name: LocateFeaturesAlongRoutes_Example2.py
# Description: Locate personal geodatabase points along file geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data/Pitt.gdb"
# Set local variables
feats = "rail/crossings" # crossings is in the rail feature dataset
rts = "rail/routes" # routes is in the rail feature dataset
rid = "rkey"
rad = "10 Feet"
tbl = "locate_points"
props = "rkey POINT mp"
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, rad, tbl, props)
Следующий скрипт Python показывает порядок применения функции LocateFeaturesAlongRoutes в автономном скрипте Python для данных персональной базы геоданных.
# Name: LocateFeaturesAlongRoutes_Example3.py
# Description: Locate personal geodatabase points along personal geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "C:/Data/Pitt.mdb"
# Set local variables
feats = "rail/crossings" # crossings is in the rail feature dataset
rts = "rail/routes" # routes is in the rail feature dataset
rid = "rkey"
rad = "10 Feet"
tbl = "locate_points"
props = "rkey POINT mp"
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, rad, tbl, props)
Следующий скрипт Python показывает порядок применения функции LocateFeaturesAlongRoutes в автономном скрипте Python для данных SDE.
# Name: LocateFeaturesAlongRoutes_Example4.py
# Description: Locate enterprise geodatabase polygons along enterprise geodatabase routes.
# Import system modules
import arcpy
from arcpy import env
# Set workspace
env.workspace = "Database Connections/Connection to Jerry.sde"
# Set local variables
feats = gp.QualifyTableName("counties", wkspc) # standalone feature class
rts = gp.QualifyTableName("rail_routes", wkspc) # standalone feature class
rid = "rkey"
tbl = "locate_polys"
props = "rkey LINE fmp tmp"
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, "#", tbl, props, "#", "#", "NO_ZERO", "M_DIRECTION")