IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Street view dans une infowindow [Google Maps]


Sujet :

APIs Google

  1. #1
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut Street view dans une infowindow
    Bonjour,

    J'ai un champ "adresse" de type hidden qui contient une adresse.
    Quand j'affiche la photo street view dans mon infowindow, le résultat me donne "Adresse approximative".
    Effectivement, l'image ne correspond pas vraiment à l'adresse.
    Y-a-t-il un moyen de rectifier ça ?

    Merci.

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <HTML>
    <HEAD>
    <style type="text/css">
    #map-canvas {
    	height : 800px;
    	width : 1100px;
    	margin: auto;
    	}
    </style>
     
    <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false&language=fr">
    </script>
     
    <script type="text/javascript">
    var geocoder;
    var map;
    // initialisation de la carte Google Map de départ
    function initialiserCarte() {
    geocoder = new google.maps.Geocoder();
    // Latitude et longitude du centre de Paris pour centrer la carte de départ
    var latlng = new google.maps.LatLng(48.8590519, 2.33254949999998);
     
      var mapOptions = {
        zoom      : 13,
        center    : latlng,
        mapTypeId : google.maps.MapTypeId.ROADMAP
      }
      // map-canvas est le conteneur HTML de la carte Google Map
      map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
    }
     
    function TrouverAdresse()
    {
    	// Récupération de l'adresse tapée dans le formulaire
    	var adresse = document.getElementById('adresse').value;
    	geocoder = new google.maps.Geocoder();
    	geocoder.geocode( { 'address': adresse}, function(results, status) {
    	if (status == google.maps.GeocoderStatus.OK)
    		{
    		// Création du marqueur du lieu (épingle)
    		var marker = new google.maps.Marker({
    			map: map,
    			position: results[0].geometry.location,
    			latitude: results[0].geometry.location.latitude,
    			title: adresse
    			});
    		}
    	else
    		{
    		alert('Adresse introuvable: ' + status);
    		}
     
    	var contentString = '<div id="content" style="width:400px;height:300px;"></div>';
    	var infowindow = new google.maps.InfoWindow({
    	content: contentString
    	});
     
    	infowindow.open(map,marker);
    	google.maps.event.addListener(marker, 'click', function() {
    	infowindow.open(map,marker);
    	});
     
     
    	var pano = null;
    	google.maps.event.addListener(infowindow, 'domready', function() {
    	if (pano != null) {
    	pano.unbind("position");
    	pano.setVisible(false);
    	}
    	pano = new google.maps.StreetViewPanorama(document.getElementById("content"), {
    	navigationControl: true,
    	navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL},
    	enableCloseButton: false,
    	addressControl: true,
    	linksControl: true
    	});
    	pano.bindTo("position", marker);
    	pano.setVisible(true);
    	});
     
    	google.maps.event.addListener(infowindow, 'closeclick', function() {
    	pano.unbind("position");
    	pano.setVisible(false);
    	pano = null;
    	});
     
    });
     
    }
     
    // Lancement de la construction de la carte google map
    google.maps.event.addDomListener(window, 'load', initialiserCarte);
    </script>
    </HEAD>
    <BODY onload="TrouverAdresse();">
     
    <form>
    <center>
    <div id="map-canvas"></div>
    </center>
     
      <input type="hidden" id="adresse" value="17, rue ordener 75018 paris" size="50"/>
    </form>
     
    </BODY>
    </HTML>

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 670
    Points
    44 670
    Par défaut
    Bonjour,
    Y-a-t-il un moyen de rectifier ça ?
    c'est une information conservatrice de Google, donc à mon avis pas moyen de lui faire dire adresse exacte si il ne veut pas.

  3. #3
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Merci,

    Actuellement, les coordonnées (lat, lng) sont récupérées via la fonction geocode de l'api.
    Si on pouvait affiner encore plus ces valeurs pour être plus précis, ça ne donnerait pas un meilleurs résultat ?

    Merci.

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 670
    Points
    44 670
    Par défaut
    Si on pouvait affiner encore plus ces valeurs pour être plus précis, ça ne donnerait pas un meilleurs résultat ?
    même en faisant quelques essais rapides qui ont consisté à mettre l'adresse visible sur la StreetView le commentaire reste Adresse approximative.

  5. #5
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    OK, merci,

    On va donc se contenter de ce qui existe !

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 670
    Points
    44 670
    Par défaut
    Tu peux également te créer ta propre barre d'adresse dans laquelle tu ne renseignerais pas la notion d'approximative.

  7. #7
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Re,

    Ce n'est pas trop le fait qu'il m'affiche "Adresse approximative" qui me gène, mais plutôt le résultat en lui-même.

    Par exemple, si dans ma variable "adresse", je mets "29 rue de rivoli 75004 paris", le résultat me donne :
    31 Rue de Rivoli, Paris, Île-de-France
    Adresse approximative
    Si je mets "29 rue de rivoli 75004 paris", j'obtiens :
    4 Pl. de l'Hôtel de ville, Paris, Île-de-France
    Adresse approximative
    C'est un peu perturbant quand même !

  8. #8
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 075
    Points : 44 670
    Points
    44 670
    Par défaut
    C'est un peu perturbant quand même !
    C'est la relativité revu par Google.

    Le coté positif de la chose dans ce cas c'est que tu restes dans les abords immédiats, il est des cas où l'erreur est bien plus importante.

    En dernier recours tu peux simplement supprimer l'affichage en mettant addressControl: false dans les options de ton objet StreetViewPanorama.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 05/11/2010, 12h00
  2. Changer de view dans une boite de dialogue
    Par karaz_karaz dans le forum Composants graphiques
    Réponses: 3
    Dernier message: 13/06/2010, 11h57
  3. [Google Maps] Avoir un lien street view dans l'info bulle
    Par Daï2 dans le forum APIs Google
    Réponses: 2
    Dernier message: 01/02/2010, 19h55
  4. Plusieurs View dans une MFC et affichage opengl
    Par fipovi3 dans le forum MFC
    Réponses: 9
    Dernier message: 08/10/2005, 05h07
  5. Problème Alter view dans une procédure stockée
    Par adjava dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/07/2005, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo