Openlayers 实现点位聚合

getMapData()
function getMapData(){
    RequestGet(SYSTEM_CONFIG.SERVER.LOCAL+'data/testData.json').then(res=>{
        if(res.success) {
            const plantMarkerList = res.data.items
            setTimeout(()=>{
                setCluster(plantMarkerList)
            },2000)
            mapRef.value.on('click',evt=>{
                // const coordinate = ol.proj.transform(evt.coordinate, 'EPSG:3857', 'EPSG:4326')
                let mouse = evt.coordinate // 鼠标点击的坐标位置
                const feature = mapRef.value.forEachFeatureAtPixel(evt.pixel, function(feature) {
                    return feature;
                });
                if (feature) {
                    console.log(feature, 'feature');
                    // 获取count属性
                    const count = feature.get('count');
                    // 聚合点--放大地图层级
                    if (count > 1) {
                        const czoom = mapRef.value.getView().getZoom();
                        mapRef.value.getView().animate({
                            center: evt.coordinate,
                            zoom: czoom + 1
                        });
                        // 具体点位
                    } else {
                        const custom = feature.get('features')[0].get('attribute');
                        if (custom) { // 如果是点击了坐标点
                            // 显示弹出窗口
                            popShow.value = true

                            const object={
                                '名称':custom.dwmc,
                                '年末职工人数':custom.zdmj,
                                '专业技术技能人员数':custom.zyjsjnrys,
                                '年末在院人数':custom.nmzyrs,
                                '机构管理人员数':custo
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值