Сводка
Импортирует папки с файлами KML, KMZ, шейп-файлами, таблицами Excel, текстовыми файлами с разделителями, GeoJSON, и GPX в классы объектов базы геоданных.
Использование
Во Входных данных будет, по умолчанию, выполняться рекурсивный поиск файлов KML (.kml), KMZ (.kmz), шейп-файлов (.shp), рабочих книг Excel (.xlsx и .xls), текстовых файлов с разделителями (.csv, .txt и .tab), файлов GeoJSON (.geojson) и файлов GPX (.gpx). Для ограничения импорта файлов можно использовать параметр Фильтр.
Растры, или покрытие снимками, в файлах KML и KMZ конвертируется в набор данных мозаики в Целевой базе геоданных. Исходные растры, на которые ссылается набор данных мозаики, сохраняются в исходном формате в подпапке, названной в соответствии с именем набора данных мозаики. Она расположена в том же каталоге, что и целевая база геоданных. Эти файлы называются именем Целевой базы геоданных с суффиксом _Rasters. Например, если ваша Целевая база геоданных - C:\Data\OperationalData.gdb, будет создана папка OperationalData_Rasters в каталоге C:\Data.
Если вы импортируете файлы в многопользовательскую базу геоданных, убедитесь, что задан файл подключения (.sde), как путь UNC в параметре Целевая база геоданных, и путь доступен для многопользовательской базы геоданных.
Обычно поддерживаются входные данные в KML and KMZ до версии KMZ 2.2 стандарта OGC KML. Положения точек, использующие тег адреса (путем геокодирования), не поддерживаются. В исходном KML требуется наличие допустимого положения, выраженного в виде широты и долготы.
Стандартным разделителем для табличных текстовых файлов с расширениями .csv и .txt является запятая, а для файлов с расширением .tab - табуляция. Чтобы работать с таблицей с нестандартным разделителем, этот разделитель нужно задать в файле schema.ini. См. файл Schema.ini (драйвер для текстовых файлов) документации Microsoft для получения подробной информации.
Для входных листов Excel и табличных текстовых файлов поддерживается только точечная геометрия.
Спецификацией GeoJSON поддерживается несколько типов геометрии. Для каждого типа геометрии входного файла GeoJSON создается отдельный класс объектов - с применением правил наименования SourceGeoJSONFile_GeometryType. Например, если файл GeoJSON называется World Airports.geojson и содержит точечную, мультиточечную, полилинейную и полигональную геометрию, классы пространственных объектов будут называться World Airports_Points, World Airports_Multipoint, World Airports_Polylines и World Airports_Polygons.
При запуске этого инструмента учитывайте следующие соображения, касающиеся систем координат:
- Для шейп-файлов, KML, KMZ, GeoJSON и GPX система координат выходного набора данных будет такой же, как и у входного набора. Спецификации KML и GPX требуют, чтобы система координат входного набора данных была GCS WGS1984.
- Для рабочих книг Excel и табличных текстовых файлов предполагается, что система координат входных данных - GCS WGS1984, а значения долготы и широты указаны в десятичных градусах.
Если любые из входных координат (долгота или широта) для объекта некорректны (null или нечисловые значения), этот объект получит нулевую геометрию. Можно использовать инструмент Проверить геометрию, чтобы проверить наличие нулевой геометрии в выходных данных.
В текстовых файлах с разделителями (.csv, .txt и .tab), а также листах Excel должна быть колонка с долготой и широтой. Допускаются столбцы longitude, long, lon, x_coordinate, x_coord и x. Допускаются столбцы latitude, lat, y_coordinate, y_coord и y. Если в источнике есть несколько подходящих столбцов долготы и широты, будет использоваться первый подходящий столбец.
Импортируются все листы рабочей книги Excel.
Символы применяются к выходным слоям, добавляемым на карту, основываясь на символах в файлах исходных данных, следующим образом:
Примечание:
Активная карта должна присутствовать в проекте ArcGIS Pro в момент выполнения, чтобы символы сохранились. Если инструмент запускается вне проекта ArcGIS Pro - например, из автономного скрипта Python - символы сохраняться не будут.- Для выходных слоев, созданных из файлов KML или KMZ, символы извлекаются из исходного файла KML или KMZ и применяются к выходным слоям. Эти символы можно заместить, указав файл слоя (.lyrx или .lyr), находящийся в той же папке, что и исходный файл KML или KMZ. У файла слоя должно быть то же базовое имя, что и у исходного файла данных, с добавлением подчеркивания (_) и типа геометрии (points, polylines или polygons) слоя, который необходимо переопределить. К примеру, если файл KML назван World Airports.kml и содержит точечные, линейные и полигональные объекты, а вы хотите переопределить символы для всех типов геометрии, файлы слоя должны называться World Airports_Points.lyrx, World Airports_Polylines.lyrx и World Airports_Polygons.lyrx. Значения типов геометрии чувствительны к регистру. Если файл слоя не существует для данного типа геометрии, символы из исходного файла KML или KMZ применяются к выходному слою.
- Для выходных слоев, созданных из источников, отличных от KML и KMZ, символы применяются к выходному слою, если файл слоя (.lyrx или .lyr) содержится в той же папке, что и исходный файл данных. У файла слоя должно быть такое же базовое имя, как у исходного файла данных, за исключением листов Excel и файлов GeoJSON. Для листов Excel у файла слоя должно быть то же имя, что и базовое имя исходного файла данных, с добавлением подчеркивания (_) и имени листа. Например, если у файла Excel имя World.xlsx и в нем содержится лист Cities (2018), файл слоя должен называться World_Cities (2018).lyrx или World_Cities (2018).lyr. Для файлов GeoJSON у файла слоя должно быть то же имя, что и базовое имя файла исходных данных, с добавлением подчеркивания (_) и типа выходной геометрии - points, multipoint, polylines и polygons). Если файл слоя не существует, к выходному слою будет применен символ по умолчанию.
Синтаксис
arcpy.intelligence.BatchImportData(in_data, target_gdb, {filter}, {include_sub_folders}, {include_groundoverlay})
Parameter | Объяснение | Тип данных |
in_data [in_data,...] | Каталоги, содержащие файлы данных для преобразования в классы пространственных объектов базы геоданных. | Folder |
target_gdb | Целевая база геоданных, в которой будут сохранены выходные классы пространственных объектов. | Workspace |
filter (Дополнительный) | Фильтр данных, добавляемых в базу геоданных. Символы звездочки, применяемые для фильтрации, работают в полном пути ко входным данным, перечислены ниже.
Ниже приведены примеры фильтров:
| String |
include_sub_folders (Дополнительный) | Задает рекурсивный поиск данных во вложенных папках.
| Boolean |
include_groundoverlay (Дополнительный) | Определяет, будут ли в выходные данные включаться наложения земли KML или KMZ (растр, аэрофотоснимки и т.д.) Используйте с осторожностью, если KMZ ссылается на сервис, предоставляющий растровые изображения. Инструмент попытается преобразовать растровые изображения во всех доступных масштабах. Этот процесс может занять длительное время и привести к нагрузкам на сервис.
| Boolean |
Производные выходные данные
Name | Объяснение | Тип данных |
out_geodatabase | Обновленная целевая база геоданных. | Рабочая область |
Пример кода
Окно Python скрипта с примером использования функции BatchImportData в режиме прямого запуска:
import arcpy
arcpy.BatchImportData_intelligence("c:/data/sourcedata", "c:/data/output.gdb", "", "SUBFOLDERS", "NO_GROUNDOVERLAY")
В следующем скрипте Python показано, как используется функцию BatchImportData в автономном скрипте:
# Name: BatchImportData_Example2.py
# Description: Imports all shapefiles with 'airport' in the file name or file
# path within a directory to feature classes in a single geodatabase.
# Requirements: Standard or Advanced license
# Import system modules
import arcpy
# Set local variables
in_data = ["c:/data/sourcedata"]
target_gdb = r"\\data\operationaldata.sde"
filter = "*airports*.shp"
include_sub_folders = "NO_SUBFOLDERS"
# Execute BatchImportData
arcpy.BatchImportData_intelligence(in_data, target_gdb, filter, include_sub_folders)
Environments
Информация о лицензиях
- Basic: Нет
- Standard: Да
- Advanced: Да