做数据处理,经常要在各个平台转来转去的。在从一个平台转向另一个平台进行处理的时候,就涉及到数据如何在平台中进行交换的问题了。在平台之间,可以使用如SHP、TAB等数据格式进行数据的流动。在前端与后台,可以通过WKT、WKB、geoJson等数据交换格式进行数据的传递。但在FME中呢? 今天要介绍的转换器,将讲一讲如何通过数据交换格式,实现数据(几何)在FME中进行传递,来更高效的进行数据处理!
拿个小案例来凑个数
这种应该怎么实现,常规做法是这样的: 1、小面转点,点记为A,大面记为B; 2、A与B执行点面叠加,获取B的属性; 3、A属性回挂小面(这里可以用基于空间与属性两种方式回挂); 或者一步到位使用下面的方式: SpatialFilter/SpatialRelator 或者…… 这种方式,如果一个个列下去,还有很多。但这些不是今天介绍的重点!我们言归正传,来使用GeometryExtractor&GeometryReplacer这对转换器来完成上面的这个数据处理。
与回挂属性的方式相比,这可以少好几步的操作尤其在数据量大的时候,效率可以提高不少! 思路: 1、使用GeometryExtractor转换器将面几何提取到属性中(这里采用WKT交换格式); 2、将小面用中心点的几何替换掉; 3、进行空间分析,获取大面属性; 4、使用GeometryReplacer转换器将要素恢复成面。 模板运行概览:
这对转换器用在这个案例中,略显鸡肋,这里只做演示。如果换成从栅格数据中提取信息,就像我很早的时候做的“从DSM中提取建筑物高程”,数据量很大,用这种方式效率极高。
谁用谁知道!
动手试试吧!