高德地图大批量数据(上万)画历史轨迹实现方案

转载请注明出处:https://www.cnblogs.com/Joanna-Yan/p/9896180.html 

需求:设备传回服务器的轨迹点,需要在web地图上显示。包括画坐标点覆盖物、轨迹路线图。当数据量达到一定量时,界面出现卡顿。问题出现几天前端人员都未解决。

第一反应,大量的覆盖物肯定不能直接添加在地图上。每一个地图对象或者图层能添加的覆盖物对象都是有限的,资源也是有限的。

能否通过创建多个图层去画覆盖物,同时根据地图的缩放级别来动态添加和减少覆盖物的数量。

好了,研究高德地图api。

1.首先找到一个海量点展示组建PointSimplifier。可以在地图上展示数量为十万以内的点并且性能表现较好,这点正好符合我们的需求。

它实际上是由海量点组成的一个地图图层,这点符合前面我们说的解决思路。

2.找到一个轨迹展示组建PathSimplifier 。同理上。

既然两个组建都可以支持大量数据,并且自动创建图层,那么我们完全可以把PointSimplifier和PathSimplifier通过图层叠加起来使用,分别实现我们的画点和画轨迹的需求。

先看效果图:

高德地图大批量数据(上万)画历史轨迹实现方案_第1张图片

模拟上万点,地图随意缩放、移动不会出现卡顿问题。性能表现良好。

简单示例代码如下,自行根据需要优化:





    
    
    
    
    动态改样式
    


    

如果此文对您有帮助,微信打赏我一下吧~

高德地图大批量数据(上万)画历史轨迹实现方案_第2张图片

 

你可能感兴趣的:(高德地图大批量数据(上万)画历史轨迹实现方案)