ArcGIS下自定义ETL工具——删除重复点

  手头的一项三维航道管理信息系统任务,在前期阶段有大量的数据处理工作,其中一项是要处理掉航道测量中的水深点里的重复点(位置相同)数据。在做这个工作之前,我想几个常用GIS软件的拓扑检查处理都应该能轻松应对的,实际操作才发现ArcGIS、SuperMap等桌面版都没有针对重复点的拓扑处理,只得另外想办法啦,经网络高人指点,自己摸索了一下,终于弄清楚了ArcMap下自定义Spatial ETL Tool工具删除重复点的工作流程。

  Step1:打开ArcMap,右键点击ArcToolbox的根目录,选择“New Toolbox”项,点击新建一个Toolbox,重命名为HansTools。

  

  Step2:右键点击新建的HansTools工具箱,依次选择>>New>>Spatial ETL Tool菜单项。

  

  Step3:在新建Spatial ETL Tool后,会出现设置向导对话框,设置好输入文件的格式。该工具是一个强大的数据交换平台,支持上百种数据格式的交互,在下拉框中输入文件格式或者点击下拉框后方的按钮打开格式选择对话框选择格式,在输入格式时可以体会下该工具方便易用的智能提示功能。我要处理的原始数据是shape文件,设置如下:

  

  Step4:点击Next按钮,弹出原数据选择对话框,选择原始数据。

  

  Step5:点击Next按钮,弹出目标数据格式选择对话框,设置好对应格式。

  

  Step6:点击Next按钮,在弹出的对话框中直接点击Next,在下一步弹出的对话框中点击Finish按钮,就会弹出Spatial ETL Tool界面,对应FMEWorkbench。图中褐色区域表示原数据,浅黄色区域表示目标数据。

  

  Step7:在原数据与目标数据之间添加数据处理函数。在此分析一下删除重复点的方法:①生成点的坐标,作为一个属性字段。②根据重复属性删除点。这两步骤对应的FME函数分别为CoordinateConcatenator和DuplicateRemover。在Spatial ETL Tool界面左侧的控制面板上选择Gallery面板,打开All根目录,添加CoordinateConcatenator和DuplicateRemover两个函数。分别按下面两幅图设置,设置好后如下方大图所示。

  

  

  Step8:最后,点击Run Translation,设置好目标数据输出路径,稍等片刻,就处理好了。可以在ArcMap中打开原数据与目标数据作对比,效果真不赖!

  可以保存新建的Spatial ETL Tool,对于建好的Spatial ETL Tool也可以加以编辑。关于Spatial ETL Tool关于FME,抽时间在做具体讲述。

  附:本文所述,其应用环境为ArcGIS 9.2版本,版本不同,有少许差别。

posted @ 2010-08-17 22:16  百折不回  阅读(6223)  评论(0编辑  收藏  举报