解决道路冲突的工作原理

解决道路冲突工具可以调整符号化的道路要素,以便这些要素的图形不发生叠加。 当道路数据的显示比例小于其创建比例时,通常会出现图形叠加。 应用了适当的线符号以后,相邻的道路可能会彼此冲突。

解决道路冲突的工作原理

当以参考比例符号化输入要素时,将评估输入要素之间的邻近性和平行性。 将根据等级字段值对其进行评级和分类。 要素(或要素的一部分)会稍有位移,以解决图形叠加并使显示更加清晰。 当仅移动要素的一部分时,将平滑地处理过渡。 可以选择将发生的位移存储在面输出要素类中。 将该要素类用作传递位移工具的输入,以确保维护与其他要素的空间关系。

该工具根据要素的空间关系和相对等级来移动要素:

  • 相异要素 - 相异要素具有不同的等级值。 一个示例是沿着高速公路车道延伸的辅助道路。 只要这些要素的符号边在参考比例下彼此之间的距离位于 0.3 mm 以内,就会对其向外位移,以保证其之间存在 0.3 mm 的视觉间距。 将移动高等级值(低重要性)的要素以安置低等级值(较高重要性)的要素。
  • 相似要素 - 相似要素具有相同的等级值。 一个示例是高速公路的两条车道或者林荫大道的两条车道。 只要这些要素平行(或接近平行)并且其符号边在参考比例上物理叠加,就会将其移开,以使其符号彼此相邻而没有间距。 类似地,如果两个符号离得非常近,那么这两个符号将被捕捉到一起,以便这两个符号彼此相邻。
  • 死角 - 如果未连接的一端和另一条道路之间的空间无法从用肉眼辨别出来,则死胡同(悬空的要素,其一端未连接)就会被略微缩短。 这是为了防止在不存在连接交叉点的情况下出现连接交叉点。 只要未连接的路段的符号的边与另一输入要素之间的距离在参考比例下小于 0.5 mm,就会缩短死角以满足 0.5 mm 的间距。
  • 圆圈 - 将放大(向外扩展)圆形的(或接近圆形的)要素(如环形交叉路),以确保符号的内边之间在参考比例下存在 0.3 mm 的用肉眼可辨别的间距。

数据准备注意事项

解决道路冲突工具可以调整线要素,以确保这些线要素在输出比例下进行符号化时其图形是可分辨的。 一次可以评估和处理多个图层。 当要素共同存在于交通网络中时,正确建立输入要素的几何以保持要素之间的空间关系是非常重要的。 注意下列输入数据要求和建议:

  • 单部分要素 - 输入要素不能包含多部分要素。 可以使用多部分至单部分工具或通过必须为单一部分规则来创建拓扑,以便将要素转换为单一部分。

  • 共享线段 - 输入要素不应彼此重叠,以致它们共享线段。 使用不能重叠不能自重叠线规则创建一个拓扑可解决这类问题。 如果该工具正在处理多个输入图层,请使用不能与其他要素重叠规则创建拓扑。 如果检测到共享线段,则会发出警告,但工具将继续运行。 相关要素的 ObjectID 将被写入名为 SharedGeom#.txt(其中 # 是一个数字,随着日志文件的生成,该数字会不断增大)的日志文件。

  • 自相交要素 - 输入线要素自身相交或共享公共的起点和终点,它们可能会导致意外的结果。 使用不能自相交线规则创建拓扑可识别这些区域。 如果检测到自相交要素,将会发出一条警告,但工具会继续进行处理。 自相交要素的 ObjectID 将被写入名为 SelfIntersect#.txt(其中 # 是一个数字,随着日志文件的生成,该数字会不断增大)的日志文件。

  • 小于 XY 容差的几何 - 在某些情况下,数据中的一些要素的长度可能小于在地图或工具环境中指定的 x,y 容差。 如果检测到长度小于容差的要素,则会发出一条警告,并且工具将忽略这些要素。 几何在容差之下的要素的 ObjectID 将被写入名为 GeomBelowTolerance#.txt(其中 # 是一个数字,随着日志文件的生成,该数字会不断增大)的日志文件。

  • 空几何或 null 几何 - 输入要素必须包含有效的几何。 如果检测到形状长度为零或 null 的几何,则会发出一条警告,并且工具将忽略这些要素。 几何为空或 null 的要素的 ObjectID 将被写入名为 EmptyGeom#.txt(其中 # 是一个数字,随着日志文件的生成,该数字会不断增大)的日志文件。 如有必要,使用修复几何工具来修复这些要素。

  • 伪死角 - 伪死角是一种在最终地图比例下进行符号化时直观上看似相连的未连接线段。 伪死角可能属于您根据外观来判断连接性但要素实际上并不相连的区域。 如果在不修复连接性的情况下运行工具,结果中可能会出现明显的异常断开处。 在考虑参考比例的情况下,如果任一端点到另一条线段的距离小于 0.5 毫米,则该端点将被检测为伪死角。 如果检测到伪死角,则会发出一条警告,但工具会继续进行处理。 检测到的伪死角将被写入名为 DeadEnd#.txt(其中 # 是一个数字,随着日志文件的生成,该数字会不断增大)的日志文件。

  • 折点 - 多余的折点可能影响质量和处理时间。 如果适用,请使用简化线工具将其移除。

  • 该工具可评估符号化要素的图形冲突。 符号系统范围和参考比例将结合使用。 仅在以下操作结束后再运行此工具:确定了符号的外观,并且确保参考比例与所需的最终输出比例相对应。

  • 如果线和轮廓符号宽度为零,将会引发错误。 如果不想显示某些要素,请对图层使用定义查询。

    经检测符号宽度为零的要素将写入名为 NoLineWidth#.txt 的日志文件(其中 # 是随各日志文件的生成而递增的数字)。

  • 在评估坐标系统时,如果已设置制图坐标系环境,则使用该环境;否则,将采用地图的坐标系。 如果以上两种坐标系均不可用,则使用输入图层的坐标系。

  • 在 Windows 操作系统中,在发出警告或出现错误时生成的日志文件会写入 C:\Users\<user name>\AppData\Local\ESRI\GeoProcessing

工作流注意事项

通常,与其他制图综合工具和图形冲突解决工具配合使用时,该工具最为有效。 下面有一些提示,可以帮助您在工作流中将这些工具同其他图层和其他工具一起使用:

  • 了解输入要素类将会被修改。 该工具不会创建新的输出道路要素类,而是会直接修改输入要素类。 建议您在处理之前复制要素类,以保留其原始状态。
  • 首先移除多余的要素。 根据道路网的密度,建议您移除多余的次要道路要素以留出更多的空间来解决冲突。 使用定义查询或选择内容移除一个或多个道路类,或使用细化道路网工具进行更高级别的优化,即可达到此目的。
  • 移动道路前先合并道路。 合并分开的道路工具的功能基本上与“解决道路冲突”工具的功能相反。 该工具将评估彼此靠近且基本平行的道路要素(通常为单个分开的道路要素的各个车道),并生成一条代表线以用于更加清晰地显示道路。 这两种方法都是解决道路合并问题的有效解决方案。 通常,在较大的输出比例下,最好在视觉上分离单独的车道;而在较小的比例下,应将其合并为一条直线。 在中等比例下,对于不同类别的道路,最好同时使用这两种方法。 如果在单一工作流中一起使用这两个工具,请首先在相关要素上运行合并分开的道路,然后使用该工具的结果作为解决道路冲突工具的输入。
  • 建立要素等级。 等级字段参数用于识别道路要素的相对重要性。 通常,这相当于对道路进行分类和符号化的方式。 将对重要性较低的道路进行调整,以适应更加重要的道路的显示。 等级值为 1 表示最重要的道路;整数值越大,表示道路的重要性越低。 为了获得最佳结果,请勿对输入数据应用约五种以上的等级类别。 所有输入图层将集中评估以划分要素等级,因此每个图层都必须含有一个同名字段,并使用相同的分类值。 字段的数据类型必须为短整型或长整型。
  • 考虑锁定特定要素。 等级字段参数也可用来锁定要素,对于这类要素,可通过将等级字段的值设置为 0 来实现。 锁定要素根本不会被移动或移位。 由于道路与其他地图要素的关系(尤其是像高程这样的连续数据)而无法对道路进行平移时,这一点就会非常有用。 例如,一段道路可能穿过一个非常陡峭、狭窄的山谷,将道路从其当前位置移开在制图方面是不正确的。
  • 使用锁定来定义障碍。 锁定也可用于对道路位移制造障碍。 例如,输入道路图层参数列表中就可以包含铁路图层和道路。 如果要为所有铁路要素指定等级值 0,则将对道路进行评估以检查其与铁路之间是否存在图形冲突,并且道路也不会移动到铁路的上面或上空,但是不会修改铁路要素本身。
  • 可选的输出位移要素类参数可创建一个面要素类,用来指示所发生的位移量和位移方向。 该要素类可用于直观检查、空间查询,也可作为传递位移工具的输入。

对大型数据集分区

该工具的运行与上下文相关,这样在确定每个具体要素的最终状态时,会同时考虑到相邻和连接要素。 一次可输入多个数据集,这意味着将同时对它们进行处理。 使用大量的输入数据(或许多独立的输入图层)可能会超出内存限制。 为避免这个限制,可以在运行该工具时启用分区,方法为在制图分区环境中指定一个分区要素类。 启用分区后,工具可以按照逻辑和可管理的区块来按顺序处理数据。 每个分区面描绘的输入要素与缓冲区中分区周围的附加数据一起被载入到工具中。 附加数据可认为是处理过程中的一部分。 这样可以确保生成的要素类没有缝隙,并且跨越分区边界的要素状态一致。

当通过分区解决道路冲突时,还将修改位于每个分区边界之外的缓冲区中的要素。 在分区边界处,它们将与在分区内所做的位移相匹配。 离开分区边缘时,位移量将减少,从而实现平滑过渡。 这样做是为了在处理每个分区时,保持道路网络连通性完整。 当处理相邻分区时,可将位移减小检测为冲突并正常将其解决。 最终,分区边界两侧的道路位移将保持一致。

相关主题