Create Underpass (Cartography)

Summary

Creates bridge parapets and polygon masks at line intersections to indicate underpasses.

Illustration

Create Underpass tool illustration
A yellow polygon mask is created from margin dimensions to obscure a blue below line feature where it crosses a red above line feature. Gray bridge parapet decorations with angled wing ticks are also created.

Usage

  • Intersecting symbolized line features as inputs are required.

  • This tool is identical to the Create Overpass tool except that the Expression parameter selects from the Input Below Features parameter value in this tool as well as from the Input Above Features parameter value in the Create Overpass tool.

Parameters

LabelExplanationData Type
Input Above Features

The input line feature layer containing lines that intersect—and will be symbolized as passing above—lines in the Input Below Features parameter value.

Layer
Input Below Features

The input line feature layer containing lines that intersect—and will be symbolized as passing below—lines in the Input Above Features parameter value. These features will be masked by the polygons created in the Output Underpass Feature Class parameter value.

Layer
Margin Along

The length of the mask polygons along the Input Above Features parameter value, which is the distance in page units that the mask will extend beyond the width of the stroke symbol of the Input Below Features parameter value. This parameter value must be greater than or equal to zero. Choose a page unit (points, millimeters, and so on) for the margin; the default is points.

Linear Unit
Margin Across

The width of the mask polygons across the Input Above Features parameter value, which is the distance in page units that the mask will extend beyond the width of the stroke symbol of the Input Above Features parameter value. This parameter value must be greater than or equal to zero. Choose a page unit (points, millimeters, and so on) for the margin; the default is points.

Linear Unit
Output Underpass Feature Class

The output feature class that will be created to store polygons to mask the Input Below Features parameter value.

Feature Class
Output Mask Relationship Class

The output relationship class that will be created to store links between underpass mask polygons and the lines of the Input Below Features parameter value.

Relationship Class
Expression
(Optional)

An SQL expression used to select a subset of features from the Input Above Features parameter value.

Use quotation marks for field names, for example, "MY_FIELD".

See SQL reference for query expressions used in ArcGIS for more information about SQL syntax.

SQL Expression
Output Decoration Feature Class
(Optional)

The output line feature class that will be created to store parapet features.

Feature Class
Wing Type
(Optional)

Specifies the wing style that will be used for the parapet features.

  • Wing ticks angled between above and below featuresThe wing tick of the parapet will be angled between the Input Above Features parameter value and the Input Below Features parameter value. This is the default.
  • Wing ticks parallel to below featuresThe wing tick of the underpass wing will be parallel to the Input Below Features parameter value.
  • No wing ticks createdNo wing ticks will be created on the parapets.
String
Wing Tick Length
(Optional)

The length of the parapet wings in page units. The length must be greater than or equal to zero; the default length is 1. Choose a page unit (points, millimeters, and so on) for the length; the default is points. This parameter does not apply when the Wing Type parameter is set to No wing ticks created.

Linear Unit

arcpy.cartography.CreateUnderpass(in_above_features, in_below_features, margin_along, margin_across, out_underpass_feature_class, out_mask_relationship_class, {where_clause}, {out_decoration_feature_class}, {wing_type}, {wing_tick_length})
NameExplanationData Type
in_above_features

The input line feature layer containing lines that intersect—and will be symbolized as passing above—lines in the in_below_features parameter value.

Layer
in_below_features

The input line feature layer containing lines that intersect—and will be symbolized as passing below—lines in the in_above_features parameter value. These features will be masked by the polygons created in the out_underpass_feature_class parameter value.

Layer
margin_along

The length of the mask polygons along the in_above_features parameter value, which is the distance in page units that the mask will extend beyond the width of the stroke symbol of the in_below_features parameter value. This parameter value must be greater than or equal to zero. Choose a page unit (points, millimeters, and so on) for the margin; the default is points.

Linear Unit
margin_across

The width of the mask polygons across the in_above_features parameter value, which is the distance in page units that the mask will extend beyond the width of the stroke symbol of the in_above_features parameter value. This parameter value must be greater than or equal to zero. Choose a page unit (points, millimeters, and so on) for the margin; the default is points.

Linear Unit
out_underpass_feature_class

The output feature class that will be created to store polygons to mask the in_below_features parameter value.

Feature Class
out_mask_relationship_class

The output relationship class that will be created to store links between underpass mask polygons and the lines of the in_below_features parameter value.

Relationship Class
where_clause
(Optional)

An SQL expression used to select a subset of features from the in_above_features parameter value.

Use quotation marks for field names, for example, "MY_FIELD".

See SQL reference for query expressions used in ArcGIS for more information about SQL syntax.

SQL Expression
out_decoration_feature_class
(Optional)

The output line feature class that will be created to store parapet features.

Feature Class
wing_type
(Optional)

Specifies the wing style that will be used for the parapet features.

  • ANGLEDThe wing tick of the parapet will be angled between the in_above_features parameter value and the in_below_features parameter value. This is the default.
  • PARALLELThe wing tick of the underpass wing will be parallel to the in_below_features parameter value.
  • NONENo wing ticks will be created on the parapets.
String
wing_tick_length
(Optional)

The length of the parapet wings in page units. The length must be greater than or equal to zero; the default length is 1. Choose a page unit (points, millimeters, and so on) for the length; the default is points. This parameter does not apply when the wing_type parameter is set to NONE.

Linear Unit

Code sample

CreateUnderpass example 1 (Python window)

The following Python window script demonstrates how to use the CreateUnderpass function in immediate mode.

import arcpy
arcpy.env.workspace = "C:\data"
arcpy.env.referenceScale = "50000"
arcpy.cartography.CreateUnderpass("roads.lyr", "railroads.lyr", "2 Points", "1 Points",
                                 "cartography.gdb/transportation/under_mask_fc",
                                 "cartography.gdb/transportation/under_mask_rc", "'RelationshipToSurface' = 3",
                                 "cartography.gdb/transportation/tunnel", "PARALLEL", "1 Points")
CreateUnderpass example 2 (stand-alone script)

This stand-alone script shows an example of using the CreateUnderpass function.

# Name: CreateUnderpass_standalone_script.py
# Description: creates a mask where one feature
#              is visually below another feature
 
# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"
env.referenceScale = "50000"

# Set local variables
in_above_features = "roads.lyr"
in_below_features = "railroads.lyr"
margin_along = "2 Points"
margin_across = "1 Points"
out_overpass_feature_class = "cartography.gdb/trans/under_mask_fc"
out_mask_relationship_class = "cartography.gdb/trans/under_mask_rc"
where_clause = "'RelationshipToSurface' = 3"
out_decoration_feature_class = "cartography.gdb/trans/tunnel"
wing_type = "PARALLEL"
wing_tick_length = "1 Points"

# Execute Create Underpass
arcpy.CreateUnderpass_cartography(in_above_features,
                                  in_below_features,
                                  margin_along,
                                  margin_across,
                                  out_overpass_feature_class,
                                  out_mask_relationship_class,
                                  where_clause,
                                  out_decoration_feature_class,
                                  wing_type,
                                  wing_tick_length)

Licensing information

  • Basic: No
  • Standard: No
  • Advanced: Yes

Related topics