在地理数据库中,拓扑是定义点要素、线要素以及面要素共享重叠几何的方式的排列布置。例如,街道中心线与人口普查区块共享公共几何,相邻的土壤面共享公共边界。
处理拓扑不仅仅是提供一个数据存储机制。在 ArcGIS 中,拓扑包括以下所有方面:
- 地理数据库包括一个拓扑数据模型,该模型对简单要素(点、线及面要素类)、拓扑规则以及具有共享几何的要素之间的拓扑集成坐标使用开放式存储格式。该数据模型能够为参与拓扑的要素类定义完整性规则和拓扑行为。
- ArcGIS 在 ArcMap 中包括了用于显示拓扑关系、错误和异常的拓扑图层。ArcMap 还包括一组用于拓扑查询、编辑、验证以及纠错的工具。
- ArcGIS 包括用于构建、分析、管理以及验证拓扑的地理处理工具。
- ArcGIS 包括用于分析和发现点、线以及面要素类中拓扑元素的高级软件逻辑。
- ArcMap 包括一个编辑和数据自动化框架,用于创建、维护和验证拓扑完整性以及执行共享要素编辑。
- 在能够导航拓扑关系、处理邻接和连通性以及通过这些元素组装要素的 ArcGIS for Desktop 和 ArcGIS for Server 产品中均包含 ArcGIS 软件逻辑。例如,标识共享特定公用边的面;列出在某个结点连接的边;从当前位置起沿连接边导航;添加一条新线并将其嵌入拓扑图;在交叉点分割线;以及创建生成的边、面和结点等。
地理数据库拓扑的元素
在地理数据库中,为各个拓扑定义以下属性:
- 要创建的拓扑的名称。
- 在拓扑处理操作中使用的拓扑容差。拓扑容差是一条术语,通常用于表示两种容差:X,Y 容差和 Z 容差。拓扑容差的默认值是坐标分辨率的 10 倍。
- 要素类列表。首先,需要一份将参与拓扑的要素类的列表。所有要素类必须使用同一个坐标系并组织成同一个要素数据集。
- 每个要素类中坐标的相对精度等级。如果某些要素类比其他要素类精确,您会希望指定更高的坐标等级。这将用于拓扑验证与集成。当精度较低的坐标落入其他拓扑容差范围内时,这些坐标将被移动到更高精度坐标的位置。精度最高的要素应收到值 1,精度其次的要素类收到值 2,精度再次的要素类收到值 3,依此类推。
- 有关要素共享几何的方式的拓扑规则列表。
聚类处理
创建拓扑关系包括分析同一个要素类中(以及参与拓扑的多个要素类之间)的各要素间的要素折点的坐标位置。彼此间距离在指定范围内的折点被认为表示同一个位置,并被指定一个共有坐标值(换句话说,将它们定位于同一点)。
拓扑容差用于整合折点。处于拓扑容差范围内的所有折点在验证过程中均可以轻微移动。默认拓扑容差基于为数据集定义的精度。用实际单位表示的默认拓扑容差为 0.001 米。它是 X,Y 分辨率距离(定义用于存储坐标的数值精度)的 10 倍。
两种拓扑容差:x,y 容差和 z 容差
在 ArcGIS 中,使用一对拓扑容差整合折点:
- X,Y 容差用于查找处于彼此水平距离范围内的折点
- Z 容差用于区分折点的 Z 高度或高程是否处于彼此容差范围内,以及是否应进行聚类
聚类坐标(定位于同一点)的方式
X,Y 容差应该很小,因此只有彼此非常接近(处于彼此 X,Y 容差范围内)的折点会被指定相同的坐标位置。如果多个坐标处于容差范围内,可认为这些坐标彼此重叠并将它们调整为共享相同位置。
这样,X,Y 容差也定义了坐标在聚类过程中可在 x 或 y(或两者)方向上移动的距离。因此,如果坐标在 x 维度或 y 维度上处于 X,Y 容差范围内,则可以对其进行聚类。请参见下面的逻辑示意图。坐标可移动图中对角线所示的距离,这形成了一个三角形。根据几何与勾股定理,对坐标进行聚类的最大距离等于 2 的平方根乘以 X,Y 容差。
注:
勾股定理认为,在直角三角形中,斜边(最长边)的平方等于其他两条边(直角边)的平方和。
默认 X,Y 容差
默认 X,Y 容差设置为 0.001 米,或以数据集的坐标系单位表示的等效值。例如,如果坐标系以英尺为单位,则此默认值是 0.003281 英尺(0.03937 英寸)。默认值是默认 X,Y 分辨率的 10 倍,且在大多数情况下均推荐此设置。如果坐标以经纬度表示,则默认 X,Y 容差为 0.0000000556 度。