Summary
Creates annotation for contour features.
The tool creates an annotation feature class with corresponding mask polygons based on input contour features.
Usage
The contours are labeled using the Contour placement style and the Centered straight placement position in the Maplex Label Engine.
The output of this tool is a group layer. The group layer will contain the input contour features, the annotation layer, and the mask polygons.
An existing group layer will be overwritten if the same layer name is specified and if you explicitly state that overwriting outputs is allowed.
When working in ArcCatalog or ModelBuilder, you can use the Save To Layer File tool to write the output group layer to a layer file. When using ArcMap, the tool adds the group layer to the display if this option is checked in the geoprocessing options. The group layer that is created is temporary and will not persist after the session ends unless the document is saved.
Group layers created in ArcCatalog cannot be used in ArcMap unless they are saved to a layer file using the Save To Layer File tool.
Annotation feature classes will not be overwritten if the tool is run multiple times on a single contour feature class. In this case, a number will be added to the annotation feature class name (for example, ContourAnno, ContourAnno_1, and so on).
Each mask will be created with a two-point margin around the annotation feature and a mask type of exact simplified, meaning that the mask will be a generalized polygon representing the exact shape of the annotation.
There are three choices for the color of the contour layer and output annotation: black, brown, and blue.
Contours that have been created using the Contour With Barriers tool contain a Type field. The Type field contains one or more of the following values:
- 1—Contours
- 2—Indexed contours
- 3—Explicit contours
This Type field can be used as input to the Contour Type Field parameter. A separate annotation class will be created for annotation of each type.
Syntax
arcpy.cartography.ContourAnnotation(in_features, out_geodatabase, contour_label_field, reference_scale_value, out_layer, contour_color, {contour_type_field}, {contour_alignment}, {enable_laddering})
Parameter | Explanation | Data Type |
in_features | The contour line feature class for which the annotation will be created. | Feature Layer |
out_geodatabase | The workspace where the output feature classes will be saved. The workspace can be an existing geodatabase or an existing feature dataset. | Workspace; Feature Dataset |
contour_label_field | The field in the input layer attribute table on which the annotation text will be based. | Field |
reference_scale_value | The scale that will be used as a reference for the annotation. This sets the scale on which all symbol and text sizes in the annotation will be based. | Double |
out_layer | The group layer that will contain the contour layer, the annotation, and the mask layer. When working in ArcCatalog, you can use the Save To Layer File tool to write the output group layer to a layer file. When using ArcMap, the tool adds the group layer to the display if this option is checked in the geoprocessing options. The group layer that is created is temporary and will not persist after the session ends unless the document is saved. | Group Layer |
contour_color | Specifies the color of the output contour layer and annotation features.
| String |
contour_type_field (Optional) | The field in the input layer attribute table containing a value for the type of contour feature. An annotation class will be created for each type value. | Field |
contour_alignment (Optional) | Specifies how the annotation will be aligned to contour elevations. The annotation can be aligned to the contour elevations so that the top of the text is always placed uphill. This option allows the annotation to be placed upside down. The contour annotation can also be aligned to the page, ensuring that the text is never placed upside down.
| String |
enable_laddering (Optional) | Specifies whether annotation will be placed in ladders. Placing annotation in ladders will place the text so it appears to step up and step down the contours in a straight path. These ladders will run from the top of a hill to the bottom, will not cross each other, will belong to a single slope, and will not cross any other slope.
| Boolean |
Derived Output
Name | Explanation | Data Type |
out_geodatabase2 | The workspace where the output feature classes are saved. | Workspace; Feature Dataset |
Code sample
ContourAnnotation example (Python window)
The following stand-alone script demonstrates how to use the ContourAnnotation function.
import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.ContourAnnotation_cartography("Contours", "C:/data/data.gdb", "Contour",
50000, "ContourGroupLayer", "BLACK", "",
"PAGE")
ContourAnnotation example 2 (stand-alone script)
This sample executes the ContourWithBarriers function and uses the output from that tool as input to the ContourAnnotation function.
# Description: Create a contour with barriers feature class and then create
# annotation for the contours.
# Requirements: ArcGIS Spatial Analyst extension
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/data.gdb"
# Set local variables
inRaster = "elevation"
inBarrier = "ridges"
inTextFile = ""
explicitValues = "NO_EXPLICIT_VALUES_ONLY"
contourInterval = 200
indexInterval = 1000
contourList = [1500, 3000]
baseContour = 0
outContours = "C:/data/data.gdb/outcontourwithbarriers"
# Check out the ArcGIS ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ContourWithBarriers
arcpy.sa.ContourWithBarriers(inRaster, outContours, inBarrier, "POLYLINES",
inTextFile, explicitValues, baseContour,
contourInterval, indexInterval, contourList)
# Set local variables
inFeatures = "C:/data/data.gdb/outcontourwithbarriers"
inWorkspace = "C:/data/data.gdb"
LabelField = "Contour"
RefScaleValue = 50000
outLayer = "Contours"
Color = "BROWN"
TypeField = "Type"
Alignment = "PAGE"
Laddering = "NOT_ENABLE_LADDERING"
# Execute ContourAnnotation
arcpy.ContourAnnotation_cartography(inFeatures, inWorkspace, LabelField,
RefScaleValue, outLayer, Color, TypeField,
Alignment, Laddering)
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes