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 environment 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:\Users\patrickb\AppData\Local\Temp\Create_Output0.txt (where Create_Output is the name of the output route feature class).
The Output has M Values environment setting will be ignored. The Output Route Feature Class will have M (measure) values.
Syntax
arcpy.lr.CreateRoutes(in_line_features, route_id_field, out_feature_class, measure_source, {from_measure_field}, {to_measure_field}, {coordinate_priority}, {measure_factor}, {measure_offset}, {ignore_gaps}, {build_index})
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
CreateRoutes example 1 (Python window)
The following Python window script demonstrates how to use the CreateRoutes function in the Python window.
import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.CreateRoutes_lr(base_roads.shp, "route1", "newRoutes", "LENGTH", "#", "#",
"LOWER_LEFT", 0.00018939394)
CreateRoutes example 2 (stand-alone script)
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.
# Import system modules
import arcpy
# Set workspace
arcpy.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)
CreateRoutes example 3 (stand-alone script)
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
# Set workspace
arcpy.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 result to the roads feature dataset
# Execute CreateRoutes
arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "ONE_FIELD", m_fld, "#",
"LOWER_LEFT")
CreateRoutes example 4 (stand-alone script)
The following Python script demonstrates how to use the CreateRoutes function in a stand-alone Python script using enterprise geodatabase data.
# Name CreateRoutes_Example4.py
# Description: Create routes from lines. The lines are in an enterprise
# geodatabase. The TWO_FIELD option will be used to set the measures.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/MyProject/myConn.sde"
# Set local variables
# base_roads is a standalone feature class
in_lines = arcpy.ValidateTableName("base_roads", wkspc)
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)
CreateRoutes example 5 (stand-alone script)
The following Python script demonstrates how to use the CreateRoutes function in a stand-alone Python script using personal geodatabase data.
# Name: CreateRoutes_Example5.py
# Description: Create routes from lines. The lines are in a personal
# geodatabase. The ONE_FIELD option will be used to set the measures.
# Import system modules
import arcpy
# Set workspace
arcpy.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 result to the roads feature dataset
# Execute CreateRoutes
arcpy.CreateRoutes_lr(in_lines, rid, out_routes, "ONE_FIELD", m_fld, "#",
"LOWER_LEFT")
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes