《gis实习教程第21章》由会员分享,可在线阅读,更多相关《gis实习教程第21章(14页珍藏版)》请在金锄头文库上搜索。
1、第二十一章 拓扑规则1 拓扑规则简介实际应用时,往往需要在空间数据各要素之间保持某种特定的关系。比如:行政区是多边形,不能有相互重叠区域,线状道路之间不能有重叠线段、公共汽车站必须在公共交通线路上,等等。在 ArcGIS 的 Geodatabase 中可以增加一系列的拓扑规则,在要素之间建立起空间关系,还可以对这些规则进行维护。为了便 于理解拓扑规则,先解释几个专用术语:相交(Intersect):线和线相交,并且只有一点重合(该点不是端点),称为相交。接触(Touch):某线段的端点和自身或其他线段有重合,称为接触。悬点(Dangle Node):线段的端点悬空,没有和其他任何线段连接,这个
2、端点称为悬点。伪结点(Pseudo Node):二个端点相互接触,连接成一个端点,称为伪结点。拓扑规则的种类可以按点、线、面来分。以下介绍 ArcGIS 的主要拓扑规则, 每条规则用一幅图来说明,图的左半部分是符合规则的例子,右半部分则是违反规则的例子。11 点拓扑规则举例规则一:Must be covered by boundary of,点必须在多边形边界上。例如有一 个点要素类代表公共汽车站,另有一个多边形要素类代表地块,可制定如下规则: 公共汽车站必须位于地块的边界上。另一个例子是:行政界碑必须落在行政边界线上。不满足该规则的点要素将被标记为错误,修复的方法是删除或移动错误点(移动也可
3、理解为删除后立即添加)。图 21-1 点拓扑规则一规则二:Must be covered by endpoint of,点要素必须处于线要素的端点上。 例如:阀门为点要素类,必须位于线要素类输水管的尽端。不满足该规则的点要素将被标记为错误,修复的方法是删除或移动错误点。图 21-2 点拓扑规则二规则三:Point must be covered by line,点要素必须在线要素之上。例如点要 素代表窨井用,线要素代表排水管,窨井的必须位于排水管上。另一个例子是: 公交汽车站(点要素类)必须在公交线路(线要素类)上。不满足该规则的点要 素将被标记为错误,修复的方法是删除或移动错误点。图 21-
4、3 点拓扑规则三规则四:Must be properly inside polygons,点要素必须落在多边形要素内(在边线上不算)。比如省界为多边形,省内的城市为点,城市一定要落在省界内。另 一个例子是:代表住宅地址的点要素必须被居住用地多边形包含。不满足该规则的点要素将被标记为错误,修复的方法是删除或移动错误点。图 21-4 点拓扑规则四注意:点要素本身是不能建立拓扑规则的,它必须和线要素或多边形要素一起才能建立拓扑规则。12 多边形拓扑规则举例规则一:Must not overlap,同一多边形类的要素之间不能重叠(几个多边形 共享一个点或共享一条边界不算重叠)。例如规划地块之间不能有重
5、叠,行政区不能有重叠。重叠的部分将产生多边形错误。修改错误的方法有三种,一是删除重叠部分,留出空白;二是将重叠部分合并到某一个多边形;三是在重叠部分新增 多边形,并删除原来的重叠部分。图 21-5 多边形拓扑规则一规则二:Must not have gaps,多边形之间不能有间隙。比如规定表示连续分布的地形高程多边形之间不能有空隙。不满足规则的地方将产生线错误,表示空 隙多边形,修改的方法是调整原来的边界,或添加新的多边形。图 21-6 多边形拓扑规则二规则三:Contain point,多边形内必须包含点要素(边界上的点不算)。例如 规定居住用地内至少有一个地址点。不包含点的多边形将被视为错
6、误,修改的方 法是:在错误多边形内增加一个点要素,或者将没有内部点的多边形删除。图 21-8 多边形拓扑规则三图 21-9 多边形拓扑规则四规则四:Boundary must be covered by,多边形的边线必须与线要素中的线段重合。例如交通调查小区的边界必须和道路线要素类重合。违反规则的地方将产 生线错误,修改的方法可以是调整线段,也可调整多边形。规则五:Must be covered by feature class of,多边形要素中的每一个多边形都 被另一个要素类中的多边形覆盖。例如城市规划区必须在若干行政区划内,工业建筑多边形必须在规划的工业用地内。违反规则的地方将产生多边形
7、错误,修改的方法是在重叠部分增加新的多边形或调整错误的多边形。图 21-10 多边形拓扑规则五规则六:Must be covered by,每个多边形要素都要被另一个要素类中的单个 多边形覆盖。例如建筑物多边形必须在地块多边形内,一个建筑多边形不能跨越 多个地块。不满足规则的地方将产生多边形错误,修改的方法是:调整第一类多 边形,使他们不要和第二类有交叉,或者扩大第二个要素类中的某些多边形,使 他们能覆盖第一类中的错误多边形。图 21-11 多边形拓扑规则六规则七:must not overlap with,一个要素类中的多边形不能与另一个要素类 中的多边形重叠。虽然和规则一相似,都是说不能重
8、叠,但是这里是指两个多边 形要素类(Feature Class)之间的关系。比如一个要素类表示湖泊,另一个要素类 表示陆地,他们是相互独立的类,显然它们应该满足该规则。重叠的部分将产生 多边形错误,修改方法同规则一。图 21-12 多边形拓扑规则七规则八:Must cover each other,两个要素类中的多边形要相互满覆盖,外边 界要一致。例如土壤层范围和地质层范围应一致。违反规则的地方将产生多边形 错误,修改错误的方法是在重叠不到的地方增加多边形,或者调整、删除不重叠 的部分。图 21-13 多边形拓扑规则八规则九:Area boundary must be covered by b
9、oundary of,某个多边形要素类的 边界线在另一个多边形要素类的边线上。例如县、市边界上必须有乡、镇边界,而且前者的边界必须被后者所重合。违反规则的地方将产生线错误,修改的方法是手工编辑边界。图 21-14 多边形拓扑规则九 多边形不仅可定义自身的规则,而且和点要素、线要素、其他多边形要素之间建立起拓扑关系。多边形要素和点要素的关系前节已经介绍,不同多边形要素 类之间的关系在本节介绍,多边形要素和线要素的关系在下节介绍。13 线拓扑规则举例规则一:Must not have dangles,不允许线要素有悬点,即每一条线的端点都 不能孤立,必须和本要素类中其他要素、或和自身相接触。例如,
10、地块边界线段 不能有悬点。违反规则的地方将产生点错误,修改的方法是:将包含悬点的线段延伸到其它要素上,或者将过长的部分截断后删除。图 21-15 线拓扑规则一规则二:Must not have pseudo node,不能有伪结点,即线段的端点不能是二 个端点的接触点(自身首尾接触是允许的),例如河流。违反规则的地方将产生点错误,修改的方法是:将伪结点两边的线段合并为一个条线,使伪结点自然取消。图 21-16 线拓扑规则二规则三:Must not overlap,在同一要素类中,线与线不能相互重叠。例如平 面道路网。违反规则的地方将产生线错误,修改的办法是将不需要的线段截断, 再删除。图 21
11、-17 线拓扑规则三规则四:Must not self overlap,线要素不能自己和自己重叠。例如街道。违反 规则的地方将产生线错误,修改的方法是截断、删除重叠部分。图 21-18 线拓扑规则四规则五:Must not intersect,同一要素类中,线与线不能相交。例如河流、地 块边界线。违反规则的地方将产生线错误,修改的方法是重合处合并,相交处打 断。图 21-19 线拓扑规则五规则六:Must not self intersect,同一要素类中,线要素不能自相交,例如枝 状的排水管。违反规则的地方将产生线错误和点错误,修改的方法是在自相交处 适当缩短或外移。图 21-20 线拓扑规
12、则六图 21-21 线拓扑规则七规则七:Must not intersect or touch interior,线和线不能交叉,端点不能和非 端点接触(非端相互重合是允许的)。例如铁路和铁路不能交叉。某铁路端点不能 和其他铁路的非端点部分接触。违反规则的地方将产生线错误和点错误,该错误 根据实际需要编辑、修改。规则八:Must be single part,线要素必须单独,不能相互接触、重叠。违反 规则的地方将产生线错误,修改的方法是将接触的地方合并,成为一个要素,或 移动后分离。图 21-22 线拓扑规则八规则九:Must not overlap with,两个线要素类中的线段不能重叠。违
13、反规则 的地方将产生线错误,该错误根据实际需要编辑、修改。图 21-23 线拓扑规则九规则十:Must be covered by feature class of,某个要素类中的线段必须被另一 要素类中的线段所覆盖。例如公交线路必须行驶在道路上。违反规则的地方将产生线错误,修改的方法是将错误线段删除,再重新输入正确的。图 21-24 线拓扑规则十规则十一:End point must be covered by,线要素的端点被点要素覆盖。例如 每一条公交线路的尽端必须有终点站。违反规则的地方将产生点错误,修改的方 法是增补新的点要素。图 21-25 线拓扑规则十一规则十二:Must be c
14、overed by boundary of,线要素必须被多边形要素的边界覆盖。例如城市的内部道路至少一侧有地块多边形边界。违反规则的地方将产生线错误,修改的方法是删除错误的线,或编辑多边形。图 21-26 线拓扑规则十二一个要素类允许设置多个拓扑规则,但是这些规则必须定义在一个拓扑类中。2 拓扑规则用于数据质量的检验和控制21 建立线要素拓扑规则启动ArcCatalog,在窗口左侧将路径定位到gis_ex09ex22,其 中有Geodatabase geo22,双击鼠标展开其中的数据集,出现数据集 dataset1。在 dataset1 中有线要素类 lotlines,是地块边界线。本练习目的
15、是通过建立线要素类 lotlines 的拓扑关系,检验输入的线要素是否全部封闭,为下一步构成地块多边形作准备。选择 dataset1,单击鼠标的右键,在弹出的菜单中,选择 New / Topology,表示新建拓扑规则。出现 New Topology(新拓扑)对话框。如果 dataset1 的拓扑 规则已经存在,系统会提示无法建立拓扑规则。这时用选择 dataset1 下侧的拓扑关系图标,用鼠标右键选择 Delete,将曾经建立的拓扑规则删除后再重建。在New Topology(新拓扑)对话框中,点击按钮“下一步”,有两个设置:Enter a name for your topology:to
16、pology1 键盘输入新建拓扑规则的名称Enter a cluster Tolerance 要求输入限差值,本练习用默认值,不修改图 21-27 选择拓扑规则按“下一步”键继续,提示 Dataset1 中的各种要素类名称,勾选 lotlines,表 示为该要素建立拓扑规则。按“下一步”键,出现 Rank 设置对话框,保持默认 值,再选“下一步”按钮,提示:Specify the rules for the topology 要求定义拓扑 规则。点击左侧按钮 Add Rule,为要素类添加拓扑规则(见图 21-27)。Features of feature class 下拉选择要素类 lotlinesRule: 下拉选择规则 Must Not Have Dangles,不能出现悬 点 Show Errors 勾选图 21-28 拓扑错误按 OK 键,返回 Specify the rul