ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

CreateFeatureLinkedAnnotation

  • Résumé
  • Discussion
  • Syntaxe
  • Exemple de code

Résumé

Creates annotation for features on specific charts if it does not already exist. If the annotation feature class exists, the features are appended to the existing feature class.

Licence :

This function requires an ArcGIS Aviation license.

Discussion

As features are added to charts, annotation also needs to be added for these new features. This function can be used to append new annotation features to existing annotation feature classes based on what is in the chart. It can also create annotation for specific products based on the specified product library areas of interest and create advanced annotation such as Vertical Morse code.

Syntaxe

CreateFeatureLinkedAnnotation (aoi_info, data_frame, production_database, feature_class_list, {data_model})
ParamètreExplicationType de données
aoi_info

An AviationChartInfo object that contains the information for the MapID for the areas of interest to be processed. The MapID can be retrieved using the GetAviationAOI function and will be formatted as Solution Name::Product Class Name::Series Name::Product Name::Instance Name::AOI Name.

AviationChartInfo
data_frame

The data frame for which the annotation will be created.

DataFrame
production_database

The path to the Aviation geodatabase that contains the chart data.

String
feature_class_list
[feature_class_list,...]

The feature classes where annotation needs to be created. The information required includes the name of the annotation feature class and the annotation classes. This means the feature class and annotation classes must be provided in the following format: ["FeatureClass1::Anno Class1/Anno Class2", "FeatureClass2::Anno Class1/Anno Class2/Anno Class3"].

String
data_model

The data model used to determine whether the MapID or MapID_Txt field is used to get the annotation information. Possible values are AIS or DOD.

(La valeur par défaut est AIS)

String

Exemple de code

CreateFeatureLinkedAnnotation example

This sample script updates annotation for a single chart.

# Name: CreateFeatureLinkedAnnotation.py
# Description: Creates annotation for an Alaskan chart
# Author: Esri
# Date: July 2014

# Import arcpyproduction and aviation modules
import arcpy
import arcpyproduction
from arcpyproduction import aviation
from arcpyproduction.aviation import charting

# Check out Aviation license
arcpy.CheckOutExtension("Aeronautical")


# Define dictionary
mxdDictionary = {
    "c:/data/AK_H02.mxd": {
        "AK H-2":"Aeronautical::IFR_Enroute::AK High::AK H-2::AK H-2::AK H-2 AOI"},
    "c:/data/AK_H01.mxd": {
       "AK H-1":"Aeronautical::IFR_Enroute::AK High::AK H-1::AK H-1::AK H-1 AOI",
       "Seattle Inset":"Aeronautical::IFR_Enroute::AK High::AK H-1::Seattle Inset::Seattle Inset AOI"}}


# Set variables
prodLib = "c:/data/FAA_PL.sde"
prodDatabase = "c:/data/FAA_PD.sde"
annoFCs = ["ADHP_C_A::Default"]

# Define mapidListfrom the mxdDictionary defined above
mapidList = list(set(mapidValue for dataframeList in mxdDictionary.values() for mapidValue in dataframeList.values()))


# Get Aviation AOI
mapObjects = charting.GetAviationAOI(prodLib,mapidList)

# Create feature-linked annotation
for mxdLocation in mxdDictionary.keys():

   mxd = arcpy.mapping.MapDocument(mxdLocation)
   dataframes = arcpy.mapping.ListDataFrames(mxd)

   for dataframe in dataframes:
       if mxdDictionary[mxdLocation].has_key(dataframe.name) == 0:
           continue
       mapid = mxdDictionary[mxdLocation][dataframe.name]
       charting.CreateFeatureLinkedAnnotation(mapObjects[mapid], dataframe, prodDatabase, annoFCs, "AIS")


# Check in Aviation license
arcpy.CheckInExtension("Aeronautical")

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2021 Esri. | Confidentialité | Légal