合并图层 (数据管理)

摘要

通过复制所有数据和引用的数据源将一个或多个图层合并到单个文件夹中。

插图

Consolidate Layer illustration
合并文件夹的格式和结构。在此示例中,三个具有不同数据源的图层合并到一个文件夹中。

用法

语法

ConsolidateLayer_management (in_layer, output_folder, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {schema_only})
参数说明数据类型
in_layer
[in_layer,...]

将要合并的输入图层。

Layer
output_folder

此输出文件夹将包含图层文件和合并的数据。

Folder
convert_data
(可选)

指定输入图层是转换为文件地理数据库还是保留原始格式。

  • CONVERT 数据将被复制到文件地理数据库中。
  • PRESERVE 将保留数据格式。这是默认设置。
Boolean
convert_arcsde_data
(可选)

指定输入图层是转换为文件地理数据库还是保留原始格式。

  • CONVERT_ARCSDE ArcSDE 数据将被复制到文件地理数据库中。这是默认设置。
  • PRESERVE_ARCSDE 将保留 ArcSDE 数据并将在生成的合并文件夹或数据包中引用此数据。
Boolean
extent
(可选)

通过使用格式 X-Min Y-Min X-Max Y-Max 在范围参数中手动输入坐标的方式来指定范围。此外,如果要使用特定图层的范围,只需将该图层名称添加到范围参数中即可。

  • MAXOF输入的并集
  • MINOF输入的交集
  • DISPLAY与显示相同
  • <图层>与图层...相同
Extent
apply_extent_to_arcsde
(可选)

指定将用于选择 ArcSDE 数据源的范围。

  • ALL 将指定的范围应用于所有图层。这是默认设置。
  • ARCSDE_ONLY将指定的范围仅应用于 ArcSDE 图层。
Boolean
schema_only
(可选)

指定是合并还是打包输入图层的方案。

  • ALL 将合并或打包所有要素和记录。这是默认设置。
  • SCHEMA_ONLY 将仅合并或打包输入图层的方案。
Boolean

代码示例

ConsolidateLayer 示例(Python 窗口)

以下 Python 窗口脚本演示了如何在立即模式下使用 ConsolidateLayer 工具。

import arcpy
arcpy.env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers" 
arcpy.ConsolidateLayer_management('Parcels.lyr', 'Consolidate_folder', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL","ALL")
ConsolidateLayer 示例 1(独立 Python 脚本)

查找位于指定文件夹中的所有图层文件,然后分别为这些文件创建独立的合并文件夹。

# Name: ConsolidateLayerEx1.py
# Description:  Find all the layer files that reside in a specified folder and create a consolidated folder for each layer file.
# Author: ESRI

# import system modules
import os 
import arcpy

from arcpy import env

# Set environment settings
env.overwriteOutput = True
env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers" 

# Loop through the workspace, find all the layer files (.lyr) and create a consolidated folder for each 
# layer file found using the same name as the original layer file.
for lyr in arcpy.ListFiles("*.lyr"):
    print "Consolidating " +  lyr
    arcpy.ConsolidateLayer_management(lyr, os.path.splitext(lyr)[0], "PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "ALL")
ConsolidateLayer 示例 2(独立 Python 脚本)

查找位于指定工作空间中的所有图层文件,然后分别为这些文件创建单独的合并文件夹。

# Name: ConsolidateLayerEx2.py
# Description:  Find all the layer files that reside in a specified folder and create a single 
# consolidated folder that will contain all layers found.
# Author: ESRI

# import system modules
import os
import arcpy

from arcpy import env

# Set environment settings
env.overwriteOutput = True
env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers" 

# Find all the layer files (.lyr) in a workspace and create a single consolidated folder
lyrs = arcpy.ListFiles("*.lyr")
arcpy.ConsolidateLayer_management(lyrs, 'all_layers',"PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "ALL")

环境

相关主题

许可信息

ArcView: 是
ArcEditor: 是
ArcInfo: 是

7/10/2012