Create Underpass (Cartography)

License Level:BasicStandardAdvanced

Summary

Allows intersecting lines to be displayed as underpassing one another by creating bridge parapets and masks to cover the underlying road segment.

Illustration

Illustration of Create Underpass tool
Creating underpass with different wing types

Usage

Syntax

CreateUnderpass_cartography (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})
ParameterExplanationData 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.

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. These features will be masked by the polygons created in the Output Overpass feature class.

Layer
margin_along

Sets the length of the mask polygons along the Input Above Features by specifying the distance in page units that the mask should extend beyond the width of the stroke symbol of the Input Below features. The Margin Along 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 by specifying the distance in page units that the mask should extend beyond the width of the stroke symbol of the Input Below Features. The Margin Across 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.

Feature Class
out_mask_relationship_class

The output relationship class that will be created to store links between Underpass mask polygons and the stroke representations of the Input Below Features.

Relationship Class
where_clause
(Optional)

A SQL expression used to select a subset of features in the Input Below Features with Representations parameter.

The syntax for the expression differs slightly depending on the data source. For example, if you're querying file or ArcSDE geodatabases, shapefiles, or coverages, enclose field names in double quotes:

"MY_FIELD"

If you're querying personal geodatabases, enclose fields in square brackets:

[MY_FIELD]

In the Python window, enclose the {where_clause} in parentheses to ensure the spaces (which are delimiters between parameters) are correctly interpreted.

For more information on SQL syntax and how it differs between data sources, see the help topic SQL reference for query expressions used in ArcGIS.

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.

  • ANGLEDSpecifies that the wing tick of the parapet will be angled between the Input Above Features and the Input Below Features. This is the default.
  • PARALLELSpecifies that the wing tick of the overpass wing will be parallel to the Input Below Features.
  • NONESpecifies that no wing ticks will be created on the parapets.
String
wing_tick_length
(Optional)

Sets 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 - NONE.

Linear unit

Code Sample

CreateUnderpass tool example 1 (Python window)

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

import arcpy
from arcpy import env
env.workspace = "C:\data"
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 tool example 2 (stand-alone Python script)

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

# Name: CreateUnderpass_standalone_script.py
# Description: creates a mask where one feature is visually below another feature
# Author: ESRI
 
# 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/transportation/under_mask_fc"
out_mask_relationship_class = "cartography.gdb/transportation/under_mask_rc"
where_clause = "'RelationshipToSurface' = 3"
out_decoration_feature_class = "cartography.gdb/transportation/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

Related Topics

Licensing Information

ArcGIS for Desktop Basic: No
ArcGIS for Desktop Standard: No
ArcGIS for Desktop Advanced: Yes
10/25/2012