2012-03-09 7 views
1

Помогите мне с направлением google включить матрицу расстоянийДобавление матрицы расстояния в направлении google

на моем сайте, используя указанный ниже код, чтобы получить карту Google. какой код я должен добавить, чтобы также показать расстояние между и до, а также время в пути?

спасибо.

<div style="width: 298px;"> 
<div id="map" style="width: 298px; height: 400px; float: left;"></div> 

var directionsService = new google.maps.DirectionsService(); 
var directionsDisplay = new google.maps.DirectionsRenderer(); 

var map = new google.maps.Map(document.getElementById('map'), { 
    zoom:7, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
}); 

directionsDisplay.setMap(map); 
directionsDisplay.setPanel(document.getElementById('panel')); 

var request = { 
    origin: '<?php echo $contents['pickupname']; ?>', 
    destination: '<?php echo $contents['dropoffname']; ?>', 
    travelMode: google.maps.DirectionsTravelMode.DRIVING 
}; 

directionsService.route(request, function(response, status) { 
    if (status == google.maps.DirectionsStatus.OK) { 
    directionsDisplay.setDirections(response); 
    } 

}); 

ответ

2

Сделать это изменения:

directionsService.route(request, function(response, status) { 
    if (status == google.maps.DirectionsStatus.OK) { 
    directionsDisplay.setDirections(response); 
} 

var myRoute = response.routes[0].legs[0]; 
var duration = myRoute.duration.value; 
var distance = myRoute.distance.value; 
}); 

внимание Кроме того, этот код только для демонстрации. Вам нужно изменить код, чтобы проверять случаи, когда есть несколько маршрутов, ноги. Для получения более подробной информации см DirectionsResult, DirectionsRoute, DirectionsLeg

0

Это решение я использую:

Сначала нужно добавить элемент, который будет показывать ваши данные в HTML. Я использую входной элемент следующим образом:

<input type="text" name="distance" id="distance" readonly="true" /> 

Когда вы выполняете расчет в JS, отправляйте эти данные на вход. Например:

var distanceInput = document.getElementById('distance'); 
distanceInput.value = response.routes[0].legs[0].distance.value/1000; 

 Смежные вопросы

  • Нет связанных вопросов^_^