Importer des annotations de couverture (Conversion)
Récapitulatif
Convertit un ensemble d'entités annotations de couverture en annotation de géodatabase. Vous pouvez convertir chaque niveau en classes d'annotation individuelles ou les fusionner en une seule et même classe. De même, si vous sélectionnez des couches en entrée, les remplacements de niveau et de police sont respectés.
Utilisation
-
La conversion nécessite un verrou exclusif de manière à ce qu'aucune autre application ne puisse y accéder. La sortie enregistrée dans les géodatabase ArcSDE n'est pas versionnée.
-
Vous pouvez lier des entités annotations aux entités dans une classe d'entités ponctuelles, linéaires ou surfaciques. Si vous convertissez des annotations vers ArcSDE, la classe d'entités liens ne doit pas être enregistrée comme versionnée.
-
Vous pouvez convertir chaque niveau d'annotation de couverture en classes d'annotation individuelles ou les fusionner en une seule et même classe.
-
Si vous sélectionnez une entités annotations de couverture et/ou que vous utilisez un ensemble de définitions, seules les entités sélectionnées et visibles sont converties.
-
Vous pouvez créer un ensemble de sélection d'entités de couverture et créer une couche à partir de la sélection. Si vous utilisez la couche nouvellement créée en entrée pour la conversion, seule les entités de la couche sont converties.
-
Si vous remplacez le symbole ou la couleur de police des entités annotations de couverture, ces paramètres sont respectés pendant la conversion. Si vous voulez convertir plusieurs classes d'entités annotations à l'aide des valeurs de remplacement de symbole que vous avez appliquées à une couche, assurez-vous que cette couche est la première en entrée, et activez l'option Correspondance des symboles de la première entrée.
-
Sélectionnez une échelle de référence approximativement égale à l'échelle à laquelle l'annotation est normalement affichée. L'échelle de référence va "figer" la taille du texte et des symboles à une échelle de carte particulière. A l'affichage de la carte, la taille du texte et des symboles se modifie en fonction de l'échelle d'affichage. Le texte et les symboles apparaissent plus grands lorsque vous effectuez un zoom avant (l'échelle est supérieure à l'échelle de référence) et plus petits lorsque vous effectuez un zoom arrière, (l'échelle est inférieure à l'échelle de référence).
-
L'annotation qui est liée à une entité est associée à une entité spécifique dans une autre classe d'entités de la géodatabase. Lorsque vous créez une classe d'entités annotations en sortie, le système génère automatiquement une classe de relations. Cette classe définit la relation entre l'annotation et les entités et permet à l'utilisateur de définir et de personnaliser cette relation. Elle ne permet pas d'établir de liens entre les entités et l'annotation. Ces liens sont à créer dans l'éditeur d'ArcMap.
Syntaxe
Paramètre | Explication | Type de données |
input_features [input_features,...] |
Entités annotations de couverture que vous souhaitez convertir en annotation de géodatabase. Si vous choisissez une couche d'annotations de couverture dans ArcMap, les propriétés suivantes de cette couche sont respectées durant la conversion :
| Feature Layer |
output_featureclass |
Parcourez une géodatabase existante et saisissez le nom de la nouvelle classe d'entités annotations à créer. | Feature Class |
reference_scale |
Saisissez l'échelle de référence à utiliser pour l'annotation. Ce paramètre définit l'échelle à laquelle se rapportent toutes les tailles et symboles du texte des annotations. | Double |
use_levels (Facultatif) |
Licence : Ce paramètre est uniquement disponible avec les licences d'ArcGIS for Desktop Standard et d'ArcGIS for Desktop Advanced. Spécifiez si tous les niveaux de dessin des annotations de couverture sont convertis en classes d'annotations au sein de la classe d'entités.
| Boolean |
match_symbols_from_first_input (Facultatif) |
Vous pouvez utiliser cette option si vous convertissez une annotation de couverture à partir de plusieurs sous-classes d'annotations ou de couverture et que vous devez remplacer les propriétés de police par un symbole et appliquer les valeurs de remplacement à toutes les entités en entrée.
| Boolean |
require_symbol_from_table (Facultatif) |
Spécifiez si les entités annotations en sortie doivent référencer un symbole stocké dans la collection de symboles pour la classe d'entités.
| Boolean |
feature_linked (Facultatif) |
Licence : Ce paramètre est uniquement disponible avec les licences d'ArcGIS for Desktop Standard et d'ArcGIS for Desktop Advanced. Indiquez si la classe d'entités annotations en sortie doit être liée aux entités d'une autre classe d'entités.
| Boolean |
linked_feature_class (Facultatif) |
Licence : Ce paramètre est uniquement disponible avec les licences d'ArcGIS for Desktop Standard et d'ArcGIS for Desktop Advanced. Classe d'entités à laquelle vous liez des entités annotations. Cette option est disponible uniquement si vous avez choisi le paramètre FEATURE_LINKED. | Feature Layer |
create_annotation_when_feature_added (Facultatif) |
Licence : Ce paramètre est uniquement disponible avec les licences d'ArcGIS for Desktop Standard et d'ArcGIS for Desktop Advanced. Spécifiez si une nouvelle annotation est générée lorsque vous ajoutez de nouvelles entités à la classe d'entités à laquelle cette classe d'entités annotations est liée. Cette option est disponible uniquement si vous avez choisi le paramètre FEATURE_LINKED et indiqué une classe d'entités liens.
| Boolean |
update_annotation_when_feature_modified (Facultatif) |
Licence : Ce paramètre est uniquement disponible avec les licences d'ArcGIS for Desktop Standard et d'ArcGIS for Desktop Advanced. Spécifiez si l'éditeur d'ArcMap met automatiquement à jour le placement d'annotations lorsque vous modifiez des entités dans la classe d'entités à laquelle cette classe d'entités annotations est liée. Cette option est disponible uniquement si vous avez choisi le paramètre FEATURE_LINKED et indiqué une classe d'entités liens.
| Boolean |
Exemple de code
Le script de fenêtre Python suivant illustre l'utilisation de l'outil ImportCoverageAnnotation en mode immédiat.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.ImportCoverageAnnotation_conversion("roads/annotation", "Ontario.gdb/roads_anno", 10000, "CLASSES_FROM_LEVELS", "NO_MATCH", "NO_SYMBOL_REQUIRED", "STANDARD", "", "AUTO_CREATE", "AUTO_UPDATE")
Le script autonome suivant montre comment utiliser l'outil ImportCoverageAnnotation.
# Name: ImportCoverageAnnotation_Example.py
# Description: Create a geodatabase and import coverage annotation into it using the
# ImportCoverageAnnotation tool.
# import system modules
import arcpy, os
from arcpy import env
# Set environment settings - user specified
# User input coverage workspace - eg. C:/data
env.workspace = raw_input('Coverage workspace: ')
# User input Coverage name - eg. Roads
covName = raw_input('Coverage Name: ')
# Create file geodatabase based on coverage
fgdb = env.workspace + os.sep + covName + ".gdb"
arcpy.CreateFileGDB_management(os.path.dirname(fgdb), os.path.basename(fgdb))
# Set workspace to coverage
env.workspace = env.workspace + os.sep + covName
# Get all coverage annotation subclasses
covAnnos = arcpy.ListFeatureClasses("", "Annotation")
# Import each annotation subclass
for covAnno in covAnnos:
print "Importing Coverage annotation..."
# Set variables
outFeatureClass = fgdb + os.sep + covAnno.replace(".", "")
refScale = 10000
useLevels = "CLASSES_FROM_LEVELS"
matchSymbols = "NO_MATCH"
requireSymbol = "NO_SYMBOL_REQUIRED"
featLinked = "STANDARD"
linkedFeatClass = ""
autoCreate = "AUTO_CREATE"
autoUpdate = "AUTO_UPDATE"
try:
# Process: Import the coverage annotation
arcpy.ImportCoverageAnnotation_conversion(covAnno, outFeatureClass, refScale, useLevels,
matchSymbols, requireSymbol, featLinked,
linkedFeatClass, autoCreate, autoUpdate)
except:
# If an error occurred while running a tool print the messages
print arcpy.GetMessages()
print "Import complete"