百度地图根据地址解析经纬度,点击获取地址及经纬度。

本文介绍了地址解析和逆解析的概念及其在地图应用中的使用。通过BMap.Geocoder类库,实现了将地址转化为经纬度坐标,并在地图上进行定位;同时,通过监听地图点击事件,实现了根据经纬度反向解析出详细地址,包括省份、城市、地区、街道和门牌号。需要注意的是,只有地图上的POI点才能获取到门牌号信息。
摘要由CSDN通过智能技术生成
地址解析

地址解析的含义其实就是,根据地址来解析到对应的位置,也就是地图上的经纬度。另外对应的还有一个名此处是 地址逆解析,也就是根据经纬度数值,来解析所处的地址。

地址解析的类库是根据:BMap.Geocoder

function geoCode(){
    var myGeo = new BMap.Geocoder();
    let address = "合肥市马鞍山路合肥工业大学"
    myGeo.getPoint(address,function (point) {
        if(point){
            map.centerAndZoom(point,16);
            map.addOverlay(new BMap.Marker(point));
            console.log("X:" + point.lng + ",Y:"+point.lat);
            alert(point);
        }
    });
};

效果如下:在这里插入图片描述


地址逆解析

这里对地图点击事件添加新的逻辑,点击后根据鼠标所在的经纬度,得到该点所在的省份、城市、地区、街道、门牌号。
不过查看了一下,只有那些地图上的POI点,才能获取到门牌号,其它的获取不到门牌号,只能获取到街道。

function geoDecode() {
    var geoc = new BMap.Geocoder();
    map.addEventListener("click",function (e) {
        var pt = e.point;
        geoc.getLocation(pt,function (rs) {
            var addComp = rs.addressComponents;
            let address = addComp.province + "," + addComp.city + "," + addComp.district + "," + addComp.street + "," + addComp.streetNumber;
            alert(address);
        })
    });
}

效果如下:在这里插入图片描述

转载: 原创地址:https://www.cnblogs.com/googlegis/p/14684892.html.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值