Мне интересно узнать, как извлечь latlng из источника запроса маршрута, когда маршрут был рассчитан. Я хочу использовать это, чтобы нарисовать круг вокруг начала маршрута, который был сделан.API Google maps API - извлекает latlng из происхождения направлений?
function calcRoute() {
start = document.getElementById("start").value; //value from start textbox
end = document.getElementById("end").value; //value from end textbox
var request = {
origin: start,
destination: end,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(result, status) {
//if route can be generated
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(result);
//circle.setCenter();
}else{
//display window alert with status error
window.alert('Directions request failed due to ' + status);
}
});
}
В Textboxes, которые используются для отправления и назначения используют метод автозаполнения со страницы Google Dev, который находится внутри моей функции Initialise, которая возвращает все типы местоположений.
//autocomplete section
var inputStart = document.getElementById('start');
var optionsStart = {}; //Empty which will return all types
autocomplete = new google.maps.places.Autocomplete(inputStart, optionsStart);
var inputEnd = document.getElementById('end');
var optionsEnd = {}; //Empty which will return all types
autocomplete = new google.maps.places.Autocomplete(inputEnd, optionsEnd);
//--------------------------------------------------
ив исследовал о, мне нужно просто вернуться адреса затем использовать геокодировании извлечь данные, которые я хочу, или это может быть сделано с тем, как мой код теперь.
Я видел этот фрагмент кода, но не знаю, как его реализовать, если это тоже помогает.
result.routes[0].legs[0].start_location;
Ahh спасибо , я думаю, я попробовал объявить latlng как переменную и ввести переменную в параметр setCenter, но не работал .. Спасибо! Теперь мне просто нужно иметь возможность редактировать raidius с каким-то слайдером, время для дополнительных исследований ха-ха. Еще раз спасибо. – aa29
Добро пожаловать. Но если вы делаете 'var xxx = result.routes [0] .legs [0] .start_location' и используете эту переменную в' setCenter() ', нет никакой причины, которая бы не сработала ... Но вы должны использовать эту ** внутри ** функция запроса. – MrUpsidown