Locate Features Along Routes (Linear Referencing)

Summary

Computes the intersection of input features (point, line, or polygon) and route features and writes the route and measure information to a new event table.

Usage

Syntax

LocateFeaturesAlongRoutes_lr (in_features, in_routes, route_id_field, radius_or_tolerance, out_table, out_event_properties, {route_locations}, {distance_field}, {zero_length_events}, {in_fields}, {m_direction_offsetting})
ParameterExplanationData Type
in_features

The input point, line, or polygon features.

Feature Layer
in_routes

The routes with which the input features will be intersected.

Feature Layer
route_id_field

The field containing values that uniquely identify each route. This field can be numeric or character.

Field
radius_or_tolerance

If the input features are points, the search radius is a numeric value defining how far around each point a search will be done to find a target route.

If the input features are lines, the search tolerance is really a cluster tolerance, which is a numeric value representing the maximum tolerated distance between the input lines and the target routes.

If the input features are polygons, this parameter is ignored and no search radius is used.

Linear unit
out_table

The table to be created.

Table
out_event_properties

Parameter consisting of the route location fields and the type of events that will be written to the output event table.

  • Route Identifier Field—The field that will contain values that indicate which route each event is along.
  • Event Type—The type of events the output event table will contain (POINT or LINE).
    • POINT—Point events occur at a precise location along a route. Only a single measure field must be specified.
    • LINE—Line events define a portion of a route. Both from- and to-measure fields must be specified.
  • From-Measure Field—A field that will contain measure values. Required when the event type is POINT or LINE. Note when the Event Type is POINT the label for this parameter becomes "Measure Field".
  • To-Measure Field—A field that will contain measure values. Required when the event type is LINE.
Route Measure Event Properties
route_locations
(Optional)

When locating points along routes, it is possible that more than one route may be within the search radius of any given point. This parameter is ignored when locating lines or polygons along routes.

  • FIRSTOnly the closest route location will be written to the output event table. This is the default.
  • ALLEvery route location (within the search radius) will be written to the output event table.
Boolean
distance_field
(Optional)

Specifies whether a field named DISTANCE will be added to the output event table. The values in this field are in the units of the specified search radius. This parameter is ignored when locating lines or polygons along routes.

  • DISTANCEA field containing the point to route distance will be added to the output event table. This is the default.
  • NO_DISTANCEA field containing the point to route distance will not be added to the output event table.
Boolean
zero_length_events
(Optional)

When locating polygons along routes, it is possible that events can be created where the from-measure is equal to the to-measure. This parameter is ignored when locating points or lines along routes.

  • ZEROZero length line events will be written to the output event table. This is the default.
  • NO_ZEROZero length line events will not be written to the output event table.
Boolean
in_fields
(Optional)

Specifies whether the output event table will contain route location fields plus all the attributes from the input features.

  • FIELDSThe output event table will contain route location fields plus all the attributes from the input features. This is the default.
  • NO_FIELDSThe output event table will only contain route location fields plus the ObjectID field from the input features.
Boolean
m_direction_offsetting
(Optional)

Specifies whether the offset distance calculated should be based on the M direction or the digitized direction. Distances are included in the output event table if the distance_field parameter value DISTANCE is specified.

  • M_DIRECTIONThe distance values in the output event table will be calculated based on the routes' M direction. Input features to the left of the M Direction of the route will be assigned a positive offset (+) and features to the right of the M Direction will be assigned a negative offset value (-). This is the default.
  • NO_M_DIRECTIONThe distance values in the output event table will be calculated based on the routes' digitized direction. Input features to the left of the digitized direction of the route will be assigned a negative (-) offset and features to the right of the digitized direction will be assigned a positive offset value (+).
Boolean

Code Sample

LocateFeaturesAlongRoutes Example (Python Window)
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")

 
LocateFeaturesAlongRoutes Example (Stand-alone Python Script)

The following Python script demonstrates how to use the LocateFeaturesAlongRoutes function in a stand-alone Python script.

# Name: LocateFeaturesAlongRoutes_Example1.py
# Description: Locate shapefile lines along shapefile routes.
# Author: ESRI

# 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)

 
LocateFeaturesAlongRoutes Example 2 (Stand-alone Python Script)

The following Python script demonstrates how to use the LocateFeaturesAlongRoutes function in a stand-alone Python script using file geodatabase data..

# Name: LocateFeaturesAlongRoutes_Example2.py
# Description: Locate personal geodatabase points along file geodatabase routes.
# Author: ESRI

# 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)
 
LocateFeaturesAlongRoutes Example 3 (Stand-alone Python Script)

The following Python script demonstrates how to use the LocateFeaturesAlongRoutes function in a stand-alone Python script using personal geodatabase data.

# Name: LocateFeaturesAlongRoutes_Example3.py
# Description:  Locate personal geodatabase points along personal geodatabase routes.
# Author: ESRI

# 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)
 
LocateFeaturesAlongRoutes Example 4 (Stand-alone Python Script)

The following Python script demonstrates how to use the LocateFeaturesAlongRoutes function in a stand-alone Python script using SDE data.

# Name: LocateFeaturesAlongRoutes_Example4.py
# Description:  Locate enterprise geodatabase polygons along enterprise geodatabase routes.
# Author: ESRI
 
# 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")

Environments

Related Topics

Licensing Information

ArcView: Yes
ArcEditor: Yes
ArcInfo: Yes

Published 6/7/2010