此篇以百度地圖為例
?1、去高德地圖注冊自己的key(注冊流程可借鑒百度地圖注冊流程)
2、什么是坐標
-
地球坐標系——WGS84:常見于?GPS?設(shè)備,Google?地圖等國際標準的坐標體系。
-
火星坐標系——GCJ-02:中國國內(nèi)使用的被強制加密后的坐標體系,高德坐標就屬于該種坐標體系。
-
百度坐標系——BD-09:百度地圖所使用的坐標體系,是在火星坐標系的基礎(chǔ)上又進行了一次加密處理
3、坐標系轉(zhuǎn)
為什么做圖標轉(zhuǎn)化,我們在接口處獲取的坐標(經(jīng)緯度)可能是GPS傳入的,也可能是其他項目中使用的其他地圖系獲取的坐標,例如百度地圖,騰訊地圖等。這些放到不同的地圖中會有偏差。導致精度不準。所以我們需要將坐標轉(zhuǎn)化為我們當前使用地圖所契合的經(jīng)緯度。
1.在高德地圖中使用 高德地圖JS文檔中的 API ——? ?AMap.convertFrom() 來進行坐標轉(zhuǎn)化
//經(jīng)緯度轉(zhuǎn)化 // 參數(shù)說明:需要轉(zhuǎn)換的坐標,需要轉(zhuǎn)換的坐標類型,轉(zhuǎn)換成功后的回調(diào)函數(shù) AMap.convertFrom( [that.comlng, that.comlat], "baidu",//這個填寫的是 需要轉(zhuǎn)化的坐標及類型 此處填寫的是baidu就是轉(zhuǎn)化百度坐標,此值可選三個【gps:GPS基礎(chǔ)坐標】、【baidu:百度地圖坐標】、【mapbar:圖吧坐標】
function (status, result) { if (result.info === "ok") { that.gaodeMaplng = result.locations[0].lng; that.gaodeMaplat = result.locations[0].lat; // console.log(result.locations[0]); // 構(gòu)造點標記 var marker = new AMap.Marker({ label: { content: `${that.compText}` }, icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png", position: [result.locations[0].lng, result.locations[0].lat], anchor: "bottom-center", }); // 構(gòu)造矢量圓形 var circle = new AMap.Circle({ center: new AMap.LngLat( `${result.locations[0].lng}`, `${result.locations[0].lat}` ), // 圓心位置 radius: 1000, //半徑 strokeColor: "rgb(253,221,155)", //線顏色 strokeOpacity: 1, //線透明度 strokeWeight: 3, //線粗細度 fillColor: "rgb(253,221,155)", //填充顏色 fillOpacity: 0.35, //填充透明度 }); // 將以上覆蓋物添加到地圖上 // add方法可以傳入一個覆蓋物數(shù)組,將點標記和矢量圓同時添加到地圖上 map.add(marker); map.add(circle); } } );
前半段是對傳入經(jīng)緯度進行處理,后續(xù)轉(zhuǎn)化成功后可搭配構(gòu)造點標記,連線,構(gòu)造矢量圖形等來展示地圖文章來源:http://www.zghlxwxcb.cn/news/detail-710760.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-710760.html
到了這里,關(guān)于高德地圖 其他地圖坐標系轉(zhuǎn)化為高德坐標系的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!