谷歌地图显示错误的地方

时间:2015-04-27 20:54:23

标签: javascript google-maps

我想在谷歌地图上绘制具有给定坐标的形状。但是当我尝试这种方式时:http://jsfiddle.net/zzhy/4auzbjd5/3/ 它正在绘制它但没有显示在正确的位置。 我该如何解决?

var coordinates = r[0].split(":");

var flightPlanCoordinates = new Array();

var bounds = new google.maps.LatLngBounds();

for(i=0;i<coordinates.length;i++)

{  
  var point =new google.maps.LatLng(coordinates[i].split(',')[0],coordinates[i].split(',')[1]);

  bounds.extend(point);

  flightPlanCoordinates.push(point);   
}   




var flightPath = new google.maps.Polyline({

 path: flightPlanCoordinates,

 geodesic: true,

 strokeColor: '#FF0000',

 strokeOpacity: 1.0,

 strokeWeight: 2

 });



flightPath.setMap(map);

map.fitBounds(bounds);
console.log("flightPlanCoordinates:" + flightPlanCoordinates);
console.log("bounds:" + bounds);

1 个答案:

答案 0 :(得分:1)

因为看起来数组项的顺序是longitude,latitude,但google.maps.LatLng期望latitude,longitude

切换参数的顺序:

var point =new google.maps.LatLng(coordinates[i].split(',')[1],coordinates[i].split(',')[0]);

http://jsfiddle.net/4auzbjd5/4/