要素类转 Coverage (转换)
摘要
根据一个或多个输入要素类/图层创建单个 ArcInfo Coverage 文件。
用法
-
拓扑容差与 ArcInfo Workstation 中的模糊容差的作用相同。执行此工具时,输出 Coverage 的模糊容差将与指定的拓扑容差相同。如果未指定拓扑容差,将计算默认值。
-
Coverage 不支持空几何。转换时会自动删除空几何。
-
当输入的是一个线要素类时,您可以选择为弧段或路径构建 Coverage。如果输出中包含路径子类,则会添加 ROUTE 作为前缀(例如,ROUTE.streets)。默认类型为 ROUTE。
-
当输入的是一个面要素类时,可以选择为面或区域构建 Coverage。如果输出中包含区域子类,则会添加 REGION 作为前缀(例如,REGION.parcels)。默认类型为 REGION。
输出的默认精度为 DOUBLE。
-
工具执行成功后,建议您运行创建标注工具,以确保所有面要素都具有准确的标注。
-
如果输入的是一个点要素类和一个面要素类,那么点要素类可以表示输出 Coverage 的标注。为此,请选择 LABEL 作为输入点的要素类型。
-
当输入两个以上的线要素类或图层时,在输出 Coverage 中只为其中一个要素类构建弧线。其余要素类将包含路径。
-
当输入两个以上的面要素类或图层时,在输出 Coverage 中只为其中一个要素类构建面。其余要素类将包含区域。
当对含有重叠面、不连续面或“孔洞”的面要素类进行转换时,应将该要素类转换为区域 coverage。如果将这种要素类转换为面 coverage,则任何重叠面、不连续面或“孔洞”都将丢失或发生改变,因为面 coverage 中不允许使用这些几何类型。
在线要素类中,对单个线要素中可以包含的折点数量没有有效限制。在 ArcInfo coverage 数据模型中,使用 500 个折点定义一条线。在第 500 个折点处,该折点自动变为节点,作为一条新线的起点。在线要素类转换为 coverage 时,线的属性存储在 ROUTE 子类中。为将这些属性传递给 coverage 中的各条线,您可以在 ArcInfo 的命令行中运行 ArcInfo Workstation 命令 ROUTEARC。此命令将属性及其无限制的折点从路径迁移到 coverage 中整条线上的每条线段,每条线段包含 500 个折点。
语法
参数 | 说明 | 数据类型 |
in_features [[Featureclass, {Type}],...] |
用于创建单个 ArcInfo Coverage 的输入要素类或图层,包括组成 Coverage 的要素类型。
| Value Table |
out_cover |
要创建的输出 coverage。 | Coverage |
cluster_tolerance (可选) |
所有要素坐标(节点和折点)之间的最小距离以及坐标可以沿 X 和/或 Y 方向移动的距离。如果将此值设置得较高,则数据会具有较低的坐标精度;如果将此值设置得较低,则数据会具有较高的坐标精度。 | Linear unit |
precision (可选) |
输出 ArcInfo Coverage 的精度。
| Boolean |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用要素类转 Coverage (FeatureClassToCoverage) 函数。
import arcpy from arcpy import env env.workspace = "C:/data" arcpy.FeatureclassToCoverage_conversion( [["Montgomery.gdb/Landbase/parcels", "REGION"]], "C:/output/mont_parcel", "", "")
以下独立脚本演示了如何将多个相关要素类转换为一个 Coverage。完成转换后,运行“创建标注”工具以更正输出 Coverage 中的面标注。
# Name: FeatureclassToCvoerage_Example.py # Description: Converts several featureclasses to one coverage # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" # Set local variables inFeatures = [["Montgomery.gdb/Landbase/blocks", "POLYGON"], ["Montgomery.gdb/Landbase/parcels", "REGION"], ["Montgomery.gdb/Landbase/Road_cl", "ROUTE"], ["Montgomery.gdb/Landbase/RoadNames", "ANNO"], ["Montgomery.gdb/Water/Transmains", "ARC"]] outCover = "C:/output/Montgomery" clusterTolerance = 0.000656 precision = "DOUBLE" # Execute FeatureclassToCoverage and CreateLabels arcpy.FeatureclassToCoverage_conversion(inFeatures, outCover, clusterTolerance, precision) arcpy.CreateLabels_arc(outCover, "")