ArcGIS for Desktop

  • Документация
  • Стоимость
  • Поддержка

  • My Profile
  • Справка
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

Картографическая платформа вашей организации

ArcGIS for Desktop

Полноценная профессиональная ГИС

ArcGIS for Server

ГИС предприятия

ArcGIS for Developers

Инструменты для встраивания приложений с местоположениями

ArcGIS Solutions

Бесплатные шаблоны карт и приложений для отрасли

ArcGIS Marketplace

Получение приложения и данных для вашей организации.

  • Документация
  • Стоимость
  • Поддержка
Esri
  • Войти
user
  • Мой профиль
  • Выход

Справка

  • Главная
  • Начало работы
  • Карта
  • Анализ
  • Управление данными
  • Инструменты
  • Дополнительно...

Конвертировать схему в объекты

  • Краткая информация
  • Использование
  • Синтаксис
  • Пример кода
  • Параметры среды
  • Информация о лицензировании

Краткая информация

Конвертирует схематическое представление в стандартные классы пространственных объектов или шейп-файлы.

Схематические представления хранятся в скрытых классах пространственных объектов, специально предназначенных для Схематики, и требуют использования остальных таблиц конфигурации схематики и информации. Этот инструмент позволяет обмениваться схемами с другими пользователями, не передавая всего набора схематических данных, включающего все схемы и конфигурацию. Если вы планируете конвертировать несколько схем, вы можете выбрать, будут ли они все включены в один и тот же набор стандартных классов пространственных объектов или шейп-файлов, или у каждой схемы будет собственный набор классов объектов или шейп-файлов.

Примечание:

См. раздел Пример кода с примером инструмента-скрипта, позволяющего конвертировать все схемы, содержащиеся в наборе схематических данных или в папке схемы.

Использование

  • Чтобы конвертировать слой схематического представления в стандартные классы пространственных объектов, перейдите по дереву каталога и выберите базу геоданных/набор классов объектов для заданного параметра выходного пути. Чтобы конвертировать слой схематического представления в шейп-файлы, перейдите по дереву каталога и выберите папку.

  • Чтобы конвертировать несколько схем в одни и те же стандартные классы пространственных объектов/шейп-файлы, установите отметку Повторно использовать существующую структуру (Reuse Existing Structure). Чтобы конвертировать несколько схем в разные стандартные классы пространственных объектов/шейп-файлы, снимите отметку Повторно использовать существующую структуру (Reuse Existing Structure).

  • Отметьте Экспортировать все атрибуты связанных объектов (Export All Related Feature Attributes), если вы хотите добавить все атрибуты реального класса объектов к записям схемы в процессе конвертации.

  • Опция Экспортировать все атрибуты связанных объектов работает только с классами объектов схемы, для которых известно значение поля Связанные класс объектов/таблица (Associated Feature Class/Table). Если для класса объектов схемы не указаны связанные класс объектов/таблицы, атрибуты связанных объектов нельзя экспортировать.

  • Выберите ПОЛИГОН (POLYGON) в Геометрии контейнера (Container Geometry), если вы хотите конвертировать все контейнеры во входном схематическом представлении в полигональный объект. Если вы хотите конвертировать такие контейнеры в полилинейные (или точечные) объекты, выберите ПОЛИЛИНИЯ (POLYLINE) (или ТОЧКА (POINT)).

    Внимание:

    Если при использовании опции Повторно использовать существующую структуру (Reuse Existing Structure) для конвертации первой схемы выбраны ПОЛИГОН (POLYGON) (ПОЛИЛИНИЯ (POLYLINE) или ТОЧКА (POINT)), последующие конвертации нельзя изменить на ПОЛИЛИНИЮ или ТОЧКУ (ПОЛИГОН). Чтобы изменить тип конвертации, необходимо удалить структуру и конвертировать схемы снова.

  • После конвертации заданного входного слоя схематического представления в заданном месте назначения, он будет удален перед повторным созданием.

Синтаксис

ConvertDiagram_schematics (in_diagram, out_location, {reuse_fc}, {export_related_attributes}, {container_geometry}, {config_keyword})
ПараметрОбъяснениеТип данных
in_diagram

Слой схематического представления, который нужно конвертировать.

Schematic Layer
out_location

Рабочая область или набор классов объектов, в которые будет конвертировано схематическое представление. Этот контейнер уже должен существовать.

Workspace;Feature Dataset
reuse_fc
[reuse_fc,...]
(дополнительно)

Указывает, будет ли входной слой схематического представления конвертирован в те же стандартные классы объектов/шейп-файлы, что и другие схемы на основе того же шаблона схемы.

  • REUSE_FC —Должна использоваться для конвертации заданной схемы в те же стандартные классы объектов/шейп-файлы, что и другие схемы на основе того же шаблона схемы, которые уже конвертированы или будут конвертированы. В этом случае, в зависимости от выбранного места назначения, заданная схема конвертируется:
    • В набор классов объектов, имя которого соответствует имени шаблона схемы, а имена классов объектов - именам классов объектов схемы.
    • В папку, имя которой соответствует имени шаблона схемы, а имена шейп-файлов в ней - именам классов объектов схемы.
    Это значение используется по умолчанию.
  • NO_REUSE_FC —Входная схема конвертируется в новый класс объектов/папку с именем, являющимся конкатенацией имени шаблона входной схемы и имени схемы; при этом имя каждого класса объектов/шейп-файла является конкатенацией имени класса объектов схемы и имени схемы.
Boolean
export_related_attributes
(дополнительно)

Указывает, будут ли также конвертированы все атрибуты, хранящиеся в реальных классах объектов/таблицах объектов, связанных с классами объектов схемы.

  • NO_RELATED_ATTRIBUTES —Каждый объект схемы, содержащийся во входной схеме, конвертируется только с атрибутами, содержащимися в его классе объектов схемы. Это значение используется по умолчанию.
  • EXPORT_RELATED_ATTRIBUTES —Каждый объект схемы, содержащийся во входной схеме, конвертируется с атрибутами, содержащимися в его классе объектов схемы, и всеми атрибутами связанного с ним реального объекта.
Примечание:

Если для класса объектов схемы не указаны связанные класс объектов/таблица, атрибуты объектов нельзя конвертировать.

Примечание:

При использовании опций REUSE_FC и EXPORT_RELATED_ATTRIBUTES необходимо, чтобы уже существовала структура с полями связанных объектов для конвертации соответствующих атрибутов.

Boolean
container_geometry
[container_geometry,...]
(дополнительно)

Указывает тип геометрии объектов, которые будут созданы для конвертированных контейнеров, содержащихся во входной схеме.

  • ПОЛИГОН (POLYGON) —Каждый контейнер во входной схеме конвертируется в полигональный объект. Это значение используется по умолчанию.
  • ПОЛИЛИНИЯ (POLYLINE) —Каждый контейнер во входной схеме конвертируется в полилинейный объект.
  • ТОЧКА (POINT) —Каждый контейнер во входной схеме конвертируется в точечный объект.
Примечание:

Если используется опция Повторно использовать существующую структуру (Reuse Existing Structure), и уже существует структура с ПОЛИГОНАЛЬНЫМИ (ПОЛИЛИНЕЙНЫМИ или ТОЧЕЧНЫМИ) классами объектов, созданными для контейнерных объектов схемы, то для последующих конвертаций нельзя поменять тип класса объектов на ПОЛИЛИНЕЙНЫЙ или ТОЧЕЧНЫЙ (ПОЛИГОНАЛЬНЫЙ).

String
config_keyword
(дополнительно)

Ключевое слово конфигурации, определяющее параметры хранения таблицы в реляционной системе управления базами данных (РСУБД) Это относится только к корпоративная, рабочей группы или настольная база геоданных.

String

Пример кода

Пример (инструмент-скрипт) ConvertDiagram

В примере скрипта ниже показано использование функции ConvertDiagram в инструменте-скрипте. Этот инструмент-скрипт поочередно обрабатывает все схемы, содержащиеся во входном контейнере схемы - т.е. наборе схематических данных или папке схемы, - и конвертирует их в стандартные объекты или шейп-файлы в месте назначения.Создание и настройка этого инструмента-скрипта.

  1. Скопируйте приведенный ниже скрипт в любой текстовый редактор и сохраните текстовый файл с расширением .ру
  2. Запустите ArcCatalog и откройте окно ArcToolbox.
  3. Добавьте новый скрипт:
    • Введите его имя (например, ConvertDiagramsTool)
    • В параметре Script File укажите py-файл, который вы только что создали.
    • Затем задайте следующие пять параметров:
      1. Отображаемое имя: Входной контейнер схемы; Тип данных: Набор схематических данных или Папка схемы; Свойство типа=Обязательный, Свойство направления=Входной
      2. Отображаемое имя: Место назначения; Тип данных: Рабочая область или Набор классов объектов; Свойство типа=Обязательный, Свойство направления=Входной
      3. Отображаемое имя: Рекурсивный; Тип данных: Логический; Свойство типа=Обязательный, Свойство направления=Входной, Значение по умолчанию=Истина
      4. Отображаемое имя: Фильтр класса схем, Тип данных: Строка; Свойство типа=Необязательный, Свойство направления=Входной
      5. Отображаемое имя: Определенное место назначения, Тип данных: Рабочая область или Набор классов объектов; Свойство типа=Обязательный, Свойство направления=Выходной, Полученный из=Место_назначения
Требуемые входные параметры: Входной контейнер схемы (набор данных или папка) + место назначения (БГД, набор классов объектов или папка для шейп-файлов)Необязательные аргументы: Флаг рекурсии + фильтр класса схем Определенное место назначения: Рабочая область или набор классов объектов.

# Name: ConvertDiagrams.py
# Description: Convert schematic diagrams
# Requirement: ArcGIS Schematics

# import arcpy, sys, math
import arcpy, sys, math
msgInputsErr = "Invalid arguments."
msgParseErr = "Cannot parse input arguments."
msgConvertErr = "Error during conversion."

msgNoLicenseAvailable = "ArcGIS Schematics license required"

# Recursively searches for schematic diagrams in the folders
def RecursiveSearch(inCont, bRecursive):
    try:
        childs = inCont.Children
        dataset = None
        for dataset in childs:
            if dataset.DataType == "SchematicFolder" and bRecursive:
                RecursiveSearch(dataset, bRecursive)
            elif dataset.DataType == "SchematicDiagram":
                if diagramClassFilter == "" or diagramClassFilter == dataset.DiagramClassname:
                    pathList.append(dataset.CatalogPath)
    except:
        raise
    
try:
# Checks out the ArcGIS Schematics license    
    if arcpy.CheckExtension("Schematics") == "Available":
        arcpy.CheckOutExtension("Schematics")
    else:
        raise Exception(msgNoLicenseAvailable)
except Exception as exc:
    print exc
    raise

arcpy.env.overwriteOutput = True


# Decodes parameters
try:
    inputContainer = arcpy.GetParameterAsText(0)
    outputLocation = arcpy.GetParameterAsText(1)
    recursive = arcpy.GetParameterAsText(2)
    if recursive == "false":
        recursive = None
    diagramClassFilter = arcpy.GetParameterAsText(3)
    
    if inputContainer == "":
        raise Exception()
    
except:
    print msgParseErr
    arcpy.AddError(msgParseErr)
    raise

# Main code
try:
    pathList = []   # List for diagram names to convert
    arcpy.SetProgressorLabel("Searching diagrams to convert...")
    RecursiveSearch(arcpy.Describe(inputContainer), recursive)

    arcpy.SetProgressor("step", "Converting...", 0, len(pathList), 1)

    for path in pathList:
        # Execute convert
        mes = "Converting Schematic Diagram : " + path
        # Set the progressor label
        arcpy.SetProgressorLabel(mes)
        arcpy.AddMessage(mes)
        arcpy.ConvertDiagram_schematics(path, outputLocation, "REUSE_FC", "NO_RELATED_ATTRIBUTES", "#")
        arcpy.SetProgressorPosition()

    # Returns the ArcGIS Schematics licence
    arcpy.CheckInExtension("Schematics")

except:
    arcpy.AddError(msgConvertErr)
    raise

Параметры среды

  • Выходное ключевое слово CONFIG (Output CONFIG Keyword)

Информация о лицензировании

  • ArcGIS for Desktop Basic: Требует Данные схем (Schematics)
  • ArcGIS for Desktop Standard: Требует Данные схем (Schematics)
  • ArcGIS for Desktop Advanced: Требует Данные схем (Schematics)

Связанные темы

  • Обзор набора инструментов Cхематика (Schematics)
  • Обновить схему
  • Обновить схемы (Update Diagrams)
  • Создать папку схемы
  • Создать схему
  • Как работает инструмент Конвертировать схему в объекты (Schematics)
Отзыв по этому разделу?

ArcGIS for Desktop

  • На главную
  • Документация
  • Стоимость
  • Поддержка

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Об Esri

  • О нас
  • Карьера
  • Блог сотрудников
  • Конференция пользователей
  • Саммит разработчиков
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Конфиденциальность | Правовая информация