连通性

需要 Network Analyst 许可。

网络数据集中的连通性基于线端点、线折点和点的几何重叠。 还取决于在网络数据集上设置为属性的连通性规则。

组连通性

ArcGIS Network Analyst extension 中的连通性从定义连通性组开始。 每个边源仅分配到一个连通性组,每个交汇点源可以分配到一个或多个连通性组。 连通性组可以包含任意数量的源。 网络元素的连接方式取决于元素所在的连通性组。 例如,如果基于两个不同的源要素类创建的两条边位于同一连通性组中,则二者可以连接。 如果处在不同连通性组中,除非用同时参与了这两个连通性组的交汇点连接这两条边,否则这两条边不连通。

连通性组用于对多模式交通系统进行建模。 对于每个连通性组,可选择互连的网络源。 在下面的地铁和街道多模式网络中,地铁线路和地铁入口全部分配到同一连通性组。 请注意,Metro_Entrance 还位于包含街道的连通性组中。 它用于在两个连通性组之间建立链接。 两个组之间的所有路径必须穿过共享地铁入口。 例如,路径求解器可能确定行人在市内两个位置之间的最佳路径为,在街道上步行到地铁入口,进站乘坐地铁,在换乘站换乘另一辆地铁,然后从另一个地铁出口出站。 连通性组既区别了两个网络,又通过共享交汇点(地铁入口)把二者连接在一起。

连通性组

连接连通性组中的边

同一连通性组中的边可通过由边源上的连通性策略设置的两种方式(端点或折点)进行连通。

  • 如果设置了端点连通性,则线要素将成为仅在重合端点处连接的边。
    端点连通性

    在此情况中,线要素 l1 成为边要素 e1,线要素 l2 成为边要素 e2。 始终存在为具有此连通性策略的线要素创建的边元素。 要对交叉式对象(如桥)进行建模,可构建具有端点连通性的网络。 要对这种情况进行建模,需要将两个源(即桥梁和街道)置于同一连通性组 (1) 中。 将向街道源分配任意折点连通性,以允许街道要素在重合折点处与其他街道要素连同。 将向桥梁源分配端点连通性。 这意味着桥梁仅在其端点处与其他边要素连同。 因此,从桥下方穿过的任何街道将不会与桥连通。 桥将在端点处与其他街道连通。

    连通桥

    如果网络中仅包含一个要用于对天桥(桥)和地下通道(隧道)进行建模的源,则可以在平面数据上使用高程字段。 有关详细信息,请参阅下面的“高程字段”部分。

    注:

    如果使用多个线要素,请了解 Network Analyst 将每部分末尾处的折点视为端点而非折点。

  • 如果设置了“任意折点”连通规则,则线要素将在重合折点处被分成多条边。 如果构建街道数据的目的是要让街道在折点处与其他街道相交,则设置这一策略非常重要。
    任意折点连通性

    在此情况中,在共享折点位置处相交的两条折线分割成四条边,交汇点位于该折点处。 边 e1 和 e3 用线要素 l1 的源要素类和对象 ID 进行标识。 边 e2 和 e4 用线要素 l2 的源要素类和对象 ID 进行标识。 交汇点 j3 将是新建系统交汇点。 交汇点 j1、j2、j4 和 j5 要么会是系统交汇点,要么会是源要素类的重合点的交汇点。

警告:

并非所有交叉线要素都能生成相连的边。 如果它们不共享任何重合端点或折点,则没有连通性策略会在交点处创建交汇点。 因此必须事先对网络数据集的街道数据进行清理,以确保无论折点还是端点都显示在所有所需交汇点处。

无重合折点,无连通性

如果需要改进街道数据,可使用地理处理工具(如整合)分割交叉线,或在这些要素类上建立拓扑,然后在应用强制要素在交点处进行分割的拓扑规则时编辑街道要素。

通过跨各连通性组的交汇点连接边

处于不同连通性组中的边仅可通过两个连通性组共享的交汇点进行连接。

在合并公交网络和街道网络的多模式系统示例中,将从点源添加一个公交车站,并且该公交车站位于这两个连通性组中。 公交车站的点位置必须与公交线路及其连接的街道线重合。 添加公交车站的点位置后,其是否会成功变为交汇点取决于交汇点连通性策略。 与边一样,交汇点会在端点或折点处与边连接,具体取决于目标边源的连通性策略。 然而,在某些情况下您可能希望覆盖此行为。

遵从连通性的交汇点
设置交汇点的遵从连通性策略

例如,与公交车站连接的公交线路具有端点连通性策略,但是通常,您希望将公交车站置于中间折点处。 要达到这一目的,您将需要设置交汇点策略以覆盖将交汇点连接到给定边这一默认行为。

要根据边源连通性策略覆盖在端点或折点处形成的交汇点的默认行为,请将交汇点源的连通性设置为覆盖。 默认情况下,将遵从边连通性策略。

覆盖连通性的交汇点

设置交汇点的覆盖连通性策略

垂直连通性

网络元素的连通性不仅可以取决于它们是否在 x 和 y 空间重合,还取决于它们是否共享同一高程。 可使用两个选项对高程进行建模:使用高程字段和使用几何中的 z 坐标值。

高程字段

高程字段在网络数据集中用于细化线端点处的连通性。 这些字段包含的高程信息派生自参与网络的要素类上的字段。 这与基于 z 坐标值建立连通性不同,因为物理高程信息存储在要素的每个折点上。 高程字段会应用于边和交汇点源。 使用高程字段的边要素源用两个字段来描述高程(线要素的每个端点对应一个字段)。

在下面的示例中,EF1、EF2、EF3 和 EF4 这四个线要素属于同一连通性组,并遵守端点连通性。 EF3 和 EF4 的端点处的高程值为 0;EF1 和 EF2 的端点处的高程值为 1。 因此,在所有四个端点的重合位置,EF3 仅与 EF4 连通(不与 EF1 或 EF2 连通)。 同样,EF1 只连接 EF2,而不连接 EF3 或 EF4。

通过高程字段对连通性进行建模

必须了解高程字段用于细化端点处的连通性;它们不会覆盖连通性。 两个线元素可能在其端点处具有相同的高程字段值并且这些端点可能重合,但如果二者位于两个不同的连通性组中,则它们不会连通。

许多数据供应商都会提供高程字段数据来细化线端点处的连通性。 ArcGIS 网络数据集连通性模型可使用此高程字段数据来增强连通性。 而且,在构建桥梁和隧道等特殊方案时,高程字段与连通性模型之间的交互同样是至关重要的一个方面。

由于高程字段仅用于细化线端点处的连通性,因此不会对如何在非端点折点处建立连通性产生任何影响。 这是因为非端点折点没有高程字段值。 网络数据集会将所有非端点折点视为具有高程 NULL。 这意味着对于具有“任意折点”连通性策略的边源,与同一连通性组中的线端点重合的非端点折点仅当该线端点具有高程字段值 NULL 时才会连通。 此外,非端点折点还将与同一连通性组中的所有其他重合非端点折点连通。

几何的 Z 坐标值

如果源要素的几何中存储了 z 值,则可以创建 3D 网络。

室内人行通道通常使用 3D 网络进行建模。 鉴于在 2D x,y 空间中无法区分多层建筑物内的诸多走廊,但是可以在 3D 空间中按 z 坐标值对其进行区分。 同样,电梯竖井通过垂直移动连通各个楼层。 在 x,y 空间中电梯是点,但在 3D 空间中却完全可以将其作为线进行建模。

可通过 Z 坐标值在三维模式下对点和线要素的连通性进行建模。 连通性仅适用于 3D 网络数据集,其中源要素(尤其是点、线端点和线折点)共享所有三个坐标值:x、y 和 z。 下面的一组图像演示了此要求:

三维空间中的连通线和未连通线(正视图)
四个线要素位于三维空间中:三条水平线(蓝色)和一条对角线(红色)。 六个绿色圆球表示线端点。
三维空间中的连通线和未连通线(侧视图)
从另一角度显示相同的线和端点。 很明显,红色线与顶部的两条蓝色线在其端点处连通。 但红线不与底部的蓝线相交。
基于 3D 要素创建的边的逻辑示意图
此图显示了在前两张图中显示的三维要素中哪些边是连通的。 由于红色线与顶部的两条蓝色线共享 x、y 和 z 坐标值,因此这些边连通。 但是,由于红线不与底部的蓝线相交,因此它们在网络数据集中的对应边无法连通。

三维网络同样遵从连通性组的连通性策略设置,如以下三张图像所示:

三维空间中与两条蓝色平行线要素相交的红色线要素
一条红色线与两条蓝色线在折点(绿色立方体)处相交。 由于这些线在折点处相交,因此它们对应的边在网络数据集中可能连接也可能不连通;这要视具体连通性策略而定。

使用端点连通性策略的结果逻辑示意图
当将连通性策略设置为“端点”时,生成的边(e2、e1 和 e3)不连通。
将任何折点连通性策略用于三维线要素时的结果逻辑示意图
将连通性策略设置为“任何折点”时,生成的边相互连接,因此行人可以在蓝边和红边间随意穿行。

修改高程字段垂直连通性

按照以下步骤修改网络高程字段:

  1. 打开网络数据集属性 对话框。
  2. 单击源设置 > 垂直连通性

    将显示垂直连通性页面。 如果垂直连通性策略为策略: 高程字段,将针对每个边源显示一个包含两行的表格,一行对应顺方向,一行对应逆方向。 可使用此表格为每个边源的每个方向设置高程字段。

  3. 单击高程字段列下方,然后从下拉列表中选择所需字段。

    下拉列表仅包含数据类型为整型的字段,因为高程级别以整数方式指定。 所有整数值有效;即,所选字段可以具有正数值、负数值和零值。

    更改高程字段。

    注:

    如果正在使用的网络数据集在创建时未配置为使用高程字段垂直连通性策略,则将无法编辑此页面上的高程字段。 创建网络后,无法更改垂直连通性策略。

  4. 单击确定

    对高程字段所做的更改将保存至网络数据集。

  5. 注:

    更改任何网络属性时,您必须构建网络数据集以重新建立连通性、重新计算受影响的属性以及更新网络元素。

    了解有关何时需要重新构建的详细信息

修改组连通性

按照以下步骤修改组连通性设置:

  1. 打开网络数据集属性 对话框。
  2. 单击源设置 > 组连通性
  3. 要修改源的策略,请单击源的策略列,然后从下拉列表中选择策略。

    边源连通性可设置为终点任何折点。 可以将交汇点源设置为遵从覆盖以分别进行遵从或覆盖,边源的连通性策略。

    为源选择策略。

  4. 组计数框中,单击向上或向下箭头以增加或减少网络数据集的连通性组数,或在框中输入组计数。
  5. 单击相关组列中的按钮以向连通性组分配边源。

    每个边源只能属于一个组。

  6. 选中相关组列中的复选框以向连通性组分配交汇点。

    每个交汇点源可以属于多个组。

  7. 如果要素类具有子类型,请单击位于右上角的更改子类型使用按钮。
    1. 选中要添加子类型的一个或多个源要素。 可在组连通性页面上按子类型修改连通性。

      选择子类型。

    2. 单击确定

      随即组连通性页面上将显示子类型。 可通过连通性策略将每个子类型分配给连通性组。

      子类型即已添加至“组连通性”页面。

  8. 单击确定

    组连通性页面上进行的编辑将保存至网络数据集。

  9. 注:

    更改任何网络属性时,您必须构建网络数据集以重新建立连通性、重新计算受影响的属性以及更新网络元素。

    了解有关何时需要重新构建的详细信息