【问题标题】:google maps - show different ways of transport for same route谷歌地图 - 显示同一路线的不同交通方式
【发布时间】:2013-11-27 16:44:25
【问题描述】:

我正在探索 Google 地图 API v3。 有没有一种方法可以同时显示从 A 点到 B 点的不同实现方式? 公共汽车,步行车?

我做了这样的事情,但很明显,它覆盖了我写的第一个。 有什么帮助吗?

    function calcRoute() {
            //            var start = document.getElementById('start').value;
            //            var end = document.getElementById('end').value;
            var request = {
                origin: "Avenida da Liberdade, Lisboa",
                destination: "Campo Grande, Lisboa",
                travelMode: google.maps.TravelMode.TRANSIT
            };
            directionsService.route(request, function (response, status) {
                if (status == google.maps.DirectionsStatus.OK) {
                    directionsDisplay.setDirections(response);
                    directionsDisplay.setMap(map);
                }
            });


            var request2 = {
                origin: "Avenida da Liberdade, Lisboa",
                destination: "Campo Grande, Lisboa",
                travelMode: google.maps.TravelMode.DRIVING
            };
            directionsService.route(request2, function (response, status) {
                if (status == google.maps.DirectionsStatus.OK) {
                    directionsDisplay.setDirections(response);
                    directionsDisplay.setMap(map);
                }
            });

        }

<input type="button" title="Transportes"  onclick="calcRoute();"/>

【问题讨论】:

  • 相关问题已经回答here

标签: google-maps


【解决方案1】:

使用路线服务和路线渲染器的不同实例:

    function calcRoute() {
        //            var start = document.getElementById('start').value;
        //            var end = document.getElementById('end').value;
        var request = {
            origin: "Avenida da Liberdade, Lisboa",
            destination: "Campo Grande, Lisboa",
            travelMode: google.maps.TravelMode.TRANSIT
        };
        directionsServiceTransit.route(request, function (response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                directionsDisplayTransit.setDirections(response);
                directionsDisplayTransit.setMap(map);
            }
        });


        var request2 = {
            origin: "Avenida da Liberdade, Lisboa",
            destination: "Campo Grande, Lisboa",
            travelMode: google.maps.TravelMode.DRIVING
        };
        directionsServiceDriving.route(request2, function (response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                directionsDisplayDriving.setDirections(response);
                directionsDisplayDriving.setMap(map);
            }
        });

    }

<input type="button" title="Transportes"  onclick="calcRoute();"/>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-16
    • 2011-07-22
    • 2015-12-26
    • 2017-01-06
    • 2022-01-22
    • 2013-09-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多