我有一个脚本,它从html获取数据,并使用它来绘制地图上的路线。我正在尝试让它走所有的路线,并缩放以显示所有路线。代码如下:
var ombounds = new google.maps.LatLngBounds(); //bounds
for (var r=1; $("#master-master > div").length; r++)
{
// Add a placemark at the start of each route
var placemark_id = "#master-" + r + " > #placemarks-data > #placemark-0";
var markerParameters = {};
markerParameters.index = r-1;
markerParameters.total = $(placemark_id + " > .total").html();
markerParameters.mapData = $(placemark_id + " > .map").html();
markerParameters.instructionsData = $("#master-" + r + " > #snippet").html();
markerParameters.distanceData = $("#master-" + r + " > #distance").html();
markerParameters.durationData = $("#master-" + r + " > #duration").html();
markerParameters.titleData = $("#master-" + r + " > #title").html();
markerParameters.urltitleData = $("#master-" + r + " > #url-title").html();
markerParameters.imageData = $(placemark_id + " > .image").html();
$.OverMap.addMarker(markerParameters);
// Draw route
var points = new Array();
var pointsData = [];
var pointsData = $('#master-' + r + ' > #route-data').html();
if (pointsData != '')
{
var pointsArray = JSON.parse(pointsData);
for (var p=0; p<pointsArray.length; p++) {
var pt = new google.maps.LatLng(pointsArray[p][0], pointsArray[p][1]);
points.push(pt);
ombounds.extend(pt); //bounds
}
$.OverMap.drawRoute(points);
}
else $.OverMap.drawDirections({preserveViewport:false});
}
(map.getBounds()); //bounds
map.fitBounds(ombounds); //bounds由于某些原因,map.fitBounds(Ombound)什么也不做。代码仍然绘制路线,但是我看不到边界相关的函数在做什么。我已经为所有与缩放相关的行添加了//边界-目前,它们对代码的输出没有明显的影响。有人知道我哪里错了吗?
发布于 2013-09-24 02:01:08
当directions服务的preserveViewport选项设置为false时,对DirectionsRenderer的每次调用都将根据其结果缩放地图并使其居中。如果您希望fitBounds覆盖它,则需要将其设置为true。
https://stackoverflow.com/questions/18965514
复制相似问题