Сводка
Создает новый класс полигональных пространственных объектов из существующей схемы разбиения на листы.
Этот инструмент делит экстент карты, используя те же масштабы, что и в существующей схеме разбиения на листы картографического сервиса, и создает листы на большую территорию - суперлисты. Так как экстент суперлистов больше, чем у фактических листов, определенных в схеме, листы, используемые в качестве входных для инструмента Надписи листов в аннотации, могут преобразовать надписи в аннотацию на большей территории за один раз. Этот процесс уменьшает количество повторяющихся на листах аннотаций.
Использование
Существует несколько вариантов загрузки существующей схемы листов.
- Загрузка схемы листов с картографических сервисов, таких как ArcGIS Online, Google Maps, Bing Maps или Yahoo. Эти схемы листов расположены в директории установки ArcGIS Pro в папке Resources\TilingSchemes.
- Загрузка схемы листов из кэша сервиса существующей карты. Кэш всей карты имеет файл схемы листов conf.xml, расположенный в директории кэша (например: C:\arcgisserver\arcgiscache\MyService\MyDataFrame\conf.xml).
- Создание собственного файла схемы листов. Для получения дополнительной информации см. раздел Доступные свойства кэша карты в справке ArcGIS Server.
Выходной класс объектов, полученный в результате работы этого инструмента, может быть использован в качестве входного для инструмента Надписи листов в аннотации.
Для параметра Вырезать листы по краю системы координат край системы координат - это допустимая область использования для определенной географической системы координат или системы координат проекции.
Синтаксис
arcpy.cartography.MapServerCacheTilingSchemeToPolygons(input_map, tiling_scheme, output_feature_class, use_map_extent, clip_to_horizon, {antialiasing}, {levels})
Parameter | Объяснение | Тип данных |
input_map | Используемая текущая карта. | Map |
tiling_scheme | Путь к файлу .xml предопределенной схемы листов. | File |
output_feature_class | Выходной класс полигональных объектов. | Feature Class |
use_map_extent |
Выберите, создавать ли листы для всего экстента схемы листов или только для листов, пересекающих полный экстент карты.
| Boolean |
clip_to_horizon |
Определяет, ограничить ли область создания полигонов допустимой областью использования географической системы координат или системы координат проекции карты.
| Boolean |
antialiasing (Дополнительный) | Выберите, создавать ли полигоны, соответствующие кэшам картографических сервисов с активизированным сглаживанием. Размер "суперлиста" кэша картографического сервиса - 2048 x 2048 пикселов со сглаживанием или 4096 x 4096 пикселов без сглаживания. Для того чтобы определить, использовалось ли сглаживание в существующем кэше, нужно открыть файл схемы листов conf.xml и проверить, установлено ли значение TRUE для тега <Antialiasing>.
| Boolean |
levels [level,...] (Дополнительный) | Масштабные уровни, для которых создаются полигоны. Для создания полигонов для всех масштабных уровней, включенных в схему листов, оставьте этот параметр незаполненным. Вы можете выбрать, создавать ли полигоны для всех или только для некоторых масштабных уровней, включенных в вашу схему листов. Однако для добавления дополнительных масштабных уровней необходимо изменить файл вашей схемы листов или создать новый файл. | Double |
Пример кода
В следующем автономном скрипте показано использование функции MapServerCacheTilingSchemeToPolygons.
import arcpy
import os
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.MapServerCacheTilingSchemeToPolygons_cartography(
"C:/data/Annotation.mxd", os.path.join(arcpy.GetInstallInfo()['InstallDir'],
'Resources\\TilingSchemes\\WGS84_Geographic_Coordinate_System_V2.xml'),
"Tiles", "USE_MAP_EXTENT", "CLIP_TO_HORIZON", "NONE")
Представленный скрипт демонстрирует рабочий процесс с использованием функций MapServerCacheTilingSchemeToPolygons и TiledLabelsToAnnotation.
# Name: MapServerCacheTilingSchemeToPolygons_Example2.py
# Description: Create a tile feature class and use those tiles to create annotation.
# Requirements: ArcGIS Desktop Advanced license
# Import system modules
import arcpy
import os
# Set environment settings
arcpy.env.workspace = "C:/data/data.gdb"
# Set local variables
inMapDocument = "C:/data/Annotation.mxd"
# Change path below to match your system
inTilingScheme = os.path.join(arcpy.GetInstallInfo()['InstallDir'],
'Resources\\TilingSchemes\\ArcGIS_Online_Bing_Maps_Google_Maps.xml'),
outFeatureClass = "C:/data/data.gdb/Tiles"
inTileExtent = "USE_MAP_EXTENT"
inClipping = "CLIP_TO_HORIZON"
inAntialiasing = "NONE"
inScales = ""
# Execute MapServerCacheTilingSchemeToPolygons
arcpy.MapServerCacheTilingSchemeToPolygons_cartography(
inMapDocument, inTilingScheme, outFeatureClass,
inTileExtent, inClipping, inAntialiasing, inScales)
# Set local variables
inMapDocument = "C:/data/Annotation.mxd"
inPolygonIndexLayer = "Tiles"
inOutGeodatabase = "C:/data/data.gdb"
outOutLayer = "GroupAnno"
inAnnoSuffix = "Anno"
inRefScaleValue = ""
inRefScaleField = "Tile_Scale"
inTileIDField = "OID"
inCoordSysField = ""
inMapRotationField = ""
inFeatureLinked = "STANDARD"
inGenerateUnplaced = "GENERATE_UNPLACED_ANNOTATION"
# Execute TiledLabelsToAnnotation
arcpy.TiledLabelsToAnnotation_cartography(
inMapDocument, inPolygonIndexLayer, inOutGeodatabase,
outOutLayer, inAnnoSuffix, inRefScaleValue, inRefScaleField,
inTileIDField, inCoordSysField, inMapRotationField,inFeatureLinked,
inGenerateUnplaced)
Environments
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да