Импорт аннотаций покрытия (Import Coverage Annotation) (Конвертация)
Резюме
Конвертирует набор аннотаций покрытия в аннотации базы геоданных. Вы можете конвертировать каждый уровень в отдельный подкласс аннотаций или объединить их все в один подкласс. Также, при выборе слоев карты, установленные уровень и шрифт будут учтены при конвертации.
Использование
-
Для конвертации требуется исключительная блокировка, так что данные нельзя открыть другим приложением. Выходные данные, записанные в базы геоданных ArcSDE, не будут версионными.
-
Вы можете связать пространственные объекты аннотации с пространственными объектами в точечном, линейном или полигональном классе пространственных объектов. Если вы конвертируете аннотацию в ArcSDE, связанный класс пространственных объектов не должен быть зарегистрирован как версионный.
-
Вы можете конвертировать каждый уровень аннотации покрытия в отдельные классы аннотаций или объединить их в один класс.
-
Если вы выбираете пространственные объекты аннотации покрытия и/или используете определяющий запрос, конвертированы будут только те пространственные объекты, которые выбраны и видимы.
-
Вы можете создать набор выборки пространственных объектов покрытия и создать новый слой из выборки. Если вы используете этот новый слой в качестве входного при конвертации, конвертированы будут только те пространственные объекты слоя.
-
Если вы замещаете шрифт символа или цвет пространственных объектов аннотаций покрытия, во время конвертации эти установки будут наследованы. Если вы хотите конвертировать более одного класса объектов аннотаций с помощью перезаписи символов, которые вы применяете к одному слою, убедитесь, что слой - первые входные данные, и проверьте опцию Сопоставления символов из первых входных данных (Match symbols from first input).
-
Выберите базовый масштаб, который приблизительно равен масштабу, в котором аннотация отобразится нормально. Вам может показаться, что базовый масштаб "замораживает" размеры символа и текста на конкретном масштабе карты. При просмотре карты размеры символов и текста меняются в зависимости от масштаба просмотра. Символу и текст будут увеличиваться при увеличении (текущий масштаб карты больше базового масштаба) и становиться меньше при уменьшении (текущий масштаб карты меньше базового масштаба).
-
Объектно-связанная аннотация связана с конкретным объектом в другом классе пространственных объектов базы геоданных. Если эта опция выбрана, когда вы создаете выходной класс пространственных объектов аннотаций, также будет автоматически создан класс отношений. Этот класс отношений определяет отношения между аннотацией и пространственными объектами и позволяет определить и настроить это отношение. Он не будет устанавливать связь между пространственными объектами и аннотацией. Это должно быть сделано в рамках редактора ArcMap.
Синтаксис
Параметр | Объяснение | Тип данных |
input_features [input_features,...] |
Объекты аннотаций покрытия, которые вы хотите конвертировать в аннотацию базы геоданных. Если вы выбираете слой аннотаций покрытия в ArcMap, следующие свойства этого слоя будут учтены в процессе конвертации:
| Feature Layer |
output_featureclass |
Класс объектов-аннотаций базы геоданных, в который вы хотите конвертировать аннотации покрытия. | Feature Class |
reference_scale |
Введите масштаб, который будет использоваться как базовый для аннотации. Оно устанавливает масштаб, на котором будут основаны все размеры символов и текста в аннотации. | Double |
use_levels (дополнительно) |
Лицензия: Этот параметр доступен только с лицензиями ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced. Все уровни аннотаций покрытия будут конвертированы в подклассы аннотаций внутри класса аннотаций.
| Boolean |
match_symbols_from_first_input (дополнительно) |
Если вы конвертируете аннотации покрытия из нескольких покрытий или подклассов аннотаций и хотите заменить шрифт для всех входных объектов, вы можете использовать эту опцию для сопоставления символов из первого входного слоя и применения их ко всем слоям.
| Boolean |
require_symbol_from_table (дополнительно) |
Выключите эту опцию, если вы хотите, чтобы аннотации в выходном классе ссылались на символы, хранящиеся в таблице символов для класса объектов.
| Boolean |
feature_linked (дополнительно) |
Лицензия: Этот параметр доступен только с лицензиями ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced. Выберите, будет ли выходной класс объектов аннотаций связан с пространственными объектами другого класса пространственных объектов.
| Boolean |
linked_feature_class (дополнительно) |
Лицензия: Этот параметр доступен только с лицензиями ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced. Класс пространственных объектов, который будет связан с объектами-аннотациями. Опция доступна, если вы отменили предыдущий параметр. | Feature Layer |
create_annotation_when_feature_added (дополнительно) |
Лицензия: Этот параметр доступен только с лицензиями ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced. Выберите эту опцию, если вы хотите, чтобы Редактор ArcMap автоматически создавал новую аннотацию при добавлении нового объекта к классу пространственных объектов, который связан с классом аннотаций. Эта опция доступна только, если вы выбрете FEATURE_LINKED для параметра Объектно-связанные и укажете Связанный класс объектов (Linked Feature Class).
| Boolean |
update_annotation_when_feature_modified (дополнительно) |
Лицензия: Этот параметр доступен только с лицензиями ArcGIS for Desktop Standard или ArcGIS for Desktop Advanced. Укажите, будет ли Редактор ArcMap автоматически обновлять расположение аннотации, если вы редактируете пространственные объекты в классе объектов, с которым связан этот класс объектов аннотаций. Эта опция доступна только, если вы выбрете FEATURE_LINKED для параметра Объектно-связанные и укажете Связанный класс объектов (Linked Feature Class).
| Boolean |
Пример кода
Следующий скрипт окна Python демонстрирует, как использовать инструмент Импорт аннотаций покрытия (Import Coverage Annotation) в непосредственном режиме.
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")
Следующий автономный скрипт демонстрирует, как использовать инструмент Импорт аннотаций покрытия (Import Coverage Annotation).
# 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"