js实现百度地图同时显示多个路书效果(3)

function speedtest(pointArray,row){//根据自行车的借还时间差来显示不同的路书速度(待完善) var distance = 0;//直行车走过的路径长度 for(var i = 0; i < pointArray[row].length-1; i++){ distance += (map.getDistance(pointArray[row][i],pointArray[row][i+1]));//自行车借还站点的路径长度 } return distance/20;//速度=路径长度/时间(此处时间固定,可改为根据数据库读取的时间) } // function polylinetest(pointArray,row,stationlonlist,stationlatlist){ var points = new Array(); for(var i = 0; i < pointArray[row].length; i++){ points[i] = new BMap.Point(parseFloat(stationlonlist[row][i]), parseFloat(stationlatlist[row][i])); } //增加点与点之间的连线 var polyline = new BMap.Polyline(points, { strokeColor : getColor(), strokeWeight : 2, strokeOpacity : 0.5 }); // 创建折线 map.addOverlay(polyline); // 绘制折线 } // function lushutest(pointArray,bikespeedtest,row,stationlonlist,stationlatlist){ var points = new Array(); for(var i = 0; i < pointArray[row].length; i++){ points[i] = new BMap.Point(parseFloat(stationlonlist[row][i]), parseFloat(stationlatlist[row][i])); } var lushu = new BMapLib.LuShu(map, points, { defaultContent : "", autoView : true, // 是否开启自动视野调整,如果开启那么路书在运动过程中会根据视野自动调整 icon : new BMap.Icon('photo/bike.png', new BMap.Size(22, 22), { anchor : new BMap.Size(10, 25) }), // enableRotation: true, //是否设置marker随着道路的走向进行旋转 speed : bikespeedtest, }); lushu.start(); } //生成折线的随机颜色 function sj16(){ var sjshu=Math.round(Math.random()*10*2); do { sjshu=Math.round(Math.random()*10*2); }while (sjshu>=14); return sjshu; } function getColor(){ var hex = ['1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F']; var yanse=""; for(i=0; i<6; i++){ yanse+=hex[sj16()]; } return "#"+yanse }

效果图:

js实现百度地图同时显示多个路书效果

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzjxjf.html