答案 0 :(得分:-1)
谷歌地图,而不仅仅是应用程序,具有此功能
您可以使用他们的JavaScript API
您可以在他们的api找到示例和文档
对于路线,您需要使用他们的directions service
要在Google Maps JavaScript API中使用路线,请创建一个对象 类型
DirectionsService
并致电DirectionsService.route()
向Directions服务发起请求,并将其传递给DirectionsRequest
包含输入词和a的对象文字 收到响应后执行的回调方法。
DirectionsRequest
对象文字包含以下字段:
{
origin: LatLng | String | google.maps.Place,
destination: LatLng | String | google.maps.Place,
travelMode: TravelMode,
transitOptions: TransitOptions,
drivingOptions: DrivingOptions,
unitSystem: UnitSystem,
waypoints[]: DirectionsWaypoint,
optimizeWaypoints: Boolean,
provideRouteAlternatives: Boolean,
avoidHighways: Boolean,
avoidTolls: Boolean,
region: String
}
向
DirectionsService
发起路线请求route()
方法需要传递一个执行的回调 完成服务请求。这个回调将返回一个 响应中的DirectionsResult
和DirectionsStatus
代码。
以下示例将发出路线请求并在directionsPanel
div
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
var map;
function initialize() {
directionsDisplay = new google.maps.DirectionsRenderer();
var chicago = new google.maps.LatLng(41.850033, -87.6500523);
var mapOptions = {
zoom:7,
center: chicago
}
map = new google.maps.Map(document.getElementById("map"), mapOptions);
directionsDisplay.setMap(map);
directionsDisplay.setPanel(document.getElementById("directionsPanel"));
}
function calcRoute() {
var start = document.getElementById("start").value;
var end = document.getElementById("end").value;
var request = {
origin:start,
destination:end,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
在HTML正文中:
<div id="map" style="float:left;width:70%; height:100%"></div>
<div id="directionsPanel" style="float:right;width:30%;height 100%"></div>