【发布时间】:2021-01-19 04:04:07
【问题描述】:
我正在使用 Google Maps API 开发一个 JS webapp。
我必须计算从 A/D 到 B、B 到 C 和 C 到 A/D 的距离(请查看下一张图片)。
但是,在地图上,我只需要渲染第二条腿(legs[1],B 到 C)。 (查看图片了解更多信息)
如何隐藏路线的第一段和最后一段?当然,我可以做另一个请求,一个用于地图,一个用于计算,但我正在努力提高效率。
我的 JS:
var mpos = "via Melzi deril 38 20154 Milano";
var madd = $("#i_madd_v").val() + ', ' + $("#i_madd_n").val() + ', ' + $("#i_madd_c").val();
var dadd = $("#i_dadd_v").val() + ', ' + $("#i_dadd_n").val() + ', ' + $("#i_dadd_c").val();
console.log(madd);
console.log(dadd);
function initMap() {
const directionsService = new google.maps.DirectionsService();
const directionsRenderer = new google.maps.DirectionsRenderer();
var centro = new google.maps.LatLng(45.462861, 9.186453);
var mapOptions = {
zoom:11,
center: centro,
disableDefaultUI: true
}
map = new google.maps.Map(document.getElementById('mappa'), mapOptions);
directionsRenderer.setMap(map);
calcRoute(directionsService, directionsRenderer);
}
function calcRoute(directionsService, directionsRenderer) {
var request = {
origin:mpos,
destination:mpos,
waypoints: [
{
location: madd,
stopover: true
},
{
location: dadd,
stopover: true
},
],
travelMode: 'DRIVING'
};
directionsService.route(request, function(response, status) {
if (status == 'OK') {
console.log(response);
console.log(status);
directionsRenderer.setDirections(response);
}
});
}
initMap();
});
【问题讨论】:
-
贴出的代码有语法错误(末尾多
});)。请提供一个 minimal reproducible example 来证明您的问题,最好是 StackSnippet,并提供默认值以显示路线。
标签: javascript api google-maps-api-3 maps render