Как извлечь значения широты и долготы из объекта класса "google.maps.LatLng"? - PullRequest
2 голосов
/ 03 июня 2011
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 "

1 Ответ

6 голосов
/ 03 июня 2011

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
                                                    });
                }
            }
        });
   }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...