turf:利用bezierSpline()方法平滑轨迹线
2019-01-10 本文已影响4人
gis杭州
轨迹回放在gis项目需求中比较常见。通常是获取轨迹线遍历线段中的点位(或者webservice推送点位),对其设置位置,达到播放效果。轨迹点位采集一般有固定的采集频率,比如10秒上报一次。
采集频率越高,数据量越大,存储压力也越大,轨迹也越真实。
与此同时,采集频率底,存储数据量小,轨迹就会出现 "跳直线" 的情况。
如下图,汽车经过隧道时,gps数据无法被采集,轨迹连接线不能反应真实轨迹。
![](https://img.haomeiwen.com/i9628812/7b4789b088c43bc5.png)
在项目中,对于这类采集数据较少的轨迹,可以使用turf提供的bezierSpline()方法平滑轨迹线。
![](https://img.haomeiwen.com/i9628812/5cd510427fe52f26.png)
传入原始轨迹线,通过可选参数设置,可以控制生成点位数量以及线段平滑程度。
![](https://img.haomeiwen.com/i9628812/61ee9698b6401ed0.gif)