合并分开的道路 (制图)
摘要
生成单线道路要素来代替匹配的两条分开的道路车道。
如果多对道路或车道属于同一道路类、道路走向大致互相平行并且在允许的合并距离间隔之内,则将对这些道路或车道进行合并。道路类由合并字段参数指定。输入集合中的所有未合并道路将被复制到输出要素类中。
了解有关“合并分开的道路”工作原理的详细信息
此工具通常用于以较小比例简化相对大比例的道路集合,这样便适用于将分车道高速公路和大道描绘为单线。在中等比例下,将分开的道路保留为各自独立的要素可能更为合适。在这种情况下,可转而使用解决道路冲突工具以确保在不存在符号冲突的情况下显示符号化的车道。如果要在同一道路集合中运行解决道路冲突和合并分开的道路这两个工具,建议首先运行合并分开的道路。
如果输入要素未使用投影坐标系,则会发出一条警告消息。该工具基于线性距离单位,如果使用非投影坐标系,则将创建意外的结果。因此,强烈建议您对使用投影坐标系的数据运行此工具,以确保获得有效的结果。如果坐标系缺失或未知,则会生成一条错误消息并且工具将不执行处理操作。
插图
用法
-
输出要素类包含表示已合并道路的单线要素以及所有未合并输入要素的副本。合并后的要素将继承两个输入要素中一个要素的属性。
-
合并字段参数值等于零的输入要素将被“锁定”且不会进行合并,即使相邻要素未被锁定也是如此。
可选的输出位移要素类参数可创建一个面要素类,用来指示所发生的位移量和位移方向。该要素类可用于直观检查、空间查询,也可作为传递位移工具的输入。
如果输入是使用制图表达绘制的要素图层,则此工具会将与制图表达相关联的所有形状覆盖用作输入几何,且 Shape 字段中的相应几何将被忽略。输出要素类将包含要素类制图表达,但所有几何将存储在输出 Shape 字段中,而不是存储为制图表达形状覆盖。
语法
参数 | 说明 | 数据类型 |
in_features |
输入线状道路要素,包含多对应合并为单个输出线要素的分开的道路车道。 | Feature Layer |
merge_field |
包含道路分类信息的字段。将只合并平行且接近的相同类型道路。值 0(零)将锁定要素以阻止其参与合并。 | Field |
merge_distance |
要合并的相互平行的同类道路要素的最小距离间隔(使用指定的单位)。此距离必须大于零。如果单位是 pt、mm、cm 或 in,则值被视为使用页面单位,还会将参考比例考虑在内。 | Linear unit |
out_features |
输出要素类,包含表示已合并道路要素的单线以及所有未合并的道路要素。 | Feature Class |
out_displacement_features (可选) |
包含道路位移的程度和方向的输出面要素,传递位移工具将使用这些要素保留空间关系。 | Feature Class |
代码示例
以下 Python 窗口脚本演示了如何在即时模式下使用 MergeDividedRoads 工具。
import arcpy from arcpy import env env.workspace = "C:/data" env.referenceScale = "50000" arcpy.MergeDividedRoads_cartography("roads.lyr", "level", "25 meters", "C:/data/cartography.gdb/transportation/merged_roads", "C:/data/cartography.gdb/transportation/displacement")
此独立脚本显示的是使用 MergeDividedRoads 工具的示例。
# Name: MergeDividedRoads_standalone_script.py # Description: Resolves symbology conflicts between roads within a specified distance of each other by snapping them together # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" env.referenceScale = "50000" # Set local variables in_features = "roads.lyr" merge_field = "level" collapse_distance = "25 meters" out_features = "C:/data/cartography.gdb/transportation/merged_roads" out_displacement_features = "C:/data/cartography.gdb/transportation/displacement" # Execute Merge Divided Roads arcpy.MergeDividedRoads_cartography(in_features, merge_field, collapse_distance, out_features, out_displacement_features)