百度点聚合用来解决加载大量点偠素到地图上产生覆盖现象的问题并提高性能。
发布了2 篇原创文章 · 获赞 26 · 访问量 26万+
DCloud 即数字天堂(北京)网络技术有限公司是W3C成员及HTML5中国产业联盟发起单位
百度点聚合用来解决加载大量点偠素到地图上产生覆盖现象的问题并提高性能。
发布了2 篇原创文章 · 获赞 26 · 访问量 26万+
百度的点聚合算法 是基于方格和距离的聚合算法即开始的时候地图上没有任何已知的聚合点,然后遍历所有的点去计算点的外包正方形(由gridSize指定),若此点的外包正方形与现有的聚合点的外包正方形不相交则新建聚合点,若相交就把该点加到该聚合点效果如下图,为了便于查看我们特地把外包囸方形画了出来。
好的笔者开始了作死之旅。上面笔者只是生成了50个随机点
接下来要测试下1000个点,嗯有点小卡但是还能操作,
2000个点我的天,这shit一样的卡顿是什么鬼!!
5000个点好的,完美动也动不了 简直漂亮
10000个点,页面无响应。。。
百度地图 点聚合的部分源码:
以上两个方法就是前文所述的算法的具体实现,
先排除所有不在可视范围的点然后通过比较marker点和聚合点的距离,拿到距离最近的聚合点判断marker点是否在聚合点的外包正方形内;
发布了6 篇原创文章 · 获赞 24 · 访问量 8万+