创建脏区可以追踪对网络执行的需要被验证或校正的编辑的位置,并且脏区可以作为指示器,指示已对网络执行更改,但更改尚未反映在网络拓扑中。 只要验证范围内不存在错误,则验证网络拓扑后,即会清除脏区。
启用网络拓扑后,将创建脏区以追踪编辑。 追踪可以包括创建要素、修改与网络属性关联的字段、建立或修改关联等。 这些称为编辑脏区或已修改脏区,表示已对公共设施网络进行更改,但更改内容尚未在网络拓扑中更新。 如果公共设施网络内有要素与已建立的规则和限制相冲突,则会在启用、验证和更新子网操作期间创建与错误关联的脏区,或称错误脏区。
验证用于更新网络拓扑并清除脏区。 网络分析操作(例如追踪或网络逻辑示意图)不会考虑未反映在网络拓扑中的编辑。 当网络拓扑被禁用时,会创建一个覆盖网络服务区范围的脏区。 当网络拓扑再次被启用时,所有未完成的编辑均会被验证。
脏区用于追踪编辑要素的范围、编辑类型、要素的全局 ID 以及执行操作的编辑者。 如果要素的几何形状发生修改,则会为单个要素生成两个脏区。 一个脏区表示要素旧几何的包络,另一个脏区表示要素的新几何。
用于创建脏区的操作
修改以下内容会创建编辑脏区:
- 几何
- 资产组或资产类型字段
- 定义为网络属性的字段
- 关联
- 终端配置信息
在以下过程中发现错误时,将创建错误脏区:
- 启用网络拓扑
- 验证网络拓扑
- 更新子网
查看和管理脏区
脏区可以作为公共设施网络的子图层进行访问,也可以使用核心符号系统工具进行符号化。 可以像其他图层一样开启或关闭脏区的可视化。 例如,如果您正在编辑网络并且发现脏区在视觉上会让您分心,则可以关闭该图层。 仍会创建脏区,但是它们不会在地图上显示。 可根据脏区图层中的属性对脏区进行符号化。 例如,编辑器追踪字段可帮助显示某个编辑器执行工作的脏区,或编辑的发生时间。
在公共设施网络版本 4 和更高版本中,脏区也用于识别和处理发现的网络要素错误。 如果公共设施网络内有要素与已建立的规则和限制相冲突,则会使用错误脏区来表示系统生成的错误。 创建错误后,将创建包含要素几何的错误脏区。
将在 Status 字段中使用位编码值对脏区子图层进行符号化,以指示其创建方式:
- 禁用
- 脏区
- 错误
- 脏区和错误
- 子网错误
解释状态值
Status 属性字段用于指示创建了脏区的操作。 在该属性字段中显示的值表示十进制值,与位编码值相对应。 下表概述了状态位值以及这些值在 Status 字段中的显示方式:
状态位 | 状态字段值 | 描述 |
---|---|---|
N/A | 0 | 已禁用网络拓扑 |
0 | 1 | 已修改(插入/更新)要素 |
1 | 2 | 已删除要素 |
2 | 4 | 已修改关联对象 |
3 | 8 | 发现要素错误 |
4 | 16 | 发现对象错误 |
5 | 32 | 发现子网错误 |
例如,已删除的要素由位为 1 的编辑脏区表示,显示 Status 为 2 (2^1 = 2)。 如果多个操作导致创建脏区,则将对这些值求和。 另一个示例为:如果一个交汇点和一条线之间存在连通性,但没有对应的交汇点-边或边-交汇点-边连通性规则,则会在验证要素时创建一个错误脏区,该脏区由位 3 表示,显示 Status 为 8 (2^3 = 8)。 当对要素执行了修改以解决错误时,通过错误位 3 和编辑位 1 表示要素,并且显示 Status 为 9 (2^3 = 8) + (2^0 = 1)。
弹出表达式中将显示 Status Description 字段,以提供有关创建了脏区的操作的附加信息。 例如,Status 值为 9 的记录在错误要素被修改的情况下显示 Status Description 为 1:Inserted/Updated feature, 8:Feature error。
验证脏区
验证网络拓扑可保持您在地图中看到的内容与网络拓扑中存在的内容之间的一致性。 分析操作取决于网络拓扑,因此,如果脏区存在,则可能会返回意外结果。 例如,如果追踪路径穿过脏区,则不能保证结果与在地图上看见的结果一致。 追踪工具中的“验证一致性”选项提供了一项重要的校验,可用于确保追踪结果不包括与脏区相交的结果。
在验证期间,仅会将包含编辑位(0、1、2)的编辑脏区或错误脏区评估为待清理脏区。 不包含编辑位的错误脏区将被忽略。
协调和发布脏区
当协调版本时,它将从默认版本继承网络拓扑的当前状态。 然后,对于在指定版本中进行编辑并导致创建脏区的所有要素和对象,被重新创建这些脏区。 如果在协调期间验证版本继承的脏区,则您可以在版本中继续工作,但会阻止发布,直到再次协调版本。 当发布这些脏区时,会在默认版本中验证和重建这些修改后要素的拓扑。
公共设施网络版本 3 或更早版本中的脏区
在公共设施网络版本 3 及更早版本中,脏区仅用于表示未反映在网络拓扑中的编辑内容。 UpdateType 是脏区表中的一个属性,可用于通过编辑类型对脏区进行符号化。
抢先版本:
脏区的类型由脏区属性表中的 UpdateType 字段表示。 此字段被分配了系统提供的编码值属性域,用于对脏区的生成方式进行分类。 编码值属性域的值包括插入、更新、删除和错误。
更新类型 | 脏区类型 |
---|---|
0 | 插入 |
1 | 更新 |
2 | 删除 |
3 | 错误 |