I'm trying to loop through some sets of coordinates to plot vectors on a Google map but can't seem to get the syntax right in order to pul the coords in:
var buildingCoords1 = [
new google.maps.LatLng(51.49609,-0.27609),
new google.maps.LatLng(51.49604,-0.27502),
new google.maps.LatLng(51.49586,-0.27504),
new google.maps.LatLng(51.49588,-0.27533),
new google.maps.LatLng(51.49563,-0.27537),
new google.maps.LatLng(51.49568,-0.2764),
new google.maps.LatLng(51.49585,-0.27637),
new google.maps.LatLng(51.49584,-0.27613)
];
var buildingCoords2 = [
new google.maps.LatLng(51.49548,-0.27586),
new google.maps.LatLng(51.49504,-0.27593),
new google.maps.LatLng(51.4951,-0.27701),
new google.maps.LatLng(51.49555,-0.27695)
];
// plot and add listeners to buildings 1 through 2
var buildings = [];
for (i = 1; i < 3; i++) {
buildings[i] = new google.maps.Polygon({
paths: buildingCoords[i],
strokeColor: '#fccf25',
strokeOpacity: 0.8,
strokeWeight: 1,
fillColor: '#fccf25',
fillOpacity: 0.35
});
buildings[i].setMap(map);
} //end for
It seams to me that the line paths: buildingCoords[i] should work, it correctly gets the first set if I change it to paths: buildingCoords1. The error message I'm getting is
Uncaught ReferenceError: buildingCoords is not defined
How can I correctly append the 'i' variable to get my coordinates.?
Many thanks
var data = {"buildingCoords1": [...], "buildingCoords2": [...]};->data["buildingCoords" + i]buildingCoords, so I'm not sure why you expect that to work. You definedbuildingCoords1andbuildingCoords2, notbuildingCoords. Also, off-topic, note some poor indentation, missing semi-colons and trailing commas in the array definitions.