复制源要素类

地理数据库中的每个要素类都有一个要素类 ID,此 ID 是一个自动生成的整数,可唯一识别地理数据库中的要素类。当您将某个要素类从一个地理数据库复制到另一个地理数据库时,原始的要素类 ID 和复制的要素类 ID 可能会不同。如果在同一个地理数据库中进行复制粘贴,那么二者的 ID 一定会不同。

在网络数据集中,参与的源要素和记录有时会通过要素类 ID 局部地相互引用。因而,如果一个要素类 ID 与其预期 ID 不同,那么对该要素进行的引用就将损坏。

转弯、路标和流量表(尤其是“街道 - 剖析”和“街道-TMC”流量表)这几种网络数据类型会引用要素类 ID,因而在复制数据时可能带有损坏的引用。

如果转弯、路标或流量表所引用的要素类 ID 不正确,将发生错误,更糟糕的是,要素类标识有效但是不正确,这将导致产生意外结果。例如,用于流量数据的“街道 - 剖析”或“街道 -TMC”连接表可能引用错误的街道要素,从而导致在分析过程中显示或使用错误的行驶速度。同样,“路标 - 街道”连接表可能引用错误的街道并产生令人困惑的转弯指示。

提示提示:

通过将网络数据集(而不是单个源要素类)复制到另一个要素数据集可以避免此类问题。复制网络数据集时,源数据随网络数据集一同复制,并且转弯、路标和流量属性表中所引用的要素类 ID 将自动更新以匹配新的要素类 ID。

如果单个复制转弯表、路标表或流量表,那么更新所引用的 ID 字段的唯一方法就是通过手动操作,而手动操作应该尽量避免。也可以使用转弯、路标、流量和任何其他想要使用的网络数据创建一个基本的网络数据集,然后复制并粘贴临时网络数据集,而非单个的源要素类。源要素类将自动随网络数据集一同复制。执行完毕后,可以删除或继续使用临时网络数据集。此方法会自动更新对要素类 ID 的引用,因此不必进行手动更新。

如果您不想复制网络数据集,或者您出于其他原因需要更新要素类 ID,那么您可以按照以下步骤进行操作。

注注:

假设您有一个名为 Streets 的边源要素类,在以下步骤中将称之为原始 Streets 要素类。还假设存在与原始 Streets 要素类相关联的原始转弯、路标和流量数据。然后此原始数据被复制到另一个要素数据集中,从而产生重复的 Streets、转弯、路标和流量数据。在以下步骤中,重复的数据将被称为复制的 Streets 要素类、转弯要素类、路标 - 街道表和流量表。这样标识原始数据和复制的数据可使得执行以下操作更为方便。

步骤:
  1. 在 ArcMap 的目录 窗口中,浏览至原始 Streets 要素类。右键单击要素类,然后选择属性
  2. 要素类属性 对话框中,单击常规选项卡。
  3. 单击名称文本框旁的省略号按钮。

    对象类 ID 对话框会指示要素类 ID。将显示的值记录下来,因为可能需要在复制的转弯、路标和流量表数据中找到该值。

  4. 注注:

    省略号按钮已添加到 ArcMap 10.1 中,用于获取要素类 ID。如果您需要使用 ArcMap 10.0 查找要素类 ID,可按照如下说明使用 Python 窗口。

    1. 将要素类添加到 ArcMap。

    2. 单击标准 工具条上的 Python 窗口按钮 Python 打开 Python 窗口。

    3. Python 窗口中,输入 arcpy.Describe("<图层名称>").DSID,将 <图层名称> 替换为要素图层的名称。

      例如,要获取 Streets 图层的要素类 ID,请输入 arcpy.Describe("Streets").DSID

    4. Enter 键。

      要素类 ID 会显示在您所输入命令的下方。

    5. 将原始 Streets 要素图层从 ArcMap 中移除。

  5. 获取复制的 Streets 要素类的要素类 ID。可使用与获取原始 Streets 要素类 ID 相同的方法。
  6. 如果原始 Streets 要素类和复制的 Streets 要素类的要素类 ID 值相同,则无需进行进一步操作;但是,如果两个 ID 不同,就需要打开复制的转弯要素类的属性表、“路标 - 街道”表和流量表,然后将步骤 3 中的原始 Streets 要素类 ID 替换为步骤 4 中的复制的 Streets 要素类 ID。

    • 要修复复制的转弯要素类,可将名为 Edge#FCID(其中 # 代表一个数字)的字段中的原始 Streets 类 ID 值替换为复制的 Streets 要素类 ID。

      也可以使用复制的数据创建一个网络数据集,然后运行按几何更新工具。该工具将自动更新转弯要素的字段值,但是对于那些折点不与复制的街道要素相交或那些折点与重合街道要素相交的转弯要素,需要为其手动编辑几何。按几何更新需要转弯要素的折点与一个边源相交,以标识与这些转弯相关联的源要素类和要素 ID。

    • 要修复复制的“路标 - 街道”、“街道 - 剖析”或“街道 -TMC”连接表,可找到 EdgeFCID 字段,然后将所有原始 Streets 要素类 ID 替换为复制的 Streets 要素类 ID。

5/28/2014