复制要素 (数据管理)
摘要
将输入要素类或图层中的要素复制到新要素类。如果输入是具有选定内容的图层,则仅复制所选要素。如果输入是地理数据库要素类或 shapefile,则会复制所有要素。
用法
-
输入要素的几何和属性都将被复制到输出要素类。
-
此工具可用于进行数据转换,因为它可以读取多种要素格式(任何可添加到 ArcMap 中的格式),并且可将这些要素格式写入 shapefile 或地理数据库(文件、个人或 ArcSDE)。
-
如果输出要素类已存在,它将被覆盖。要控制应用程序中的覆盖行为,请在地理处理 > 地理处理选项... 中取消选中覆盖地理处理操作的输出选项,或者在脚本中使用地理处理器对象的 OverwriteOutput 属性。要将输入要素添加或追加到某个现有要素类,但不覆盖该要素类,可使用追加工具。
语法
参数 | 说明 | 数据类型 |
in_features |
要复制的要素。 | Feature Layer;Raster Catalog Layer |
out_feature_class |
该要素类将被创建,并且将在其中粘贴所复制的要素。如果输出要素类已存在并且覆盖选项设置为 true,则将首先删除输出。如果输出要素类已存在并且覆盖选项设置为 false,则操作将失败。 | Feature Class |
config_keyword (可选) |
要在输出为 ArcSDE 地理数据库或文件地理数据库时应用的地理数据库配置关键字。 | String |
spatial_grid_1 (可选) |
空间格网 1、2 和 3 参数仅适用于文件地理数据库和某些 ArcSDE 地理数据库要素类。如果对设置格网大小不熟悉,则将这些选项保留为 0,0,0,然后 ArcGIS 会为您计算最佳大小。有关此参数的详细信息,请参阅添加空间索引工具文档。 | Double |
spatial_grid_2 (可选) |
第二个空间格网的像元大小。如果您只需要一个格网,则将大小设置为 0。否则,至少将大小设置为比“空间格网 1”大三倍。 | Double |
spatial_grid_3 (可选) |
第三个空间格网的像元大小。如果您只需要两个格网,则将大小设置为 0。否则,至少将大小设置为比“空间格网 2”大三倍。 | Double |
代码示例
以下 Python 窗口脚本演示了如何在立即模式下使用 CopyFeatures 工具。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.CopyFeatures_management("climate.shp", "C:/output/output.gdb/climate")
以下独立脚本演示了如何使用 CopyFeatures 将文件夹中的 shapefile 复制到文件地理数据库中。
# Name: CopyFeatures_Example2.py # Description: Convert all shapefiles in a folder to geodatabase feature classes # Requirements: os module # Author: ESRI # Import system modules import arcpy from arcpy import env import os # Set environment settings env.workspace = "C:/data" # Set local variables outWorkspace = "c:/output/output.gdb" # Use ListFeatureClasses to generate a list of shapefiles in the # workspace shown above. fcList = arcpy.ListFeatureClasses() # Execute CopyFeatures for each input shapefile for shapefile in fcList: # Determine the new output feature class path and name outFeatureClass = os.path.join(outWorkspace, shapefile.strip(".shp")) arcpy.CopyFeatures_management(shapefile, outFeatureClass)