最近在開發百度地圖時,需要繪制行人行走的軌跡,並在軌跡內使用箭頭表示方向,和我們平常使用百度地圖導航時一樣,能通過箭頭表示人行走的方向。
通過百度地圖API,我們很容易能找到划線的方法Polyline() ,但我們該如何在繪制的線上,展示箭頭方向呢?進一步查看百度地圖API發現IconSequence類,此類用於設置polyline上的符號顯示。
結合百度地圖的API:
因此,我們就可以實現繪制帶箭頭方向的折線。
//創建地圖 var map = new BMap.Map('map'); var point = new BMap.Point(114.065537,22.553321); map.centerAndZoom(point , 13); map.enableScrollWheelZoom(); //坐標點 Points=[ {lng: 114.014, lat: 22.687}, {lng: 114.0143, lat: 22.742}, {lng: 114.09746, lat: 22.745} ] //繪制箭頭及其樣式 var sy = new BMap.Symbol(BMap_Symbol_SHAPE_BACKWARD_OPEN_ARROW, { scale: 0.6,//圖標縮放大小 strokeColor:'#fff',//設置矢量圖標的線填充顏色 strokeWeight: 2,//設置線寬 }); var icons = new BMap.IconSequence(sy, '100%', '10%',false);//設置為true,可以對軌跡進行編輯 //繪制折線以及樣式 var trackLine = new BMap.Polyline(potArr,{ strokeColor:"#18a45b",//設置顏色 strokeWeight:8 ,//寬度 strokeOpacity:0.8,//折線的透明度,取值范圍0 - 1 enableEditing: false,//是否啟用線編輯,默認為false enableClicking: false,//是否響應點擊事件,默認為true icons:[icons] }); map.addOverlay(trackLine);
效果如下圖:
原文鏈接:https://blog.csdn.net/qq_36727756/article/details/89184935