Thin Road Network (Cartography)
Summary
Generates a simplified road network that retains connectivity and general character to display at a smaller scale.
This tool does not generate new output. It assign values in the Invisibility Field in the input feature classes to identify features that are extraneous and can be removed from view to result in a simplified, yet representative, collection of roads. No feature geometry is altered or deleted.
Features are not actually deleted by Thin Road Network. To actually remove features, consider using the Trim Line tool.
The resulting simplified road collection is determined by feature significance, importance, and density. Segments that participate in very long itineraries across the extent of the data are more significant than those required only for local travel. Road classification, or importance, is specified by the Hierarchy Field parameter. The density of the resulting street network is determined by the Minimum Length parameter which corresponds to the shortest segment that is visually sensible to show at scale.
Learn more about How Thin Road Network works and see a table of recommended minimum length values to use as a starting point.
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.
Illustration
Usage
-
The Invisibility Field must be present and named the same for all input feature classes. Features that should remain visible are assigned a value of 0; those that should be removed from the display are assigned a value of 1. Use a layer definition query or a selection to display the resulting simplified collection (i.e., invisibility <> 1). You can use multiple invisibility fields to store different results—corresponding to different output scales—on the same feature class.
-
The Hierarchy Field identifies the relative importance of features to help establish which features are significant. Hierarchy value 1 indicates the most important features with importance decreasing as hierarchy value increases. For optimal results, use no more than five levels of hierarchy. Input roads with Hierarchy = 0 are considered "locked" and will remain visible, along with adjacent roads necessary for connectivity. The hierarchy field must be present and named the same for all input feature classes.
The hierarchy is typically derived from a field that specifies road classification and corresponds to the way that roads are symbolized. It is not related to the concept of hierarchy used in network analysis.
The Minimum Distance parameter defines a sense of the resolution or granularity of the resulting simplified road collection. It should correspond to a length that is visually significant to include at the final scale. The results of this tool are a balanced compromise between the requirements posed by hierarchy, visibility locking, resolution, and the morphology and connectivity of the road geometry. Therefore, the minimum distance value cannot necessarily be measured directly in the resulting feature set.
The integrity of the results of this tool relies on the topological integrity of the inputs. Proper connections must exist at intersections to faithfully represent the connectivity of the road network. See How Thin Road Network works for more information about data requirements and other helpful tips.
If the inputs include a feature layer pointing to a representation, any geometry overrides associated with that representation will be used as the input geometry to determine the morphology and connectivity of the road collection. Similarly, representation visibility overrides will be honored, ensuring that invisible representations are not included in the resulting road collection, and that adjacent roads are handled accordingly to maintain connectivity.
Syntax
Parameter | Explanation | Data Type |
in_features [in_features,...] |
The input linear roads that should be thinned to create a simplified collection for display at smaller scales. | Feature Layer |
minimum_length |
An indication of the shortest road segment that is sensible to display at the output scale. This controls the resolution, or density, of the resulting road collection. If the units are in point, mm, cm, or inches the value is considered in page units and the reference scale is taken into account. | Linear Unit |
invisibility_field |
The field that stores the results of the tool. Features that participate in the resulting simplified road collection have a value of 0 (zero). Those that are extraneous have a value of 1. A layer definition query can be used to display the resulting road collection. This field must be present and named the same for each input feature class. | Field |
hierarchy_field |
The field that contains hierarchical ranking of feature importance, where 1 is very important and larger integers reflect decreasing importance. A value of 0 forces the feature to remain visible in the output collection. This field must be present and named the same for each input feature class. | Field |
Code Sample
The following Python Window script demonstrates how to use the ThinRoadNetwork tool in immediate mode.
import arcpy from arcpy import env env.workspace = "C:/data/cartography.gdb/transportation" arcpy.ThinRoadNetwork_cartography("roads.lyr", "1000 meters", "invisible", "level")
This stand-alone script shows an example of using the ThinRoadNetwork tool.
# Name: ThinRoadNetwork_standalone_script.py # Description: Removes a subset of road segments to create a simplified road network that retains the connectivity and character of the input. # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data/cartography.gdb/transportation" # Set local variables in_features = "roads.lyr" minimum_length = "1000 meters" invisibility_field = "invisible" level_field = "level" # Execute Thin Road Network arcpy.ThinRoadNetwork_cartography(in_features, minimum_length, invisibility_field, level_field)
Environments
- Reference Scale
The reference scale is only considered when the Minimum Distance parameter is entered in page units. When the reference scale is available, the detection of false dead ends is based on feature separation of 0.5mm at scale. Otherwise a value twice the tolerance of the spatial reference is used.