Maps API 帶有一套可在地圖中使用的內(nèi)置控件:
縮放控件:顯示“+”和“-”按鈕,用于更改地圖的縮放比例。此控件默認(rèn)顯示在地圖右下角。
地圖類型控件:具有下拉菜單和水平按鈕欄兩種樣式可供選擇,讓用戶能夠選擇地圖類型。此控件默認(rèn)顯示在地圖左上角。
比例控件:用于顯示地圖比例元素。此控件默認(rèn)處于禁用狀態(tài)。
添加或者刪除控件
通過設(shè)置 true/false 來設(shè)置各種控件的開關(guān)
在初始化地圖的時(shí)候使用如下方法可以實(shí)現(xiàn)控件的刪除和添加:
var map;
//自定義地圖
function BigeMap() {}
//地圖下屬瓦片大小
BigeMap.prototype.tileSize = new google.maps.Size(256, 256);
//地圖最大級別
BigeMap.prototype.maxZoom = 19;
//地圖最小級別
BigeMap.prototype.minZoom = 4;
//地圖名稱
BigeMap.prototype.name = "谷歌在線地圖";
//此地圖種類獲取URL的地址
BigeMap.prototype.getTile = function (coord, zoom, ownerDocument) {
var img = ownerDocument.createElement("img");
img.style.width = this.tileSize.width + "px";
img.style.height = this.tileSize.height + "px";
//這里使用谷歌在線的數(shù)據(jù),當(dāng)然您也可以使用Bigemap地圖下載器下載的離線瓦片作為此處的地址
var strURL = 'http://mt0.google.cn/vt/lyrs=m@365000000&hl=zh-CN&gl=cn&x=' + coord.x + '&y=' + coord.y + '&z=' + zoom + '&s=Galil';
img.src = strURL;
return img;
};
var google_map = new BigeMap();
var offline_map=new BigeMap();
offline_map.name='離線地圖';
offline_map.getTile=function (coord,zoom,ownerDocument) {
var img = ownerDocument.createElement("img");
img.style.width = this.tileSize.width + "px";
img.style.height = this.tileSize.height + "px";
//這里使用Bigemap地圖下載器下載的離線瓦片作為此處的地址
var strURL = './tiles/' + coord.x + '/' + coord.y + '/' + zoom+'.png';
img.src = strURL;
return img;
};
var myOptions = {
//設(shè)置中心點(diǎn)
center: new google.maps.LatLng(30.54024807, 104.06966686),
//默認(rèn)顯示級別
zoom: 4,
zoomControl: true,//縮放控件
mapTypeControl: true,//地圖類型控件
scaleControl: true, //比例控件
streetViewControl: false, //是否顯示街景 因?yàn)榇蟛糠质请x線,所以不需要顯示
mapTypeControlOptions: {
mapTypeIds: ['google_map','google_offline','abc'],
//位置在右上角
position:google.maps.ControlPosition.TOP_RIGHT,
//樣式為下拉樣式
style:google.maps.MapTypeControlStyle.DROPDOWN_MENU,
}
};
//初始化map對象
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
//向map對象中添加離線地圖
map.mapTypes.set('google_offline',offline_map);
//向map對象中添加在線地圖
map.mapTypes.set('google_map', google_map);
//設(shè)置map對象默認(rèn)顯示 google 在地圖
map.setMapTypeId('google_map');