1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
//初始化地图添加实时移动的车辆 addVehicle(data){ var hasVehicle = false;//没有实时行驶的车辆 //循环marker图层 this.markerList.forEach(item=>{ this.map.setZoomAndCenter(15, item.getPosition()); //如果id相同是当前车辆 if (item.getExtData().id === data.vehicleId) { hasVehicle = true; if (item.getExtData().id === data.vehicleId) { hasVehicle = true; if (item.getExtData().time !== data.time) { item.getExtData().time = data.time; let hea = Math.round(data.hea);
item.setContent('<div class="iwrap">' + '<span class="textW">' + item.getExtData().vehicleNum + '</span>'+ '<img src="/monitor/static/img/car_icon.png" alt="" >' + '</div>') //车头可以拐弯 hea 角度 item.setContent(item.getContent().replace(/rotate\((\w)*\)/, 'rotate(' + hea + 'deg)')) if (this.carList.length != 0) { if (item.getExtData().SN == this.carList[this.carList.length - 1]) { item.moveTo([data.lon, data.lat], (item.getPosition().distance([data.lon, data.lat])) * 1.6) } else { item.moveTo([data.lon, data.lat], (item.getPosition().distance([data.lon, data.lat])) * 1.6) } }else { item.moveTo([data.lon, data.lat], (item.getPosition().distance([data.lon, data.lat])) * 1.6) } } } } }) if (!hasVehicle) { let vehicleId = data.vehicleId;//车辆id let vehicleNum = data.vehicleNum; let vehicleStatus = 0 //车辆状态 var html = '<div class="iwrap">' + '<span class="textW">' + vehicleNum + '</span>'+ '<img src="/monitor/static/img/car_icon.png" alt="" >' + '</div>' var testMark = new AMap.Marker({ position: [data.lon, data.lat], content: html, offset: new AMap.Pixel(0, -72), extData: { id: vehicleId, vehicleNum: vehicleNum, selectStatus: vehicleStatus, currentSpd: data.spd, SN: data.deviceSn, time: data.time, data:data, emergencyStatus: data.emergencyStatus } }); this.markerList.push(testMark); this.map.add(testMark); }
}
|