Анализировать путь (ModelBuilder)

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

Анализирует входные данные по имени файла, расширению, пути и имени последней рабочей области. Выходные данные могут использоваться как встроенная переменная в имени выходных данных других инструментов.

Более подробно о том, как работает инструмент Анализировать путь в ModelBuilder

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

  • Этот инструмент доступен только из ModelBuilder для использования в моделях. Этот инструмент недоступен в панели Геообработка или в Python.

  • Можно добавить более одного имени переменной, чтобы создать уникальные имена для выходных данных, например, C:\Temp\Out_%Name%_%Workspace Name%.

  • Например, если в качестве входных данных этот инструмент содержит C:\1Tool Data\City Roads.shp, он будет разобран на следующие выходные данные:

    АнализРезультат
    ПутьC:\1Tool Data
    ИмяCity Roads
    Расширениеshp
    Имя рабочей области1Tool Data

    Если параметр Форматировать имя, расширение и рабочую область включен, указанный выше путь будет преобразован в следующие выходные данные:

    АнализРезультат
    ПутьC:\1Tool Data
    ИмяCity_Roads
    Расширениеshp
    Имя рабочей области_1Tool_Data

  • Эту же функциональность можно получить при написании скриптов с помощью модуля Python os. Например, если в качестве входных данных будет передана следующая переменная:

    inData = r"C:\1Tool Data\City Roads.shp", тогда

    • Получить имя City Roads
      import os
      name = os.path.basename(inData)
    • Получить путь C:\1Tool Data
      import os
      path = os.path.dirname(inData)
    • Получить расширение файла shp
      import os
      ext = os.path.splitext(inData)[1][1:]
    • Получить имя рабочей области 1Tool Data
      import os
      folder = os.path.basename(os.path.dirname(inData))

    Для выполнения анализа пути аналогично тому, как это происходит при установке флажка Форматировать имя, расширение и рабочую область, выполните следующие действия:

    • Получить имя City_Roads
      import os
      import re
      name = os.path.basename(inData)
      name = re.sub('[^0-9a-zA-Z]+', '_', name)
      if name[0].isdigit():
          name = "_" + name
    • Получить путь C:\1Tool Data
      import os
      path = os.path.dirname(inData)
    • Получить расширение файла shp
      import os
      ext = os.path.splitext(inData)[1][1:]
    • Получить имя рабочей области _1Tool_Data
      import os
      import re
      folder = os.path.basename(os.path.dirname(inData))
      folder = re.sub('[^0-9a-zA-Z]+', '_', folder)
      if folder[0].isdigit():
          folder = "_" + folder

  • Выходные данные Пути этого инструмента имеют тип данных рабочей области и могут быть напрямую подключены в качестве входных данных к параметру Расположение класса объектов инструмента Создать класс пространственных объектов, который принимает тип данных рабочей области в качестве входных данных. Для таких инструментов, как Копировать, у которых нет параметра типа данных рабочей области, значение Путь можно передать инструменту с помощью замены встроенной переменной, например, %Path%\Out_%Name%.%Extension%.

    Анализировать путь с применением инструмента Создать класс пространственных объектов
    .

Параметры

ПодписьОписаниеТип данных
Входные значения

Входные значения, которые будут проанализированы.

Any Value
Форматировать имя, расширение и рабочую область
(Дополнительный)

Указывает, будут ли удалены все зарезервированные символы.

  • Отмечено — зарезервированные символы будут удалены.
  • Не отмечено — зарезервированные символы не будут удалены. Используется по умолчанию.
Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Путь

Рабочая область входных данных.

Workspace
Имя

Имя файла, включая расширение.

String
Расширение

Расширение файла.

String
Имя рабочей области

Имя рабочей области.

String

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

Этот инструмент не использует параметры среды геообработки

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

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы