Skip To Content

How Collapse Road Detail works

About the Collapse Road Detail tool

The Collapse Road Detail tool identifies small configurations of road segments that interrupt the general trend of a road network and replaces them with a simplified depiction.

Configurations are collapsed regardless of road class if the diameter across the open area is less than or equal to the Collapse Distance parameter. All uncollapsed roads from the input collection are copied to the output feature class.

Data preparation considerations

This tool is optimized for the spatial relationships typically found in a road network. Unexpected results may be produced if the tool is used to process other themes. It is very important that the geometry of the input features is correctly established for the tool to maintain the relationship of the features as they coexist in a road collection. Take note of the following input data requirements and suggestions:


A warning is raised if the input features are not in a projected coordinate system. This tool relies on linear distance units, which will create unexpected results in an unprojected coordinate system. It is strongly suggested that you run this tool on data in a projected coordinate system to ensure valid results. An error is raised and the tool will not process if the coordinate system is missing or unknown.

  • Single-part features: The input features cannot contain multipart features. Use the Multipart To Singlepart tool or create a topology with a Must Be Single Part line rule to convert features to single part.

  • Shared segments—Input features should not overlap one another so that they share segments. Create a topology with the Must Not Overlap and Must Not Self-Overlap line rules to resolve these issues. If the tool is being run with more than one input layer, create a topology with the Must Not Overlap With rule. If shared segments are detected, a warning is raised, but the tool continues to run. The ObjectIDs of the features involved are written to a log file named SharedGeom#.txt (where # is a numeral that increases incrementally with each log file generated).

  • Self-intersecting features—Input line features that cross over themselves or share common start and endpoints may cause unexpected results. Create a topology with a Must Not Self-Intersect line rule to identify these areas. If self-intersecting features are detected, a warning is raised and the tool will continue to process. The ObjectIDs of self-intersecting features are written to a log file named SelfIntersect#.txt (where # is a numeral that increases incrementally with each log file generated).

  • Geometry below the XY tolerance—There may be some cases where there are features in the data that are below the XY tolerance specified in the map or in the environment of the tool. If features with lengths below the tolerance are detected, a warning is raised and these features are ignored by the tool. The ObjectIDs of features with geometry below the tolerance are written to a log file named GeomBelowTolerance#.txt (where # is a numeral that increases incrementally with each log file generated).

  • Empty or null geometry—The input features must consist of valid geometries. If features with zero or null shape length are detected, a warning is raised and these features are ignored by the tool. The ObjectIDs of features with empty or null geometry are written to a log file named EmptyGeom#.txt (where # is a numeral that increases incrementally with each log file generated). If necessary, use the Repair Geometry tool to repair these features.

  • In the Windows operating system, log files that are generated when warnings or errors are raised are written to C:\Users\<user name>\AppData\Local\ESRI\GeoProcessing.

  • Track collapsed features: To determine which features were collapsed, add a field called CRD_TYPE (short or long integer) to the input feature class. After processing, the field will be populated as follows:

    • 0 = Feature does not participate in an interrupting road detail configuration
    • 1 = Road detail collapsed successfully
    • 2 = Road detail not collapsed, attached to parallel roads
    • 3 = Road detail not collapsed, does not interrupt network
    • 4 = Road detail not collapsed, configuration not handled
    You can use this information for quality control checking or to identify features that may need different symbology for a more appropriate depiction. For features coded with CRD_TYPE = 2, consider running the Merge Divided Roads tool first, then running the Collapse Road Detail tool again. To handle the features coded CRD_TYPE = 3, consider running the Thin Road Network tool. For features coded CRD_TYPE = 4, visual inspection and perhaps manual editing may be necessary. These configurations are usually difficult to detect and collapse because of the angles that adjoining roads attach or enter into the open road detail. All values will be populated on the input features. Only values of 2, 3, and 4 will be written to the CRD_Type field in the output.

  • Reference scale: Ensure that the reference scale is set to specify the Collapse Distance parameter in page units (pt, in, mm, cm).

  • To assess the coordinate system, the Cartographic coordinate system environment variable is used if it is set; otherwise, the coordinate system of the data frame is used if the tool is run in the foreground in ArcMap. If neither of these are available, the coordinate system of the input layers is used.

Workflow considerations

Here are some tips to help you use these tools together with other layers and other tools in a workflow:

  • Determine an appropriate collapse distance. If you are not following a cartographic specification that guides you on how close features must be before collapsing, you may want to use the Measure tool on the Tools toolbar in ArcMap to determine an average diameter or distance across the road details. Use a value slightly larger than this as the Collapse Distance parameter.

Partitioning large datasets

This tool acts contextually such that adjacent and connecting features are considered when determining the final state of each individual feature. Using a large amount of input data can exceed memory limitations. To avoid this limitation, consider enabling partitioning when running this tool by specifying a partition feature class in the Cartographic Partitions geoprocessing environment variable. Partitioning allows the tool to sequentially process the data in logical and manageable chunks. The input features delineated by each partition polygon are loaded into the tool, along with additional data from a buffer zone surrounding the partition. The additional data is considered as processing proceeds. This ensures that the resulting feature classes are seamless, and the states of features spanning across partition boundaries are consistent.

When processing the Collapse Road Detail tool by partition, the resultant roads from each partition are appended into the output feature class. The roads will be split at the partition edges. Every effort is made to ensure consistent results across partition boundaries, but it is possible that in geometrically complex or dense areas, there may be situations where a road is snapped to an incorrect road, or a road is collapsed in one partition but not when it crosses into another.