Résumé
Convertit un ensemble d’annotations de couverture en annotations de géodatabase. Vous pouvez convertir chaque niveau en classes d’annotations individuelles ou les fusionner en une seule et même classe. De la même manière, si vous sélectionnez des couches en tant qu'entrée, le niveau et les substitutions de police sont respectés.
Utilisation
La conversion nécessite un verrou exclusif afin qu'une autre application ne puisse pas l'ouvrir. La sortie écrite dans une géodatabase de bureau, de groupe de travail ou d'entreprise n'est pas versionnée.
Vous pouvez lier des entités annotations aux entités d’une classe d’entités ponctuelles, linéaires ou surfaciques. Si vous convertissez une annotation dans une géodatabase de bureau, de groupe de travail ou d'entreprise, la classe d'entités liens ne doit pas être inscrite comme versionnée.
Vous pouvez convertir chaque niveau d'annotations de couverture en classes d'annotations individuelles ou les fusionner en une seule et même classe.
Si vous sélectionnez des entités annotations de couverture et/ou utilisez un ensemble de définition, seules les entités qui sont sélectionnées et visibles sont converties.
Vous pouvez créer une sélection d’entités de couverture et créer une nouvelle couche à partir de cette sélection. Si vous utilisez cette nouvelle couche comme entrée pour la conversion, seules les entités de la couche sont converties.
Si vous remplacez la couleur ou le symbole de police des entités annotations de couverture, ces paramètres sont conservés lors de la conversion. Si vous souhaitez convertir plusieurs classes d'entités annotations à l'aide des remplacements de symboles que vous avez appliqués à une couche, assurez-vous que cette couche est la première entrée et sélectionnez 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. Vous pouvez considérer l'échelle de référence comme une fonction permettant de "figer" les tailles de texte et de symbole à une échelle de la carte en particulier. Lorsque vous affichez la carte, les tailles de texte et de symbole changent selon l'échelle d'affichage. Le texte et les symboles apparaissent plus grands lorsque vous effectuez un zoom avant (l'échelle de la carte actuelle est supérieure à l'échelle de référence) et plus petits lorsque vous effectuez un zoom arrière (l'échelle de la carte actuelle est inférieure à l'échelle de référence).
L'annotation qui est liée à des entités 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 de relations définit la relation entre l’annotation et les entités, et vous permet de définir et de personnaliser cette relation. Elle n’établit pas les liens entre les entités et l’annotation. Cette opération doit être effectuée dans l'Editeur ArcMap.
Syntaxe
ImportCoverageAnnotation_conversion (input_features, output_featureclass, reference_scale, {use_levels}, {match_symbols_from_first_input}, {require_symbol_from_table}, {feature_linked}, {linked_feature_class}, {create_annotation_when_feature_added}, {update_annotation_when_feature_modified})
Paramètre | Explication | Type de données |
input_features [input_features,...] | Les annotations de couverture que vous souhaitez convertir en une 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 entrez 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) | Spécifiez si tous les niveaux de dessin des annotations de couverture seront 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 des annotations de couverture à partir de plusieurs sous-classes d'annotations ou de couverture et que vous devez remplacer les propriétés de police d'un symbole et les appliquer à 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) | Choisissez de lier ou non la classe d'entités annotations en sortie aux entités d'une autre classe d'entités.
| Boolean |
linked_feature_class (Facultatif) | La classe d’entités à laquelle vous liez des entités annotations. Cette option est disponible uniquement si vous choisissez FEATURE_LINKED pour le paramètre feature_linked. | Feature Layer |
create_annotation_when_feature_added (Facultatif) | Spécifiez si une nouvelle annotation sera 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 choisissez FEATURE_LINKED pour le paramètre feature_linked et spécifiez une valeur pour le paramètre linked_feature_class.
| Boolean |
update_annotation_when_feature_modified (Facultatif) | Spécifiez si l'Editeur d'ArcMap mettra automatiquement à jour le placement d'annotations lorsque vous modifiez les entités d'une classe d'entités à laquelle cette classe d'entités annotations est liée. Cette option est disponible uniquement si vous choisissez FEATURE_LINKED pour le paramètre feature_linked et spécifiez une valeur pour le paramètre linked_feature_class.
| Boolean |
Exemple de code
Exemple d'utilisation de l'outil ImportCoverageAnnotation (fenêtre Python)
Le script de fenêtre Python ci-dessous 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")
Exemple d'utilisation de l'outil ImportCoverageAnnotation (script Python autonome)
Le script autonome ci-dessous illustre l'utilisation de 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"
Environnements
Informations de licence
- ArcGIS Desktop Basic: Oui
- ArcGIS Desktop Standard: Oui
- ArcGIS Desktop Advanced: Oui