已知有一个河流的线图层(HydroL)和多个不同用地类型的图层(WoodyA表示绿化用地,ResidentialA表示公共用地,BoundaryA表示其他类型用地),目标是获得每个分区内的河流总长度,该如何实现?
这个问题其实和分区统计管线长度,或者分省统计铁路长度其实是一样的,那么在ArcGIS中,我们要如何实现呢?
图1 现有数据和图例
在本例中,区域之间的重合是被允许的,如果计算的是各行政区的河流(管线)总长度,即各区域之间不允许重合,则在处理之前,需要先进行拓扑修正。
1.修正拓扑错误
1.1建立拓扑
打开ArcCatalog,在要素数据集上右键新建拓扑,按照系统向导一步一步设置:
名称:分区河流长度_Topology;
拓扑容差:保持默认;
参与到拓扑中的要素类:三个面要素;
等级:保持默认;
拓扑规则:BoundaryA不能与其他要素重叠ResidentialA,BoundaryA不能与其他要素重叠WoodyA,ResidentialA不能与其他要素重叠WoodyA。
最终摘要如图。