使用百度map api提供的groundOverlay来实现简单的老地图添加与删除。首先需要一张老沈阳地图。
<input type="button" οnclick="addGroundOverlay();" value="添加老地图" />
<input type="button" οnclick="removeGroundOverlay();" value="删除老地图" />
/*
* 添加ground叠加层
*/
// 西南角和东北角
var SW = new BMap.Point(123.3802330000,41.7871740000);
var NE = new BMap.Point(123.4931860000,41.8386810000);
var groundOverlayOptions = {
opacity: 0.5,//设置透明度
displayOnMinLevel: 11,
displayOnMaxLevel: 18
};
//初始化GroundOverlay
groundOverlay = new BMap.GroundOverlay(new BMap.Bounds(SW, NE), groundOverlayOptions);
groundOverlay.setImageURL("http://127.0.0.1/gisproject/public/Images/home/1936.png");
function addGroundOverlay() {
// 添加GroundOverlay
map.addOverlay(groundOverlay);
}
function removeGroundOverlay() {
// 移除GroundOverlay
map.removeOverlay(groundOverlay);
}
通过多次尝试设置SW和NE,终于比较合适地将老地图匹配到了电子地图上。这种方式的显示效果很大程度上取决于老地图的精确程度。我选用的这张老沈阳地图还是比较精确的。
添加效果如图所示: