Google地图路线规划

Google地图路线规划

大家好,又见面了,我是全栈君。

Google地图路线规划:

需求:给定的两点之间Google地图路径规划和详情。

 

代码实现:

 1 //map定义省略
 2 
 3 var directionsDisplay = new google.maps.DirectionsRenderer({ 'draggable': true ,suppressInfoWindows:true,suppressMarkers:true});
 4 
 5 var service;
 6 
 7 //得到规划路线
 8 function getRoute(source,destination,map){
 9     var directionsService = new google.maps.DirectionsService();
10     directionsDisplay.setMap(map);
11     var request = {
12         origin: source,
13         destination: destination,
14         travelMode: google.maps.TravelMode.DRIVING
15     };
16     directionsService.route(request, function (response, status) {
17         if (status == google.maps.DirectionsStatus.OK) {
18             directionsDisplay.setDirections(response);
19         }
20     });
21 }
22 
23 //得到规划路径的详细些信息
24 function getDetailsRoutes(source,destination,map){
25     service = new google.maps.DistanceMatrixService();
26     service.getDistanceMatrix({
27         origins: [source],
28         destinations: [destination],
29         travelMode: google.maps.TravelMode.DRIVING,
30         unitSystem: google.maps.UnitSystem.METRIC,
31         avoidHighways: false,
32         avoidTolls: false
33     }, function (response, status) {
34         if (status == google.maps.DistanceMatrixStatus.OK && response.rows[0].elements[0].status != "ZERO_RESULTS") {
35             var distance = response.rows[0].elements[0].distance.text;
36             var duration = response.rows[0].elements[0].duration.text;
37             var dvDistance = document.getElementById("siteinfo_modal_label");
38             dvDistance.innerHTML = "";
39             dvDistance.innerHTML += "Distance: " + distance + "<br />";
40             dvDistance.innerHTML += "Duration:" + duration;
41 
42         } else {
43             alert("Unable to find the distance via road.");
44         }
45     });

 

转载于:https://www.cnblogs.com/wudi521/p/6052117.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108790.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vs2019注释快捷键_vs2015注释快捷键

    vs2019注释快捷键_vs2015注释快捷键每个编辑器基本上都有自己的快捷键方式 很烦VS2019ctrl+K+C//注释ctrl+K+U //取消注释这个快捷键不同别的是,可以同时按住三个一起,也可以先按ctrl+K,再按ctrl+C/U…

    2022年8月15日
    5
  • armv8处理器有哪些_arm是精简指令集

    armv8处理器有哪些_arm是精简指令集ARMv8是ARM版本升级以来最大的一次改变,ARMv8的架构继承以往ARMv7与之前处理器技术的基础,除了现有的16/32bit的Thumb2指令支持外,也向前兼容现有的A32(ARM32bit)指令集,扩充了基于64bit的AArch64架构,除了新增A64(ARM64bit)指令集外,也扩充了现有的A32(ARM32bit)和T32(Thumb232bit)指令集;ARMv8拥有两种…

    2022年10月16日
    4
  • eclipse注释快捷键失效问题

    eclipse注释快捷键失效问题先试一下是不是用错斜线了,不要用小键盘里的/,要用主键盘里的/,就是键盘上和问号在一起的那个斜shu线。因为Ctrl+小键盘里的/,对应的是另一个快捷方式。如果依然没用再去Window–>Preferences–>General–>keys中输入togglecomment查找注释快捷键,看一下对应的快捷键然后使用。如果觉得它定义的用着不爽,可以在Binding中自定义快捷方式。(个人建议:能不修改默认快捷方式就不要修改!!!)…

    2022年5月10日
    52
  • echarts时间轴_ECHARTS

    echarts时间轴_ECHARTS旭日图vardataL1=[];vardataL2=[];vardata1=[];for(vari=0;i<=60;i++){dataL1.push([Math.cos(i*Math.PI/2),i]);dataL2.push([Math.cos(i*Math.PI/2-3)+2,i]);}for(vari=0;i&…

    2022年9月26日
    5
  • linux中whereis命令的用法,Linux中的Whereis命令,教你如何使用whereis命令及注意事项…

    linux中whereis命令的用法,Linux中的Whereis命令,教你如何使用whereis命令及注意事项…本文教你使用 Linux 操作系统中的 Whereis 命令 包括注意事项 whereis 是一个命令行实用程序 允许你查找给定命令的二进制文件 源文件和手动页面文件的位置 如何使用 whereis 命令及注意事项 whereis 命令的语法如下 whereis OPTIONS FILE NAME 在没有任何选项的情况下使用时 搜索指定为参数的命令的二进制文件 源文件和手动文件 默认情况下 whereis 在

    2025年7月29日
    8
  • python读取excel并写入excel_python如何读取文件夹下的所有文件

    python读取excel并写入excel_python如何读取文件夹下的所有文件(1)方法一:#!/usr/bin/envpython3fromdatetimeimportdatefromxlrdimportopen_workbook,xldate_as_tuplefromxlwtimportWorkbookoutput_workbook=Workbook()output_worksheet=output_workbook.add_s

    2022年10月2日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号