arcgs api覆盖物动态聚合的实现(附源码)

这是arcgis api for javascript官方的覆盖物聚合文档:
http://jshelp.thinkgis.cn/jssamples/layers_point_clustering.html

但是这个官方提供的文档有两个缺陷:
1、聚合效果不是动态的,所有的覆盖物必须在页面启动时加载进来,而后面新增的覆盖物无法参与聚合。
2、代码比较复杂,我也是看了半天才看懂了大概。

虽然跟实际的需求有出入,但思路还是有的,我按照它的部分思路,又封一个js类:

//map:地图  marks:覆盖物数组  tolerance:覆盖物聚合距离,单位像素
function MarkCluster(map,marks,tolerance)

有了它,只需要适当的时候调用这2个接口,即可轻松完成聚合效果:
autoCluster :当地图放大缩小时自动完成聚合操作,调用时机:对象创建后立即调用
layerRefresh:立即刷新一次聚合操作,调用时机:新增覆盖物之后

话不多说,先看看效果:
这里写图片描述

狂点一波左下角的按钮之后:
这里写图片描述

可以看到,新加进来的覆盖物也参与了聚合。

源码奉上,注释应该比较详细了:
https://download.youkuaiyun.com/download/u010021282/10482901

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值