几何网络
所谓几何网络网络就是要素集中的要素之间的拓扑关系的集合。每一个要素在几何网络中都扮演的一定的角色,比如一条边或一个交点。多要素类或许和在单一几何网络具有同样的角色。
建立几何网络的最基本的方法适确定加入几何网络的要素类以及这些要素类所扮演的角色。一系列的网络权重以及其他一些高级的参数也会被确定。
有两种建立网络的方法:建立一个新的空的网络,为现存的简单要素建立网络。
建立一个新的空的网络
ArcCatalog 让你从无到有的建立新的几何网络,然后从头设计、建立网络。你可以使用ArcMap中的编辑工具、自定义VB,、VBA或C++代码来增加几何网络的要素。
建立网络的步骤如下所示:
1.???????? 使用ArcCatalog建立要素集,此要素集包括几何网络和他的要素。
2.???????? 使用ArcCatalog在要素集中建立新的要素类,并分配他们的角色。
3.???????? 使用ArcCatalog为几何网络建立连通性规则。
4.???????? 使用自定义脚本或ArcMap编辑器为几何网络添加要素。
在现有数据基础之上建立几何网络
你或许在你的数据库中已经有了要建立几何网络的数据,ArcCatalog和ArcToolbox都包含利用现成数据建立几何网络的工具。
从现有数据建立网络的步骤如下所示:
1.???????? 使用ArcCatalog或ArcToolbox把你的数据导入到geodatabase中。
2.???????? 使用ArcCatalog或ArcToolbox以现有的要素类建立几何网络。
3.???????? 使用ArcCatalog为几何网络添加附加要素类。
4.???????? 使用ArcCatalog为几何网络建立连通性。
如何建立网络
从已有数据建立几何网络是一个极其高度耗费CUP的操作,它会耗费大量的时间和计算机系统资源,数据量的多少也是很重要的因素。假如要素需要捕捉,网络建立操作会在要素步骤期间耗费大量的时间。
网络建立的过程在以下的步骤中描述:
1.???????? 假如确定了捕捉,就捕捉简单要素。
2.???????? 假如指定了捕捉,就捕捉复杂要素。
3.???????? 建立空的逻辑网络。
4.???????? 在数据库中建立网络架构。
5.???????? 从输入的要素类中为权重计算提取属性。
6.???????? 建立拓扑。
7.???????? 建立孤立交点,输入交点的要素到几何网络中,并初始化交点使能的值。
8.???????? 为交点元素设置权重。
9.???????? 为几何网络添加边。
10.???? 为边元素设置权重。
11.???? 在数据库重建立所有必须的索引。
网络捕捉模型
理想情况下,在建立几何网络前,你的数据应该是“干净”的,“干净”意味着在几何网络中应该连接的要素都应该是地理一致的,那就是说,没有伪交点和悬挂交点。然而,如果并非如此,那么在网络建立过程中数据就要被捕捉。
对理解在网络建立过程中,依靠捕捉,如何建立连同性以及要素集合体怎样调整从而建立连同性是十分重要的,下面是在特定情况下,几个如何建立连同性的例子。
在这些示意图当中,用下面的关键词表示在每一个场景中都有什么类型的要素被显示。
简单边连同模型
简单边:简单边的连通只能建立在每个边要素的端点。横跨连通是不会被建立的,即使在简单边上有节点存在。
复杂边连通模型
复杂边:复杂边上的连通性在边的端点和中间都可以建立。在建立连通的地方,假如没有节点存在,一个新的节点就会产生出来。当捕捉复杂边时,连通性最少要建立在一个边的端点之上,而不会建立在两个都是中间点之上。
节点群组连通模型
节点群组:在捕捉两个要素时,假如所捕捉的地方在捕捉容限之内有多于一个的节点,那么这些节点就叫做节点群组。捕捉会发生在节点群组的一个节点之上,但并不必须是在最近的哪个节点之上。
一致性交点连通模型
一致性交点:当网络建立过程遇到一致性交点,或者当捕捉过程产生一致性交点,连通性就不会产生结果。那就是说,连通性只能被建立到连通性节点中的一个节点之上。
调整要素
当在网络建立过程中捕捉要素时,理解在捕捉时几何要素如何调整时十分重要的。在建立几何网络向导中,一个要素类如果被指定为可调整的,那么所有或部分的要素会被自动的调整,而那些没有被指定为可一定的要素就会在网络建立过程中固定不变。
网络建立错误
当从现有简单要素类建立几何网络时,在一些输入的要素类中,或许存在非法的网络几何要素。当产生非法几何要素时,建立过程并不会失败,而会建立“建议”要素作为网络要素,但不会为哪个要素建立网络连通性。假如此种情况发生,在网络建立过程之后,一个警告信息会发出,同时在数据库中产生一个记录错误信息的数据表。
警告信息会报告在每一个非法网络要素类中的总数。错误表的名字可以是: _builder 。网络错误表的结构如下所示:
Field name | Error information |
ErrorID | The ID of the error object |
ClassID | The object class ID of the feature class containing the illegal geometry |
ObjectID | The object ID of the feature with illegal geometry |
ErrorType | The error for this feature |
ArcMap具有利用网络建立错误表来发现非法错误的工具。(看Identifying network build error)。一旦你发现了这些错误,并且修复了他们,你就可以用重建网络连通性工具来为这些要素修复网络连通性了(看 About editing network feaures)。
这个建网错误表只显示在建立网络时具有非法网络几何体的要素。假如你修复这些要素,或者其他要素在被建立在网络中时具有错误,这个错误表是不会更新的。一旦你修复了在这个表中的要素几何体,它就不在需要,并且可以用ArcCatalog删除掉。
在ArcMap中有一些工具和命令帮助你确定和修复网络要素的非法几何实体或不一致的网络连通性。要使用这些工具和命令请看关于编辑网络要素和网络验证工具和命令。
架构锁定
当建立几何网络时,在所有的输入要素类上都需要一个排它锁。假如任何一个要素类具有一个共享锁的话,网络就不会被建立。
如果网络中的任何要素具有共享锁或排它锁存在,这个锁会被传播到网络中的其他要素类上。了解更多的排它锁和构架锁的信息请看地理数据项目。