我需要在谷歌地图上绘制多条路线。通过googeling我找到了2个解决方案。 1是在一个sepparate DirectionsRenderer对象中创建和渲染每个路径。另一个解决方案(我发现here)建议将多边形存储在一个数组中并一次性绘制出来(这对我来说似乎是一个更好的解决方案)
问题是,我无法找到一种方法来获取地图上的所有多边形。有没有人有关于如何做到这一点的代码片段?
答案 0 :(得分:1)
我正在使用第一个解决方案。这是我的代码。
var map;
var polyGidis;
var polyDonus;
var pozsGidis = [];
var pozsDonus = [];
function init() {
var myOptions = {
zoom: 5,
center: new google.maps.LatLng(39.00, 35.00),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('divMap'), myOptions);
polyGidis = new google.maps.Polyline({ strokeColor: 'black', strokeOpacity: 0.8, strokeWeight: 2, map: map, zIndex: 100 });
polyDonus = new google.maps.Polyline({ strokeColor: 'red', strokeOpacity: 0.8, strokeWeight: 6, map: map, zIndex: 80 });
var polyPathGidis = polyGidis.getPath();
var polyPathDonus = polyDonus.getPath();
for (var i = 0; i < pozsGidis.length; i++) {
polyPathGidis.push(new google.maps.LatLng(pozsGidis[i].lat, pozsGidis[i].lng));
}
for (var i = 0; i < pozsDonus.length; i++) {
polyPathDonus.push(new google.maps.LatLng(pozsDonus[i].lat, pozsDonus[i].lng));
}
}