Подтвердить что ты не робот

Ошибка google.maps.geometry.spherical

У меня возникают проблемы с использованием геометрии на картах google. Я получаю следующую ошибку: "Невозможно получить свойство" сферическим "undefined или нулевой ссылкой.

Это код из w3c с некоторыми моими дополнениями.

var x=new google.maps.LatLng(52.395715,4.888916);
var stavanger=new google.maps.LatLng(58.983991,5.734863);
var amsterdam=new google.maps.LatLng(52.395715,4.888916);
var london=new google.maps.LatLng(51.508742,-0.120850);
function initialize()
{
var mapProp = {
  center:x,
  zoom:4,
  mapTypeId:google.maps.MapTypeId.ROADMAP
};

var map=new google.maps.Map(document.getElementById("googleMap"),mapProp);
var myTrip=[stavanger,amsterdam,london];
var flightPath=new google.maps.Polyline({
    path:myTrip,
    strokeColor:"#0000FF",
    strokeOpacity:0.8,
    strokeWeight:2
    });
flightPath.setMap(map);

try{
    var markerpos = google.maps.geometry.spherical.interpolate(flightPath.getAt(0), flightPath.getAt(1), .5);
    // also tried //
    //var Spherical = google.maps.geometry.spherical;
    //var markerpos = Spherical.interpolate(flightPath.getAt(0), flightPath.getAt(1), .5);
    //var markerpos = google.maps.geometry.spherical.interpolate(amsterdam, london, .5);
}
catch(ex){alert(ex);}

var marker = new google.maps.Marker({position: markerpos,
    map: map,  clickable: false
});
}

Что не так с приведенным выше кодом?

4b9b3361

Ответ 1

Загружаете ли вы правильную библиотеку с параметром libraries=?

<script src="https://maps.googleapis.com/maps/api/js?v=3&sensor=false&libraries=geometry"></script>

Ответ 2

Сначала вам нужно импортировать модули библиотек, а затем модуль auth key. Я думаю, что проблема в том, что при выполнении библиотечных функций импорт библиотечных модулей не завершен. Если вы сначала импортируете модуль ключа авторизации, то, что произошло, он немедленно вызывает метод initialize(), когда загрузка модулей библиотеки времени не завершена. Поэтому вам сначала нужно импортировать библиотечные модули, а затем модуль auth.