2011-06-03 50 views
2
directionsService.route (request, 
          function (result, status) 
          { 
           alert(status); 
           if (status == google.maps.DirectionsStatus.OK) 
           { 
            directionsDisplay.setDirections (result); 

            pointsArray = result.routes[0].overview_path; 

的問題是,所述* result.routes [0] .overview_path; *返回'google.maps.LatLng'類型的陣列。即每個元素都是該數組中類「google.maps.LatLng」的「對象」。如何從類「google.maps.LatLng」的對象中提取緯度和經度值?

我想將所有返回的緯度和經度寫在文本文件上。

如何從類的對象提取的個人「的緯度和經度」值「google.maps.LatLng

回答

6

http://code.google.com/apis/maps/documentation/javascript/reference.html#LatLng

上述連桿包含兩個方法:lat()lng()和其解決這個問題。
爲同一代碼如下:

function displayRoute() 
    { 
     var start = arrayMarkers [0]; 
     var end = arrayMarkers [1]; 

     var request = { 
        origin:start, 
        destination:end, 
        travelMode:google.maps.TravelMode.DRIVING 
        }; 

     directionsService.route (request, function (result, status) 
     { 
      if (status == google.maps.DirectionsStatus.OK) 
      { 
       directionsDisplay.setDirections (result); 
       pointsArray = result.routes[0].overview_path; 

       var i = 0; 
       var j = 0; 

       for (j = 0; j < pointsArray.length; j++) 
       { 
        arrayToBeReturned [i] = pointsArray[j].lat(); 
        i++; 
        arrayToBeReturned [i] = pointsArray[j].lng(); 
        i++; 

        var point1 = new google.maps.Marker ({ 
                position:pointsArray [j], 
                draggable:false, 
                map:map, 
                flat:true 
                }); 
       } 
      } 
     }); 
    } 
+1

我需要同樣的事情,正是做到了。謝謝。 – genkilabs 2012-03-02 20:27:12

相關問題