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


相关推荐

  • android开发之android:process属性_application中onCreate执行多次「建议收藏」

    应用做的匆忙,很多地方只顾实现功能,没有兼顾好性能,所以停下来重构代码优化性能,结果在打log看启动时间的时候,发现Application的onCreate执行了多次,这样导致重复初始化资源,初始化了3次导致接近1s时间。发现这个是由独立进程引起的。即:process这个属性。android:process        服务所在进程的名字。通常,一个应用的所有组件都运行在系统为这个应用所创建的默

    2022年3月11日
    42
  • MyBatis逆向工程代码的生成及使用详解

    MyBatis逆向工程代码的生成及使用详解MyBatis逆向工程代码的生成 在MyBatis的开发过程中,数据库表、实体类、SQL映射文件(mapper.xml文件)以及动态代理接口四者之间有着非常密切的关系。 一般的开发流程是:先设计并创建数据库表(如user表),再根据数据库表创建对应的实体类(如User.java),之后再编写SQL映射文件(如userMapper.xml),最后再根据SQL映射文件…

    2022年6月13日
    33
  • JAVA设计模式——适配器模式

    JAVA设计模式——适配器模式适配器模式是一种结构型设计模式。适配器模式的思想是:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。用电器来打个比喻:有一个电器的插头是三脚的,而现有的插座是两孔的,要使插头插上插座,我们需要一个插头转换器,这个转换器即是适配器。适配器模式涉及3个角色:源(Adaptee):需要被适配的对象或类型,相当于插头。适配器(Ad

    2022年7月25日
    6
  • vuecli3配置webpack_vuecli webpack配置

    vuecli3配置webpack_vuecli webpack配置前言如果我们想在webpack中使用vue,就需要在webpack中配置vue配置vue首先,我们需要在项目中安装vue,安装命令如下:npminstallvue–save安装完成后

    2022年7月30日
    12
  • 计算机技术职称自我评价,申报专业技术职称的自我评价

    计算机技术职称自我评价,申报专业技术职称的自我评价

    2021年8月16日
    37
  • 自定义UIView重写touchesBegan无法响应点击事件的解决方法

    自定义UIView重写touchesBegan无法响应点击事件的解决方法定义一个UIView的子类重写touchesBegan响应点击事件问题是无法响应点击事件解决办法:在didFinishLaunchingWithOptions方法中先设置窗口可见再添加subView

    2022年7月25日
    7

发表回复

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

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