利用大数据计算做空间分析与运算,提供缓冲区分析、叠加分析、裁剪、合并等空间分析与运算接口和调用示例。
1、缓冲区建立
任务要求:利用大数据计算,对大数据库中存储的点、线、面等空间数据,自动建立其周围一定宽度范围内的缓冲区多边形图层
解决方案:
- 以符合GeoJson数据格式的空间空间要素字符串为输入对象
- 将GeoJson字符串进行切分,并判断每一个GeoJson字符串属于什么图形要素类型(点/线/面),根据图形要素类型建立Geometry类型要素(Point、MultiPoint、Polyline、Polygon),将产生的所有Geometry类型要素放在一个list集合,将List<Geometry>及缓冲区半径传入缓冲区建立函数CreateBuffer
- 在CreateBuffer函数中,由List<Geometry>形成RDD,RDD内元素为Geometry类型要素
- 使用map算子对上一步RDD每一个Geometry类型要素进行缓冲区建立,map算子中使用逻辑函数CreatBuffer
- 在map算子中对每一个Geometry类型要素传入变量都返回一个GeoJson要素字符串
- 将RDD使用动作算子collect形成List<String>返回
2、缓冲区分析
任务要求&