Create Routes (Linear Referencing)
Summary
Creates routes from existing lines. The input line features that share a common identifier are merged to create a single route.
Usage
-
The unique values in the Route Identifier Field are written to Output Route Feature Class.
-
Use the Make Feature Layer or Make Query Table tools to effectively reduce the number of lines that will be used to create routes.
-
If the Output Route Feature Class will be written to a geodatabase, an appropriate M Tolerance, M Resolution, and M Domain should be set.
-
Use a Measure Factor to convert between route measure units. For example, to convert from feet to miles, use a factor of 0.00018939394.
-
Use a Measure Offset in applications where the start measure of each route needs to be a value other than 0.
-
The Ignore spatial gaps parameter is not used when the TWO_FIELDS Measure Source option has been specified. This is because measure values are dictated by the From-Measure Field and To-Measure Field values.
-
When the LENGTH or ONE_FIELD Measure Source option is used, the Coordinate Priority is determined by placing the minimum bounding rectangle around the input features that will be merged to create one route.
-
When the TWO_FIELDS Measure Source option is used, it is not necessary to specify a coordinate priority because measure direction is implied by the values in the From-Measure Field and the To-Measure Field.
-
An attribute index on the route identifier field speeds up the dynamic segmentation process. If you will be using the Output Route Feature Class for dynamic segmentation, it is recommended that you choose to have an attribute index created.
-
If any features are rejected by the Create Routes tool, a text file is created in the temporary file path to store information about those features. For example, C:\Documents and Settings\patrickb\Local Settings\Temp\Create_Output0.txt (where Create_Output is the name of the output route feature class).
-
The outputMFlag environment setting will be ignored. The Output Route Feature Class will have M (measure) values.
Syntax
Parameter | Explanation | Data Type |
in_line_features |
The features from which routes will be created. | Feature Layer |
route_id_field |
The field containing values that uniquely identify each route. | Field |
out_feature_class |
The feature class to be created. It can be a shapefile or a geodatabase feature class. | Feature Class |
measure_source |
Specifies how route measures will be obtained.
| String |
from_measure_field (Optional) |
A field containing measure values. This field must be numeric and is required when the measure source is ONE_FIELD or TWO_FIELDS. | Field |
to_measure_field (Optional) |
A field containing measure values. This field must be numeric and is required when the measure source is TWO_FIELDS. | Field |
coordinate_priority (Optional) |
The position from which measures will be accumulated for each output route. This parameter is ignored when the measure source is TWO_FIELDS.
| String |
measure_factor (Optional) |
A value multiplied by the measure length of each input line before they are merged to create route measures. The default is 1. | Double |
measure_offset (Optional) |
A value added to the route measures after the input lines have been merged to create a route. The default is 0. | Double |
ignore_gaps (Optional) |
Specifies whether spatial gaps will be ignored when calculating the measures on disjointed routes. This parameter is applicable when the measure source is LENGTH or ONE_FIELD.
| Boolean |
build_index (Optional) |
Specifies whether an attribute index will be created for the route identifier field that is written to the output route feature class.
| Boolean |
Code Sample
The following Python Window script demonstrates how to use the CreateRoutes function in the Python window.
import arcpy from arcpy import env env.workspace = "C:/Data" arcpy.CreateRoutes_lr(base_roads.shp, "route1", "newRoutes", "LENGTH", "#", "#", "LOWER_LEFT", 0.00018939394)
The following Python script demonstrates how to use the CreateRoutes function using shapefile data in a stand-alone Python script.
# Name CreateRoutes_Example2.py # Description: Create routes from lines. The lines are in a shapefile workspace. # The LENGTH option will be used to set the measures, and a measure factor # will be used to convert measure units from feet to miles. # Author: ESRI # Import system modules import arcpy from arcpy import env # Set workspace env.workspace = "C:/Data" # Set local variables in_lines = "base_roads.shp" rid = "route1" out_routes = "create_output1" # Execute CreateRoutes arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "LENGTH", "#", "#", "LOWER_LEFT", 0.00018939394)
The following Python script demonstrates how to use the CreateRoutes function using file geodatabase data in a stand-alone Python script.
# Name CreateRoutes_Example3.py # Description: Create routes from lines. The lines are in a file geodatabase. # The ONE_FIELD option will be used to set the measures. # Import system modules import arcpy from arcpy import env # Set workspace env.workspace = "C:/Data/pitt.gdb" # Set local variables in_lines = "roads/base_roads" # base_roads exists in the roads feature dataset rid = "route1" m_fld = "len_mile" out_routes = "roads/create_output2" # write the result to the roads feature dataset # Execute CreateRoutes arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "ONE_FIELD", m_fld, "#", "LOWER_LEFT")
The following Python script demonstrates how to use the CreateRoutes function in a stand-alone Python script using personal geodatabase data.
# Name: CreateRoutes_Example4.py # Description: Create routes from lines. The lines are in a personal geodatabase. # The ONE_FIELD option will be used to set the measures. # Author: ESRI # Import system modules import arcpy from arcpy import env # Set workspace env.workspace = "C:/Data/pitt.mdb" # Set local variables in_lines = "roads/base_roads" # base_roads exists in the roads feature dataset rid = "route1" m_fld = "len_mile" out_routes = "roads/create_output2" # write the result to the roads feature dataset # Execute CreateRoutes arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "ONE_FIELD", m_fld, "#", "LOWER_LEFT")
The following Python script demonstrates how to use the CreateRoutes function in a stand-alone Python script using SDE data.
# Name CreateRoutes_Example5.py # Description: Create routes from lines. The lines are in an enterprise geodatabase. # The TWO_FIELD option will be used to set the measures. # Author: ESRI # Import system modules import arcpy from arcpy import env # Set workspace env.workspace = "Database Connections/Connection to Jerry.sde" # Set local variables in_lines = gp.QualifyTableName("base_roads", wkspc) # base_roads is a standalone feature class rid = "route1" fr_fld = "begmp1" to_fld = "endmp1" out_routes = "create_output3" # write the result to a standalone feature class # Execute CreateRoutes arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "TWO_FIELDS", fr_fld, to_fld)