var self = this;
map = new BMap.Map("map");
var cityName = '广东省';
var point = new BMap.Point(113.2759952545166,23.117055306224895);
map.setMapStyle({style:'midnight'});
map.centerAndZoom(point, 9); // 初始化地图,设置中心点坐标和地图级别。 map.addControl(new BMap.ScaleControl());
var ctrl = new BMapLib.TrafficControl({
showPanel: true //是否显示路况提示面板
});
map.addControl(ctrl);
ctrl.setAnchor(BMAP_ANCHOR_BOTTOM_RIGHT);
map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件
map.enableScrollWheelZoom();
// map.addControl(new BMap.NavigationControl({ type: BMAP_NAVIGATION_CONTROL_LARGE ,anchor: BMAP_ANCHOR_TOP_LEFT, offset: new BMap.Size(40, 250)}));
var bdary = new BMap.Boundary();
bdary.get(cityName, function (rs) { //获取行政区域
// console.log(rs.boundaries[2])
// map.clearOverlays(); //清除地图覆盖物
//for循环都删除掉了,只剩下这个
//网上查了下,东西经南北纬的范围
var EN_JW = "180, 90;"; //东北角
var NW_JW = "-180, 90;"; //西北角
var WS_JW = "-180, -90;"; //西南角
var SE_JW = "180, -90;"; //东南角
//4.添加环形遮罩层
var ply1 = new BMap.Polygon(rs.boundaries[2]+ SE_JW + SE_JW + WS_JW + NW_JW + EN_JW + SE_JW, { strokeColor: "none", fillColor: "#051c33", fillOpacity:1, strokeOpacity: 0.5 }); //建立多边形覆盖物
map.addOverlay(ply1);
//5. 给目标行政区划添加边框,其实就是给目标行政区划添加一个没有填充物的遮罩层
var ply = new BMap.Polygon(rs.boundaries[0], { strokeWeight: 2, strokeColor: "#051c33",fillColor: "#051c33" });
map.addOverlay(ply);
//map.setViewport(ply.getPath()); //调整视野
});
$('#tcClose').click();
setTimeout(function(){
//显示路况后删除路况面板
$('#tcWrap').remove()
},500);
开启路况,有锯齿,很难看
1,路况数据回来的是栅格瓦片,线路像素化严重很正常;
2,路况本来也不是给黑暗版地图风格用的,可以考虑将路况瓦片的白色描边换成深色的也许效果会好些。至于怎么换,用个代理可能不是个好方案,暂时也没有太好的思路。