Smooth Shared Edges (Cartography)

Summary

Smooths the edges of the input features while maintaining the topological relationship with edges shared with other features.

Illustration

Smooth Shared Edges tool example
Input 1 and Input 2 are smoothed on all edges. Shared Edge Polygon and Shared Edge Line are smoothed only along edges shared with Input 1 and Input 2.

Usage

  • This tool modifies the Input Features and Shared Edge Features parameters. It does not produce new output feature classes.

  • Smoothing is applied to all Input Features edges and only Shared Edge Features edges that share an edge with any Input Features edges. Shared Edge Features edges that do not share an edge with at least one Input Features edge are not smoothed.

Parameters

LabelExplanationData Type
Input Features

The lines or polygons to be smoothed.

Feature Layer
Smoothing Algorithm

Specifies the smoothing algorithm.

  • Polynomial Approximation with Exponential Kernel (PAEK) — Calculates a smoothed polygon that will not pass through the input polygon vertices. It is the acronym for Polynomial Approximation with Exponential Kernel. This is the default.
  • Bezier interpolation — Fits Bezier curves between vertices. The resulting polygons pass through the vertices of the input polygons. This algorithm does not require a tolerance. Bezier curves will be approximated in the output.
String
Smoothing Tolerance

Determines the degree of smoothing. A unit can be specified; if no unit is specified, the unit of the input will be used. This is only used for the PAEK algorithm. The parameter will not appear on the tool dialog box when Bezier interpolation is selected and, in scripting, a value of 0 must be used.

Linear Unit
Shared Edge Features
(Optional)

Line or polygon features that will be smoothed along edges shared with input features. Other edges are not smoothed.

Feature Layer
Input Barrier Layers
(Optional)

Point, line, or polygon features that act as barriers for smoothing. The smoothed features will not touch or cross barrier features.

Feature Layer

Derived Output

LabelExplanationData Type
Output Feature Class

The smoothed input features.

Feature Layer
Output Feature Class

The shared edge features.

Feature Layer

arcpy.cartography.SmoothSharedEdges(in_features, algorithm, tolerance, {shared_edge_features}, {in_barriers})
NameExplanationData Type
in_features
[in_features,...]

The lines or polygons to be smoothed.

Feature Layer
algorithm

Specifies the smoothing algorithm.

  • PAEK Calculates a smoothed polygon that will not pass through the input polygon vertices. It is the acronym for Polynomial Approximation with Exponential Kernel. This is the default.
  • BEZIER_INTERPOLATIONFits Bezier curves between vertices. The resulting polygons pass through the vertices of the input polygons. This algorithm does not require a tolerance. Bezier curves will be approximated in the output.
String
tolerance

Determines the degree of smoothing. A unit can be specified; if no unit is specified, the unit of the input will be used. This is only used for the PAEK algorithm. The parameter will not appear on the tool dialog box when Bezier interpolation is selected and, in scripting, a value of 0 must be used.

Linear Unit
shared_edge_features
[shared_edge_features,...]
(Optional)

Line or polygon features that will be smoothed along edges shared with input features. Other edges are not smoothed.

Feature Layer
in_barriers
[in_barriers,...]
(Optional)

Point, line, or polygon features that act as barriers for smoothing. The smoothed features will not touch or cross barrier features.

Feature Layer

Derived Output

NameExplanationData Type
out_feature_class

The smoothed input features.

Feature Layer
out_shared_edge_feature_class

The shared edge features.

Feature Layer

Code sample

SmoothSharedEdges example (Python window)

The following Python window script demonstrates how to use the SmoothSharedEdges tool in immediate mode:

import arcpy
arcpy.env.workspace = "C:/data/LandUse.gdb"
arcpy.SmoothSharedEdges_cartography
arcpy.SmoothSharedEdges_cartography("Water;Parks;", "PAEK", "10 Meters", 
                                    "Commercial;Highways;Buildings")
SmoothSharedEdges example (stand-alone script)

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

# Name: SmoothSharedEdges_standalone_script.py
# Description: Smoothes input features while maintaining topological 
#              relationships along shared edges. For features included as 
#              shared_edge_features (4th argument of 
#              SmoothSharedEdges_cartography()) only the edges that are shared 
#              with in_features (1st argument) are smoothed. 

# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data/LandUse.gdb"

# Set local variables
in_features = "Water;Parks"
algorithm = "PAEK"
tolerance = "10 Meters"
shared_edge_features = "Commercial;Highways;Buildings"
barriers = None

# Execute Smooth Shared Edges
arcpy.SmoothSharedEdges_cartography(in_features, algorithm, tolerance, 
                                    shared_edge_features, barriers)

Licensing information

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

Related topics