提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
任务来源
从矿管部门得来的矿业权台账是excel,坐标是这样的(数据已经处理过,不是真实的数据):
1,4,1,2913910.390,36455171.080,2,2914769.590,36457310.190,3,2910982.070,36450101.470,4,2916910.350,36452892.330,0,0,1
一、数据分析
没有拿到权威的数据格式说明,都是猜想的,1代表地块编号,有的一个矿业权有几个地块,一般只有一个地块。4代表该地块的界址点数量。0,0,1不知道啥意思,有时候会有开采深度。29开头是高斯投影的X坐标,36开头的是36度带的Y坐标。
二、FME模板编写
1.数据清洗

主要使用正则表达式把前面的1,4和尾巴的0,0,,1去掉


有些在坐标及点号之间没有逗号用空格代替,所以需要去恢复逗号来代替空格,\s是匹配空格。

2.提取X和Y
把XY以一个点为单位整体提取,暴露出来,再按逗号分隔来分成点号、X和Y,在建立对应字段来存放,Y值后面在做投影的时候需要用到里面的带号。


3.生成图形
先生成点、再连线、再闭合成面,有些首末点相同的自动闭合。注意有些数据不规范,点的顺序错乱,需要加个sorter基于点号来排序再连线。注意生成的X和Y是跟高斯投影里的相反。

4.投影、整理

总结
这个模板主要用到的就是StringReplacer转换器实现提取指定内容的功能;AttributeSplitter转换器基于指定分隔符来分隔内容。另外一个非常重要的就是使用正则表达式,太强大。每次使用都发现新的功能。要实现同一个功能会有很多种方法实现,不会写正则表达式的可以搜索一下,后面慢慢就会了。
本文介绍了一篇关于通过FME模板处理矿业权台账数据的过程,包括数据分析、数据清洗、坐标提取、图形生成及投影整理。作者强调了正则表达式在数据处理中的重要作用,并分享了在FME中实现相同功能的不同方法。
1460

被折叠的 条评论
为什么被折叠?



