0
我試圖將KMLLayer並排放置兩張地圖。我已經能夠得到地圖出現,但他們都使用相同的中心經緯度,即緯度/長度不被用於第二張地圖。我想放大第一張地圖35.04,-120.56的左下角以顯示更多細節。我如何居中/放大第二張地圖?將具有相同的地圖W/KML兩次放置在具有不同中心和縮放的頁面上
我是新來的小提琴 - 希望工程: http://jsfiddle.net/BobH_SLOAPCD/d427zc46/4/
地圖腳本
function initialize() {
var myLatlng = new google.maps.LatLng(35.3, -120.3);
var mapOptions = {
maxZoom: 12,
minZoom: 7,
center: myLatlng,
preserveViewport: true
};
var map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
var kmlLayer = new google.maps.KmlLayer({
url: 'http://www.slocleanair.org/air/AQI_III/AQI_2015_yy_yy.kml',
suppressInfoWindows: true,
map: map
});
var myLatlng2 = new google.maps.LatLng(34.9, -120.5);
var mapOptions2 = {
maxZoom: 18,
minZoom: 8,
zoom: 9,
center: myLatlng2,
preserveViewport: true
};
var map2 = new google.maps.Map(document.getElementById('map-canvas2'),
mapOptions2);
var kmlLayer2 = new google.maps.KmlLayer({
url: 'http://www.slocleanair.org/air/AQI_III/AQI_2015_yy_yy.kml',
suppressInfoWindows: true,
map: map2
});
}
initialize();
HTML:
<script src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
<p>Test KML Layers</p>
<div id="map-canvas"></div>
<div id="map-canvas2"></div>
CSS
#map-canvas {
width: 260px;
height: 180px;
padding: 10px;
border: 2px solid #999;
float:left;
}
#map-canvas2 {
width: 260px;
height: 180px;
padding: 10px;
border: 2px solid #999;
謝謝!有沒有辦法「縮放」到7.5?我做了一個GetBounds()((35.03904360033429,-121.31006804474668), (35.71088896142096,-120.21143523224668)),但我沒有看到SetBounds()的方法。 – rheitzman 2015-02-13 17:15:21
沒有。縮放級別是整數。我不明白你的意思,因爲沒有看到設置邊界的方法,該方法稱爲fitBounds()。 – geocodezip 2015-02-13 18:33:41
如果我顯示完整的範圍,fitBounds()可能會工作 - 不確定,因爲我認爲fitBounds()可能會選擇不剪切地圖的縮放級別。我正在考慮的情況是我的第二張地圖放大到完整地圖的一部分。我想不要限制在中心+縮放級別 - 考慮到平鋪服務器的性質,可能不太實際。只是想我猜。不重要。 – rheitzman 2015-02-13 22:07:28