ng-map显示两点之间的最佳路径(航点)

时间:2014-11-20 09:55:33

标签: angularjs google-maps ionic-framework ng-map

我正在使用Angularjs和IonicFramework以及ng-map。我已经阅读了这里的所有文档(link),但是我没有找到如何向用户显示将用户当前位置转到另一个用户的最佳方式(或简单方法)。

我已阅读this toothis,但我想使用角度。

2 个答案:

答案 0 :(得分:3)

这就是我所做的和工作;)

$scope.centerOnMe= function(){
    $scope.positions = [];


    $ionicLoading.show({
      template: 'Obteniendo localización...'
    });



    navigator.geolocation.getCurrentPosition(function(position) {
      var pos = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
      $scope.positions.push({lat: pos.k,lng: pos.B});
      console.log(pos);
      $scope.map.setCenter(pos);
      $ionicLoading.hide();




      var directionsDisplay = new google.maps.DirectionsRenderer();;
      var directionsService = new google.maps.DirectionsService();


      console.log($scope.map);
      directionsDisplay.setMap($scope.map);

      function calcRoute() {
        var start = "37.891586,-4.7844853";
        var end = pos.k + "," + pos.B;



        var request = {
          origin: start,
          destination: end,
          optimizeWaypoints: true,
          travelMode: google.maps.TravelMode.DRIVING
        };

        directionsService.route(request, function(response, status) {
          if (status == google.maps.DirectionsStatus.OK) {
            directionsDisplay.setDirections(response);            
            console.log('enter!');  
          }
        });


      }

      calcRoute();


    });

答案 1 :(得分:2)

我会尝试使用angular-ui-maps https://angular-ui.github.io/angular-google-maps/#!/api

和谷歌方向api: https://developers.google.com/maps/documentation/directions/

使用google指令api,您可以获得旅行的航点,然后使用折线指令在地图画布上绘制它。