Generate Annotation Masks (Nautical)

License Level:BasicStandardAdvanced

Summary

Generates polygon masks for annotation features that intersect other polygon features. This tool supports nautical cartographic workflows that require masking based on geographic coincidence to specified input features. The specified input features (those that intersect the input annotation features) can be polygons or polylines from the ArcGIS for Maritime: Charting data model or other sources.

This tool is a model that increases productivity in creating and updating cartographic data for digital and hard-copy nautical charts.

Usage

Syntax

GenerateAnnotationMasks_nautical (Input_Annotation_Layer, Intersecting_Layers, Margin, Calculation_coordinate_system, Reference_Scale, Output_Mask_Layer)
ParameterExplanationData Type
Input_Annotation_Layer

The annotation layer from which masks will be created.

Feature Layer
Intersecting_Layers
[Intersecting_Layers,...]

Masks are generated for annotations that intersect features in these layers.

Feature Layer
Margin

Specifies a space, in page units, that surrounds the Input Annotation Layer features used to create the mask polygons. The default value is 1 point.

Linear Unit
Calculation_coordinate_system

The spatial reference of the map in which the masking polygons will be used. This spatial reference is not assigned to the Output Mask Layer.

Spatial Reference
Reference_Scale

Scale used to calculate masking geometry.

Double
Output_Mask_Layer

The output feature class that will contain the mask features. The tool creates this feature class.

Feature Class

Code Sample

GenerateAnnotationMasks example (stand-alone script)

The following stand-alone script demonstrates how to use the GenerateAnnotationMasks tool.

# Name: GenerateAnnoMasks_Example.py
# Description: Creates annotation masks around anno features that intersect input polygons.
# Requirements: Esri Nautical Solution

import arcpy

# create a feature layer for the annotation features
inAnno = r'c:\data\nautical.sde\Micklefirth.DBO.Nautical\Micklefirth.DBO.AidsToNavigationPAnno'
res = arcpy.MakeFeatureLayer_management(inAnno,'inAnno')
inAnnoLayer = res.getOutput(0)

# create a list of intersecting layers
intersectLayers = r'c:\data\nautical.sde\Micklefirth.DBO.Nautical\Micklefirth.DBO.DepthsA'

# masking size
margin = "2 points"

# map coordinate system & reference scale
calculationCoordSystem = "GEOGCS['GCS_WGS_1984',DATUM['D_WGS_1984',SPHEROID['WGS_1984',6378137.0,298.257223563]],PRIMEM['Greenwich',0.0],UNIT['Degree',0.0174532925199433]];60.8820986300001 -32.55081202 9.90206032915961E+16;-100000 10000;-100000 10000;8.98315284119522E-09;0.001;0.001;IsHighPrecision"
referenceScale=25000

# output Masking layer
outputMaskLayer=r'c:\data\nautical.gdb\annoMasks'

# import the toolbox
arcpy.ImportToolbox(r'C:\Program Files (x86)\ArcGIS\EsriNautical\Desktop10.1\ArcToolbox\Toolboxes\Nautical Tools.tbx')

# execute the GenerateAnnotationMasks tool
arcpy.GenerateAnnotationMasks_nautical(inAnnoLayer,intersectLayers,margin,calculationCoordSystem,referenceScale,outputMaskLayer)

print 'Successfully created annotation masks in ' + outputMaskLayer

Environments

Related Topics

Licensing Information

ArcGIS for Desktop Basic: No
ArcGIS for Desktop Standard: No
ArcGIS for Desktop Advanced: Requires Nautical
5/31/2013