如果你有一堆点数据需要两两求路网最短距离,那么请往下看。(以arcgis10.2为例)
步骤1: 数据加载
打开ArcCatalog,找到文件树后右键新建“File Geodatabase”,随后在新建的gdb上右键新建“feature dataset ”,之后在dataset上右键,选择“Import”-->“Feature Class”导入你的点数据与路网数据。结构如下图:
步骤2:拓扑检查
在数据集dataset上右键,New ---> Topology ,添加规则“Point must be covered by line”
最后点击确认后你会在数据集里看到拓扑结果。
关闭ArcCatalog,打开arcmap。加载点图层线图层与拓扑图层。
右键arcmap菜单栏空白处,找到“Topology”选中。
打开点图层的editor,start editoring之后你会发现拓扑工具条同时被激活,点击最后一个图标
之后在出现的表格上方点击“search new”,这里注意,地图一定要缩放到把全部要素都显示出来的比例尺。因为这个search new只是搜当前范围,容易落下一些点没修改。
修改完成后保存修改并stop editoring。
此时你可以按照以上步骤重新建立一遍拓扑检查,会发现新的拓扑里error条数是0.
步骤3:建立网络数据集
下面进行线要素的处理,第一步,相交线打断。在arcToolBox的data management tools --->features--->featuretoline。
第二步,在点要素处打断线。在arcToolBox的data management tools --->features--->split line at point。
关闭arcmap,打开ArcCatalog。之后创建网络要素集。
在数据集dataset上右键,New ---> Network dataset,道路选择打断后的线图层,
步骤四:批量求路网距离
关闭ArcCatalog,打开arcmap。
单击菜单栏上的customize --> Extensions 勾选network analyst
右键arcmap菜单栏空白处,找到“network analyst”选中。
创建od矩阵
稍等片刻,如果图层中出现下图,即创建成功
点击网络分析工具条第一个
之后进行起始点终止点位置加载(point)
点击网络分析工具条最后一个求解
至此,路径距离计算结束。
结果表在这里,请注意一下,起点乘以终点的数目应和line的条数相等。如果不相等,说明你的点有一些是不互相连通的。
右键line打开属性表,以txt file格式导出数据,即可存入数据库中,做后续操作。
完。