转:浅谈ARCGIS拓扑

转自: http://www.docin.com/p-16979506.html 

    拓扑是地理要素间的空间关系, 它是确保数据质量的基础。 拓扑能提高空间分析能力, 并且在确保GI S 数据库质量方面扮演了一个重要角色。

拓扑将GI S 行为应用到空间数据上。 拓扑使得 GI S 软件能够回答这样的问题, 比如邻接、连通、邻近和重叠。

ArcGIS中拓扑为用户提供了一个有力的、 灵活的方式来确立和维护空间数据的质量和完整性。

 拓扑关系可以看成是空间约束, 可把它们应用到空间数据上。 ArcGIS 应用了这些关系,并且在任何一个约束被打破时会通知你。为了做到这一点,GIS软件中包含的工具必须要能够识别空间约束,并且提供用来查找和修复违规要素的工具。

ArcGIS8.3 以前, 拓扑一直是ArcInfo coverage 数据模型的一个特性。 ArcI nfo coverage 数据模型中, 广大的 GIS 用户通过bui ld clean 操作认识到拓扑的好处。  

ArcGIS8.3 开始为 geodatabase 增加了全面的拓扑。

ArcGIS9. 0 中常用的有关 topology 的操作主要有两个地方, 一个是在 ArcCatalog 中,一个是在 ArcMap中。

通常我们将在 ArcCatalog 中建立拓扑称为建立拓扑规则, 而在ArcMap中建立拓扑成为拓扑处理。

ArcCatalog Geodatabase 中所提供的创建拓扑规则,主要是用于进行拓扑错误的检查, 其中部分规则可以在所设容差内对数据进行一些修改调整。 建立好拓扑规则后,就可以在 ArcMap 中打开由拓扑规则所产生的文件, 根据错误提示对 SHAPE 图层进行修改。

ArcMap 中的 topolopy 工具条主要功能有对线拓扑, 删除重复线、 相交线断点( topol opy 中的planarize li nes ), 根据线拓扑生成面( topolopy 中的 construct features ), 拓扑编辑( 如共享边编辑 等)  拓扑错误显示( 用于显示在 ArcCatalog 中创建 的拓扑规则错误, topolopy 中的 error inspector  拓扑错误重新验证( 也即刷新错误记录)

ArcGIS Geodatabase 而言, 能为包含在要素集 中的一个或多个要素类定义拓扑。 它可以为多点、 线和多边形要素类定义拓扑。

 拓扑作为一系列用于空间关系的完整性规则, 有一些重要的属性: 一个群组容限( cl uster tolerance 容差) 要素类等级( rank 对坐标精度而言) 错误( error 违规) 和你所定义的规则(rules)的任何异常情况。

9. 0 版中, ArcCatalog 包含了一个拓扑向导来选择参与拓扑的要素类, 并定义它们的属性。 创建拓扑规则具 体步骤如下:

创建一个新的 geodatabase 个人数据集)

在其下创建一个 feature dataset( 要素集) ,并为该要素集定制坐标系统

创建feature class( 要素类 ) 或将其它数据作为要素类 导入到该要素集下

进入到该要素集下, 在窗口右边空白处单击右键, 在弹出的右键菜单中有 new->topolopy

按所给提示操作, 设定合适容差, 添加一些所需拓扑规则, 若导入的要素类为多个图层, 还需为图层划分等级,接着就可完成拓扑规则的检查

最后在 ArcMap 中打开由拓扑规则产生的文件, 利用 topolopy 工具条中给出的错误记录信息进行修改

具体规则包括:

  线 topol ogy

1 . must not have dangle 线, 不能有悬挂节点

2. must not have pseudo-node 线, 不能有伪节点

3. must not overlay 线, 不能有线重合( 不同要素间)

4. must not sel f overlay 线, 一个要素不能自覆盖

5. must not intersect 线, 不能有线交叉( 不同要素间)

6. must not selfintersect 线, 不能有线自交叉

7. must not i ntersector touch i nterrior 线, 不能有相交和重叠

8. must be single part 线, 一个线要素只能由一个 path 组成

9. must not covered wi th 线+ 线, 两层线不能重叠

1 0. must be covered by feature cl ass of 线+ 线, 两层线完全重叠

1 1 . endpoi nt must be covered by 线+ 点, 线层中的终点必须和点层的 部分( 或全部) 点重合

1 2. must be covered by boundary of 线+ 多边形, 线被多边形边界重叠

1 3. must be covered by endpoint of 点+ 线, 点被线终点完全重合

1 4. poi nt must be covered by line 点+ 线, 点都在线上

 (2) 多边形 topology

 1 . must not overl ay 单要素类, 多边形要素相互不能重叠

 2. must not have gaps 单要素类, 连续连接的多边形区域中间不能有 空白区( 非数据区)

3. contai ns poi nt 多边形+ 点, 多边形要素类的每个要素的边界以内 必须包含点层中至少一个点

 4. boundary must be covered by 多边形+ 线, 多边形层的边界与线 层重叠( 线层可以有非重叠的更多要素)

5. must be covered by feature cl ass of 多边形+ 多边形, 第一个 多边形层必须被第二个完全覆盖( 省与全国的关系)

 6. must be covered by 多边形+ 多边形, 第一个多边形层必须把第二 个完全覆盖( 全国与省的关系)

 7. must not overl ay wi th 多边形+ 多边形, 两个多边形层的多边形 不能存在一对相互覆盖的要素

 8. must cover each other 多边形+ 多边形, 两个多边形的要素必须 完全重叠

 9. area boundary must be covered by boundary of 多边形+ 多边形 第一个多边形的各要素必须为第二个的一个或几个多边形完全覆盖

1 0. must be properl y i nsi de pol ygons 点+ 多边形, 点层的要素必 须全部在多边形内

1 1 . must be covered by boundary of 点+ 多边形, 点必须在多边形 的边界上

 (1 ) 群组容限(cl uster tol erance) • 群组容限与模糊容限( fuzzy tol erance 很相似。 它是一个距离范围 , 在这个范围内结点被认为是重叠 的。 在验证拓扑的过程中, 落入群组容限的结点和端 点会被捕捉。

 (2) 等级(rank) • 坐标精度等级在要素类上定义, 在拓扑生效的时候, 它将控制哪些要素类向另外哪些要素类进行捕捉。 别越高( 1 为最高) 在验证过程中移动的要素越少

 Geodatabase 里建立的拓扑用来捕捉要素的几何 形体, 检查结点是否在群组容限内, 以及是否有 违规。

拓扑首先是捕捉要素的结点, 这些结点在考虑等 级的要素类的群组容限范围以内。 如果要素的结 点在这个范围外, 则视为违规, 都会在验证过程 中被发现并标记为错误。 完整的错误列表可以在 ArcCatal og ArcMap 的拓扑属性中看到。

  ArcMap 中拓扑中的错误和异常可以在图上显 示出来, 也可以在错误探测器中列出。 然后用户 可根据错误提示对图层要素进行修改。

 ArcInfo coverage 模型明确地定义、 存储和操作拓扑信息 并使用一组固定的工具来创建和维护拓扑。 结果被软件所规定的工作流程紧紧地控制着, 并且拓扑的完整性依然被维持着。 这个数据模型不够灵活。 因此与很多 GI S 应用程序的需求相比, 用于编辑的应用程序开发需要建立和维护更复杂的数据模型。

geodatabase 中定义拓扑的好处有: 更好的数据管理 ---- 你可以选择某些要素类参与拓扑。 更高的灵活性 ---- 多部件的多边形、 点和线要素能够参与 拓扑。 改善的数据完整性——你可以为数据指定合适的拓扑规则 更多的数据建模机会——大量可能的空间约束可以应用到 你的数据上。 更多的地图图层——非常多的图层能存放在一个单一的数 据库中。 Geodatabase 中的拓扑提供了一个更加灵活的环境, 我们能 够定义和应用众多的完整性规则和约束。 因此, 在设计阶段 由用户指定的任何一个工作流程都能够应用在拓扑完整性分 析中。 你不用强制执行cl ean 命令来重建拓扑。 用户在任何 时候都可以验证geodatabase 的拓扑, 使用 geodatabase 据来进行查询和分析, 进而生产出高质量的地图。

你可能感兴趣的:(拓扑)