Update Aviation Annotation (Aviation)

Available with Aviation Charting license.

Summary

Batch updates Aviation-specific annotation layers to streamline chart production and finishing.

This tool reapplies the label expressions for each annotation class in the input annotation layers. This will propagate any changes made to the label expressions to each annotation feature without having to regenerate all new annotation features. This is useful to implement any specification changes to chart annotation, as well as while developing and testing new annotation label expressions. You can also use this tool to apply scaling to annotation features to output them in a uniform size on charts of varying scales.

A geodatabase annotation feature class is stored with a defined, single reference scale. Annotation contains a FontSize field defining its size. Aviation annotation may also have its TextString field populated with text formatting tags containing font size values, which override the annotation's FontSize field value. These font size values reflect the font size of the annotation only when rendered in a map viewed at the reference scale of the annotation feature class. However, the annotation feature class may need to appear in a uniform font size in page units on charts produced at varying reference scales.

Note:

When the output chart scale does not match the reference scale of the annotation feature class, the annotation will render at an unintended size. In this case, the font sizes of the individual annotation features must be scaled to compensate for the difference.

Usage

  • The Annotation Layers parameter value must include feature-linked annotation.

  • On the tool dialog box, the SubLayers parameter will show selection check boxes for each annotation class in the annotation layer.

    Note:

    If an annotation class is not selected, it will be skipped.

  • This tool's Apply Scaling parameter will update the values of the FontSize field and any font size values within text formatting tags in the TextString field of the input annotation layer based on the reference scale of the input Area of Interest Features parameter value for the chart.

  • The formula used for scaling is: updated FontSize = ( LinkedCartoFeature.ReferenceScale * AnnotationLayer FontSize ) / AnnotationLayer ReferenceScale.

    The values used in the formula are explained below:

    • LinkedCartoFeature.ReferenceScale is the ReferenceScale field value of the annotation feature's linked cartographic feature. LinkedCartoFeature.ReferenceScale is populated by the Generate Aviation Cartographic Features tool from the AIS_AOI.ReferenceClass field value.
    • AnnotationLayer FontSize refers to both the FontSize field value and any font sizes within text formatting tags in the TextString field of the annotation features. These are the values that are updated in the updated FontSize part of the formula.
    • AnnotationLayer ReferenceScale is the reference scale property of the source annotation feature class.
  • The Area of Interest Features parameter is used to set a boundary within which airspace annotation features will be processed. Airspace polygon features that wholly or partially overlap the area of interest (AOI) will be processed.

    Use the AIS_AOI feature class from the AIS Charting data model as input for the Area of Interest Features parameter.

    Note:

    The tool will honor a definition query or selection on the Area of Interest Features parameter value. Otherwise, the tool will run using all features in the Area of Interest Features parameter value.

  • Caution:

    This tool modifies the input data. See Tools that modify or update the input data for more information and strategies to avoid undesired data changes.

Parameters

LabelExplanationData Type
Map

The input map for this tool, which will update the domains for the Annotation Layers parameter value.

Map
Annotation Layers

The feature-linked annotation layers and the specified sublayers that will be updated.

  • Annotation Layers—The input feature-linked annotation layers.
  • Sublayers—The sublayers that determine which annotation features will be processed.
Value Table
Area of Interest Features
(Optional)

The AOI boundary within which features will be processed.

Feature Layer
Apply scaling
(Optional)

Specifies whether scaling will be applied to annotation features based on linked cartographic feature reference scale and annotation reference scale.

  • Unchecked—No annotation scaling will be applied. This is the default.
  • Checked—Annotation scaling will be applied.
Boolean

Derived Output

LabelExplanationData Type
Output Annotation Layers

The output annotation layers.

Derived

arcpy.aviation.UpdateAviationAnno(in_map, in_anno_layers, {aoi_features}, {apply_scaling})
NameExplanationData Type
in_map

The input value for this tool, which will update the domains for the in_anno_layers parameter value.

Map
in_anno_layers
[in_anno_layers,...]

The feature-linked annotation layers and the specified sublayers that will be updated.

  • Annotation Layers—The input feature-linked annotation layers.
  • Sublayers—The sublayers that determine which annotation features will be processed.
Value Table
aoi_features
(Optional)

The AOI boundary within which features will be processed.

Feature Layer
apply_scaling
(Optional)

Specifies whether scaling will be applied to annotation features based on linked cartographic feature reference scale and annotation reference scale.

  • SCALEDAnnotation scaling will be applied.
  • NOT_SCALEDNo annotation scaling will be applied. This is the default.
Boolean

Derived Output

NameExplanationData Type
out_anno_layers

The output annotation layers.

Derived

Code sample

UpdateAviationAnno example (stand-alone script)

The following script demonstrates how to use the UpdateAviationAnno function.

# Name: UpdateAviationAnno_sample.py
# Description: ArcGIS processing tool that automates
# the resizing of annotation layers.

# Import system modules
import arcpy

# Check out extensions
arcpy.CheckOutExtension("Aeronautical")

# Set the environment
arcpy.env.workspace = r"D:\Data\AIS.gdb\Data"

# Set local variables
in_map = "Map"
in_anno_layers = "ADHP_C_A 'ADHP ENR;ADHP VIS';ATSRoute_C_A"
aoi_features = "AOI"
apply_scaling = "SCALED"

# Call the UpdateAviationAnno tool
arcpy.aviation.UpdateAviationAnno(in_map, in_anno_layers, aoi_features, apply_scaling)

# Check in extensions
arcpy.CheckInExtension("Aeronautical")

Environments

This tool does not use any geoprocessing environments.

Licensing information

  • Basic: No
  • Standard: Requires ArcGIS Aviation Charting
  • Advanced: Requires ArcGIS Aviation Charting

Related topics