问题
I am using Angularjs with IonicFramework and ng-map. I have read all the documentation here (link), but I don't find how can I show to the user the best way (or a simple way) to go to the user current position to another.
I have read this too and this, but I would like to use angular.
回答1:
This is what I do and works ;)
$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();
});
回答2:
I would try angular-ui-maps https://angular-ui.github.io/angular-google-maps/#!/api
and the google directions api: https://developers.google.com/maps/documentation/directions/
With the google directions api you could get the waypoints for your trip and then paint it on the maps canvas with the polylines directive.
来源:https://stackoverflow.com/questions/27036541/ng-map-show-the-best-way-between-two-points-waypoints