Summary
Creates bridge parapets and polygon masks at line intersections to indicate underpasses.
Illustration
Usage
Intersecting line features symbolized with stroke representations as inputs are required.
This tool is identical to the Create Overpass tool except that the Expression parameter selects from the Input Below Features With Representations parameter in this tool as well as from the Input Above Features With Representations parameter in the Create Overpass tool.
The Input Above Features With Representations layer can be the same as the Input Below Features With Representations layer in the case of self-overlapping features. When input above and input below representations are the same, an SQL expression is required for further refinement of feature selection.
Syntax
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})
Parameter | Explanation | Data Type |
in_above_features | The input line feature layer containing stroke representations that intersect—and will be symbolized as passing above—stroke representations in the Input Below Features With Representations parameter. | Layer |
in_below_features | The input line feature layer containing stroke representations that intersect—and will be symbolized as passing below—stroke representations in the Input Above Features With Representations parameter. These features will be masked by the polygons created in the Output Underpass Feature Class parameter. | Layer |
margin_along | Sets the length of the mask polygons along the Input Above Features With Representations parameter by specifying the distance in page units that the mask should extend beyond the width of the stroke symbol of the Input Below Features With Representations parameter. The Margin Along parameter must be specified, and it must be greater than or equal to zero. Choose a page unit for the margin; the default is points. | Linear Unit |
margin_across | Sets the width of the mask polygons across the Input Above Features With Representations parameter by specifying the distance in page units that the mask should extend beyond the width of the stroke symbol of the Input Below Features With Representations parameter. The Margin Across parameter must be specified, and it must be greater than or equal to zero. Choose a page unit 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 Input Below Features With Representations parameter. | 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 Input Below Features With Representations parameter. | Relationship Class |
where_clause (Optional) | An SQL expression used to select a subset of features in the Input Above Features With Representations parameter. Use quotation marks—for example, "MY_FIELD"—or if you're querying personal geodatabases, enclose fields in square brackets—for example, [MY_FIELD]. See SQL reference for query expressions used in ArcGIS for more information on 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 of the parapet features.
| 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 to the Wing Type value of 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.CreateUnderpass_cartography("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)
Environments
Licensing information
- Basic: No
- Standard: No
- Advanced: Yes