经过了繁琐的数字化,最后的工作就是检查错误,拓扑成最后的结果。
如果你的数字化平台是ArcGIS,那倒还是好说,按部就班,数字化完了要么转成Coverage,自然就会生成拓扑,或是导入Geodatebase,在里面用拓扑规则进行拓扑查错,得到最终的结果。
但如果你是在Erdas下进行数字化,后面的拓扑工作还是有点麻烦的。不知为什么,用Erdas自身的拓扑工具进行拓扑总会出错,不知是应为软件本身的问题还是数据不符合要求,无奈之下只能到ArcGIS下面做拓扑。
因为本身在Erdas下面,虽然是Coverage文件,因为你编辑后并没有重新拓扑,所以,如果你直接打开的话,会是乱乱的甚至没有东西,只能是重新拓扑一下,最简单的就是在Catalog里面,在右键菜单里选择属性项,在那里面进行Clean或是Build操作,就会重新生成拓扑,注意,这里有两个选项,一个是容差,即你设置多大的容差值作为拓扑时识别要素是否连接或是相交。如果这个值设置较大,拓扑的结果就会有出现问题,比如有些笨不应相交的线自动相交或是闭合了。所以要酌情输入此值,默认的只有0.6几。还有一个参数就是dangle参数,即悬挂线的长度限制值,解释为长度小于你所输入值的悬挂线都会被删掉。这是很有用的参数,就省得后面你要自己一个个的删除悬挂线了。
或许你认为你已经build或是clean了,并且看起来效果很是不错!但你别被假象迷惑了,你在ArcGIS下面打开你新拓扑好的Coverage属性表,看一下多边形要素的个数,然后你在道Erdas下面,打开属性信息,查看一下label点的个数(因为在Erdas下,每个多边形都对应一个Label点)会发现这两个值不一样!Erdas下Label点的个数要大于ArcGIS下多边形的个数。
问题就来了,为什么会出现这种情况呢?只能解释为有些多边形里有多个Label点!
再次强调一下,这种问题或许只会出现在用Erdas数字化,用ArcGIS进行clean或是build的情况下吧。
那么总要解决问题吧!
首先想到的是在ArcGIS或Erdas里,找到多余的Label点,删掉!但是,那难度无异于大海捞针,只能另想办法。
第二种个办法把Coverage文件保存为Shapefile文件,然后再次转为Coverage文件。
明显第二种方法可行且效率较高,但是我还是像提醒您啊,这儿会出很多问题!
如果你只是在Catalog里面,右键,输出为Coverage或是在ArcMap里转为Coverage,那么,当你在Erdas下查看的时候,只有多边形,Label点没了,并且有重要属性丢失的现象!
那咋办呢?我前面有一篇文章,就是说Shape转Coverage的问题的,答案在那里可以找到!
究其原因,可能问题就出在转换过程,Catalog里面的转换只是转换、clean、转为多边形,但少了在workstation里面的一个命令:createlabels,所以没有Label点。(其实还有更简单的,就是在拓扑完之后,不必转为Shapefile文件,直接进行createlabels重新生成label点就可以了!)
以上只是一家之言,望与同行探讨。