百度地圖api只提供了左下角和右上角兩個(gè)坐標(biāo),左上角坐標(biāo)和右下角坐標(biāo)需要自己操作獲取,方法如下:
? ? ? ? 地圖自帶獲取坐標(biāo)的方法:
var bounds = map.getBounds(); //獲取地圖可視區(qū)域
//左下
? ? ? ? var sw = bounds.getSouthWest(); //獲取西南角的經(jīng)緯度(左下角)
//右上
? ? ? ? var ne = bounds.getNorthEast(); //獲取東北角的經(jīng)緯度(右上角)
根據(jù)地圖自帶坐標(biāo)(左下和右上)獲取剩下兩個(gè)角(左上和右下)坐標(biāo):
//其實(shí)很簡(jiǎn)單,就是拿左下角的經(jīng)度加上右上角的維度就是左上角的坐標(biāo)
//這里取的是sw的經(jīng)度和ne的維度(3D地圖可直接賦值)
//左上
var wn = new BMap.Point(sw.lng, ne.lat);
//其實(shí)很簡(jiǎn)單,就是拿右上角的經(jīng)度加上左下角的維度就是右下角的坐標(biāo)
//這里取的是ne的經(jīng)度和sw的維度(3D地圖可直接賦值)
//右下
? ? ? ? var es = new BMap.Point(ne.lng, sw.lat);
然后在地圖上添加監(jiān)聽(tīng)事件,
這樣用戶在拖拽或縮放地圖時(shí)也可以獲取到地圖可視區(qū)域的四角坐標(biāo):
//圖添拖拽事件
this.map.addEventListener("dragend", (e) => {
//執(zhí)行事件
});
//地圖縮放事件
this.map.addEventListener("zoomend", (e) => {
//執(zhí)行事件
});
創(chuàng)作不易,感覺(jué)有用就一鍵三連,感謝(●'?'●)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-505727.html
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-505727.html
到了這里,關(guān)于vue使用百度地圖獲取可視區(qū)域四角坐標(biāo)(百度地圖四角坐標(biāo),百度地圖3D可視區(qū)域四角坐標(biāo))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!