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)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 虚拟IP原理

    原文链接: http://xiaobaoqiu.github.io/blog/2015/04/02/xu-ni-iphe-ippiao-yi/                    http://www.cnblogs.com/crazylqy/p/7741958.html文中有两处用红色标记的文字,是博主认为错误的地方,故做了修改,若理解有误,还望指正。            …

    2022年4月5日
  • gradle下载太慢_苹果6网络慢怎么解决

    gradle下载太慢_苹果6网络慢怎么解决由于网络的原因,有些地方连接下载Gradle没问题,有些地方就不行,所以需要想办法解决先说下载,打开文件gradle-wrapper.properties文件,修改distributionUrl把services.gradle.org改成downloads.gradle-dn.com当然这方法可能有些地方不行,实在不行就上代理吧再说Gradle下载jar包慢,在build.gradle文件的repositories{}内添加上阿里的仓库当然,如果添加了阿里仓库还不行的话只能找其他方

    2022年10月25日
  • ES6 函数的扩展

    ES6 函数的扩展

    2022年4月3日
  • 1MB,1GB,1TB等于多少字节或比特?(理解B与b的区别)「建议收藏」

    1MB,1GB,1TB等于多少字节或比特?(理解B与b的区别)「建议收藏」首先,数据量最小单位比特,bit,(b)即一个比特位为0或1;然后,一个字节,Byte(B)等于8个比特位;1B=8bit.与字节搭配时,K,M,G,T为二进制单位,因为1000与1024相近,即2^10=1K;所以:1KB=1024Byte,所以1MB=10241024=1048576字节1MB=1024KB1GB=1024MB1TB=1024GB与比特搭配时,K,M,…

    2022年5月25日
  • 多进程文件锁

    多进程文件锁一、多进程文件锁当多个用户共同使用、操作一个文件的情况下,这时,Linux通常采用的方法是给文件上锁,来避免共享的资源产生竞争的状态1.文件锁方式对当前读写文件进行加锁处理,简单说下两种加锁方式:flock():文件级别的锁,针对整个文件进行加锁。flock用于对文件施加建议性锁。fcntl()函数:段级别的锁,能够针对文件的某个部分进行加锁。而fcntl不仅可以施

    2022年6月28日
  • constexpr和常量表达式

    constexpr和常量表达式常量表达式常量表达式(constexpression)是指值不会改变并且在编译过程就能得到计算结果的表达式。显然,字面值属于常量表达式,用常量表达式初始化的const对象也是常量表达式。constinta=3;//a是常量表达式constintb=a+1;//b是常量表达式intc=8;//c不是常量表达式,因为c的数据类型是int而不是constintco

    2022年9月29日

发表回复

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

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