中国信息化高级技术培训中心数据拓扑查询和处理闫磊EMail:arcobjects@126.com中国信息化高级技术培训中心欢迎你Page2数据拓扑检查和处理五、拓扑高级处理四.拓扑错误处理三、拓扑建立和检查本章内容二、拓扑规则一、拓扑的含义中国信息化高级技术培训中心欢迎你Page3拓扑关系拓扑:空间数据的的位置关系。地理对象的拓扑关系,主要有以下三种:1.相邻:是指对象之间是否在某一边界重合,例如行政区划图中的省、县数据。2.重合:是指确认对象之间是否在某一局部互相覆盖,如巴士线路和道路之间的关系。3.连通:连通关系可以确认通达度、获得路径等。中国信息化高级技术培训中心欢迎你Page4拓扑主要作用空间关系检查:通过拓扑检查完成拓扑检查可以保证数据质量,但拓扑会处理数据拓扑错误也是常见错误之一中国信息化高级技术培训中心欢迎你Page5ArcGIS四个常见错误确保是ArcINFO,选中扩展模块版本问题:地理数据版本和mxd版本坐标系统:数据有坐标系和数据框也有坐标系拓扑问题中国信息化高级技术培训中心欢迎你Page62、拓扑规则介绍(中级)ArcGIS的拓扑都是基于geodatabase(mdb,gdb,sde),shp文件是不能进行拓扑检查的。首先要建立FeatureDataset(要素数据集),把需要检查的数据放在同一要素集下,要素集和检查数据的数据基础(坐标系统、坐标范围)要一致,直接拖进入就可以,拖出来也可以,有拓扑时要先删除拓扑中国信息化高级技术培训中心欢迎你Page7ArcEditor和ArcInfo。才有拓扑一直是GIS在数据管理和完整性方面的关键要求。通常,拓扑数据模型通过将空间对象(点、线和面要素)表示为拓扑原始数据(节点、面和边)的基础图表来管理空间关系。这些原始数据(连同它们彼此之间及其所表示的要素边界之间的关系)通过在拓扑元素的平面图表中表示要素几何进行定义。中国信息化高级技术培训中心欢迎你Page8拓扑分为两种:1.一个图层自身拓扑:数据类型肯定一致,要么是点,要么线、要么面2.两个图层之间的拓扑:数据类型可能不同,有点点,线点、点面、线面、线线、面面五种,检查前提必须在同一FeatureDataset(要素集)下,数据基础(坐标系统、坐标范围)要一致3.拓扑容差,9.3,26中,arcgis10,32中拓扑规则中国信息化高级技术培训中心欢迎你Page9增加的规则集合中新增了六种拓扑规则,以便对数据的空间关系进行建模。这些规则如下:1.面:包含一个点2.线:不能与其他要素相交3.线:不能与其他要素相交或内部接触4.线:必须位于内部5.点:必须与其他要素保持一致6.点:必须不相交有关拓扑规则的说明,请参阅地理数据库拓扑规则与拓扑错误修复。中国信息化高级技术培训中心欢迎你Page10拓扑容差中国信息化高级技术培训中心欢迎你Page11点重复检查,ArcGIS新增功能中国信息化高级技术培训中心欢迎你Page12处理重复点中国信息化高级技术培训中心欢迎你Page13线层自身拓扑错误,最主要5个拓扑规则中国信息化高级技术培训中心欢迎你Page14线层自身拓扑错误中国信息化高级技术培训中心欢迎你Page15一个面自身错误中国信息化高级技术培训中心欢迎你Page16两个图层之间,点点中国信息化高级技术培训中心欢迎你Page172.2.1两个图层之间拓扑点线之间中国信息化高级技术培训中心欢迎你Page182.2.2两个图层之间拓扑点面之间中国信息化高级技术培训中心欢迎你Page192.2.3两个图层之间拓扑线面之间中国信息化高级技术培训中心欢迎你Page202.2.4两个图层之间拓扑线线之间线线之间拓扑,可以用于一个线图层自己和自己运算不能和其他要素重叠:要素层相互不能重叠,拓扑错误,是将两个图层重叠的列出来,图层顺序不影响最后的结果,只能用于两个不同图层之间。中国信息化高级技术培训中心欢迎你Page212.2.5两个图层之间拓扑面面之间中国信息化高级技术培训中心欢迎你Page222.3拓扑容差拓扑容差是拓扑错误关键因素,不同容差,错误个数也不一样,甚至在指定容差下有拓扑错误,如0.001,而容差为0.005,就没有了。拓扑容差大小与数据要素有关,一般和数据自身的精度一致,如0.001m,就可以了中国信息化高级技术培训中心欢迎你Page23三.拓扑建立和拓扑检查-内容1、建拓扑是arccatalog中,2、拓扑检查:可以在arccatalog,或arcmap中,拓扑错误处理是在arcmap。3、拓扑检查实际会改变数据,不仅仅是拓扑检查。一定要备份数据,级别(Rank)(高级)在拓扑验证的过程中,有自动捕捉的过程,要素会移动。在ArcGIS拓扑关系中每一个要素类是根据Rank值的大小来控制移动程度的。Rank等级越高的要素移动程度越小。ArcGIS10提供的Rank范围在(1-50),Rank值等于1的为最高等级。只有两个图层时才有效中国信息化高级技术培训中心欢迎你Page243.1建拓扑在要素数据集右键拓扑,一个要素数据集中可以有多个拓扑,但一个图层只能在一个拓扑1.首先给拓扑设置名称和容差2.选择参与的图层,最少一个图层3.添加拓扑重点一定要先见要素数据集使用的数据为:\6top\gh.shp,看拓扑检查.exe中国信息化高级技术培训中心欢迎你Page253.1建拓扑4、拓扑验证,点击拓扑,右键验证5、修改容差,右键,属性,在错误中看错误中国信息化高级技术培训中心欢迎你Page263.2拓扑检查拓扑有效后就可以查看拓扑错误,设置不同拓扑,就实现不同拓扑检查可以arccatalog,也可是在acrmap将一个图层叠加在一起看,有错误就可以进行拓扑编辑中国信息化高级技术培训中心欢迎你Page273.3拓扑检查实际会改变数据,不仅仅是拓扑检查。使用数据6top\两个图层之间.gdb中jzd和jzx中国信息化高级技术培训中心欢迎你Page28四.拓扑错误处理(中级)1、拓扑工具条的介绍:拓扑Topology工具条在ArcMap中,通过右键增加,要想使用数据处于编辑状态2、拓扑错误处理中国信息化高级技术培训中心欢迎你Page294.1、拓扑工具条的介绍①地图拓扑:设置拓扑图层②构造要求构建拓扑要素、线转面,面转线,操作是选中要素,后点击该按钮。③打断相交线:对线拓扑处理,交叉线自动按交点打断,删除重复线,操作同上④拓扑编辑工具:选择共享要素(如共享边),后面重点将⑤显示共享要素:当拓扑编辑工具中共享边,看那几个共用中国信息化高级技术培训中心欢迎你Page304.1、拓扑工具条的介绍⑥有效当前范围拓扑⑦修复错误工具:选择(可以框选、可以点击)和提供修复错误工具⑧错误监视器:显示或隐藏拓扑错误列表有拓扑图层后才可以使用,中国信息化高级技术培训中心欢迎你Page314.2拓扑错误处理①重叠(线、面)不能重叠②悬挂(线)③伪节点④省边界和县的边界不重合中国信息化高级技术培训中心欢迎你Page32重叠线①完全重叠的话,1)选中其中一条删除2)选中重叠几条,使用打断相交线处理,重叠只保留一个②部分重叠,1)在错误上右键,选择去除重复部分2)选中较短一条删除,3)选中重叠几条,使用打断相交线处理后,自动分段,后再合并打断相交线还可以处理交叉线,在交叉点自动打断,八字图交叉也可以,面的交叉使用使用数据为:6top\check\topcheck.mdb\line\line_Topology下的中国信息化高级技术培训中心欢迎你Page33重叠面mustnotoverlap①在错误上右键选择merge(合并),将重叠部分合并到其中一个面里。②在错误上右键选择createfeature,将重叠部分生成一个新的要素,然后利用editor下的合并merge把生成的面合并到相邻的一个面里。③用editor下切割clip直接裁剪掉重叠部分。④可以直接修改要素节点去除重叠部分。⑤使用排除substact去除重叠的1-4是推荐的方法,5慎用中国信息化高级技术培训中心欢迎你Page344.2.2缝隙(面)mustnothavegaps①在错误上右键选择创建要素,将缝隙部分生成一个新的要素,然后利用编辑下的m合并把生成的面合并到相邻的一个面里。②可以直接修改要素节点去除重叠部分注意:查缝隙时最面最外围一圈会认为是缝隙,这种可以标记为异常(例外markasexception)。中国信息化高级技术培训中心欢迎你Page354.2.2悬挂(线)选中悬挂错误,右键进行自动延伸和裁剪。延伸或裁剪时需输如一个距离,小于这个距离的悬挂线会被自动延伸或裁剪,线不能构面,一定要检查悬挂使用的数据:6top\线的悬挂.mdb中国信息化高级技术培训中心欢迎你Page364.2.4伪节点mustnothavepseudo-node选中伪节点错误,右键,有合并,和合并到最长(最长那条),数据:6top\Topology.gdb\StudyArea\LotLines中国信息化高级技术培训中心欢迎你Page37省边界和县的边界不重合数据:China中国信息化高级技术培训中心欢迎你Page38比较两个面层不同中国信息化高级技术培训中心欢迎你Page395、拓扑高级处理1.点重复,使用点重复删除工具2.面层重叠缝隙,使用union3.线层重叠相交,要素转线或则打断线4.伪节点,如果线连一起,使用融合工具处理,如何没有点在一起,先使用打断线工具5.悬挂线,使用修剪线,延伸线工具6.点不是线的端点,使用捕捉工具7.线不是面的边界,使用捕捉工具,最好方法是线转面中国信息化高级技术培训中心欢迎你Page40重复线处理不保留属性使用:6top\重复线、点面.gdb\line中国信息化高级技术培训中心欢迎你Page41线不是面的边界,使用捕捉工具,最好方法是线转面数据:6top\线面不重合.gdb\工具箱\模型中国信息化高级技术培训中心欢迎你Page42点不是线端点数据:6top\两个图层之间.gdb\line\JZD和JZX中国信息化高级技术培训中心欢迎你Page436.1共享线的移动①设置图层可编辑②拓扑工具工具条中使用地图拓扑设置图层拓扑③点击拓扑编辑工具④在地图上单击,或则框选一条(多条)共用边⑤在共用边的位置,拖动选中的共用边数据使用:\6top\共用边修改.mxd中国信息化高级技术培训中心欢迎你Page44本章掌握内容1.如何建立拓扑2.拓扑容差与数据检查、数据修改的关系3.拓扑共享编辑的操作要点