Pages

Récuperation coordonée gps pour itinéraire sujet

vendredi 31 janvier 2014




Bonjour à tous,

En utilisant l'API Google Map V3(web), j'essaye de calculer des itinéraire que j'ai déjà placer leur position.
Le problème c'est que je sais pas comment s'y prendre pour que ce soit les coordonnées gps du téléphone soit prise en compte pour le calcul.

Voici un bout de code que j'ai fais:

Code:




if (navigator.geolocation)
{

function affichePosition(position)
{
        var infopos = "Position déterminée : <br>";
                infopos += "Latitude : "+position.coords.latitude +"<br>";
                infopos += "Longitude: "+position.coords.longitude+"<br>";
                document.getElementById("maposition").innerHTML = infopos;
               
                var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);                                        //recuperation coordonnée gps
               
                var marker = new google.maps.Marker({
                        position: latlng,
                        map: map,
                        title:"Vous êtes ici"
                });
                map.panTo(latlng);
}
       

       
var origin1 = new google.maps.LatLng(-18.903906,47.522092 );

//Les déstinations
var destinationA = new google.maps.LatLng(-18.868628,47.528051); 
var destinationB = new google.maps.LatLng(-18.908939, 47.525125 );

                var image = {
    url: 'imag/logo.png',
   
    size: new google.maps.Size(40, 40),
   
    origin: new google.maps.Point(0,0),
   
    anchor: new google.maps.Point(0, 0)
  };
var originIcon = 'https://chart.googleapis.com/chart?chst=d_map_pin_letter&chld=O|FFFF00|000000';

function initialize() {
  var opts = {
    center: new google.maps.LatLng(-18.909736,47.5246 ),
    zoom: 14
  };
  map = new google.maps.Map(document.getElementById('map-canvas'), opts);
  geocoder = new google.maps.Geocoder();
}

function calculateDistances() {
  var service = new google.maps.DistanceMatrixService();
  service.getDistanceMatrix(
    {
      origins: [origin1],
      destinations: [destinationA, destinationB],
      travelMode: google.maps.TravelMode.DRIVING,
      unitSystem: google.maps.UnitSystem.METRIC,
      avoidHighways: false,
      avoidTolls: false
    }, callback);

function callback(response, status) {
  if (status != google.maps.DistanceMatrixStatus.OK) {
    alert('Error was: ' + status);
  } else {
    var origins = response.originAddresses;
    var destinations = response.destinationAddresses;
    var outputDiv = document.getElementById('outputDiv');
               
    outputDiv.innerHTML = '';
    deleteOverlays();

    for (var i = 0; i < origins.length; i++) {
      var results = response.rows[i].elements;
                       
                               
                        recuperation = response.rows[i].elements;
                       
      addMarker(origins[i], false);
      for (var j = 0; j < results.length; j++) {
        addMarker(destinations[j], true);
        outputDiv.innerHTML += origins[i] + ' -> ' + destinations[j]
            + ': ' + results[j].distance.text + ' en '
            + results[j].duration.text + '<br>';
      }
    }
}


Le problème c'est que quand je remplace origin1 par latlng
origins: [latlng],
ça ne marche pas.:aie:

Est-ce que quelqu'un peut m'aider svp?
Merci




Aucun commentaire:

Enregistrer un commentaire