我正在创建一个使用GoogleMapsAPI在Google地图上渲染多个多边形的网络应用程序。
var polyCoords = [];
function initMap(){
var loc = {lat:23, lng:90};
var polyArr = [{coords : coordsof P1, weight: weight of P1}, ..... , {coords of Pn}];
map = new google.maps.Map(
document.getElementById('map'), {
zoom : 11,
center : loc
});
for (var poly in polyArr){
var gridPoly = new google.maps.Polygon({
paths : polyArr[poly].coords,
strokeColor : "#FF0000",
strokeOpacity : 0.8,
strokeWeight : 2,
fillColor : "#FF0000",
fillOpacity : 0.10
});
gridPoly.setMap(map);
polyCoords[grid] = gridPoly; // polyCoords.push(gridPoly);
}
}
上面的代码正确地显示了地图。但是,我有一个HTML滑块,它为我提供了一个值,我根据polyArr
变量中的权重值来过滤。现在我想更改已滤除多边形的strokeColor
。
function updateStroke(filterIndex){
polyCoors[filterIndex].strokeColor = '#000000';
polyCoors[filterIndex].setMap(map);
}
这似乎不起作用。
答案 0 :(得分:2)
尝试以下方法:
polyCoors[filterIndex].setOptions({strokeColor: '#000000'})
有关详细信息,请访问PolygonOptions文档https://developers.google.com/maps/documentation/javascript/reference#PolygonOptions
希望有用!