Filtrer les markers par rapport à un périmètre

Dans cet exemple d’application, nous utiliserons principalement la méthode new google.maps.Circle ainsi qu’une fonction nommée “distance” qui se chargera de calculer la distance entre 2 points.

L’idée est donc la suivante :

Au premier click sur la map, on définit le centre du cercle. Apparaît alors un picto rouge sous forme de punaise.

Au second click, on affiche un second picto rouge. La distance entre ces 2 points définira le rayon du cercle, ou plutôt dans notre cas, du périmètre.

La méthode new google.maps.Circle est alors appelée avec comme options le rayon et le centre.

Au même instant, nous comparons la distance entre tous nos markers et le centre du cercle afin de vérifier que cette distance est bien inféreure au rayon du cercle.

Si tel est le cas, nous affichons le marker (de facto à l’intérieur de notre cercle), le cas échéant on le supprime de la map s’il y figurait.

NB : il est possible de déplacer les markers rouges définissant le cercle afin de faire varier son centre ou son rayon.

8 Réponses à “Filtrer les markers par rapport à un périmètre”

  1. jump :

    Bonjour,
    Serait-il possible de disposer du script de cette démonstration très intéressante ?
    Je viens de recoder mon site en API V3 et je pense insérer cette fonctionnalité.
    Merci et bravo pour votre investissement !

  2. Christian :

    Bonjour,

    Je trouve cet exemple trés pertinent.
    Avez-vous l’intention de publier le code, ce qui me serait bien utile :)) ?

    Avec toutes mes félicitations

  3. webmaster :

    Bonjour Christian,

    L’idée est effectivement dans les tuyaux.
    Une question de temps…

    A suivre.

  4. Luc :

    Bonjour,
    Félicitation pour ce code, vraiment très intéressant. J’avoue que, comme Christian, ce code me serait fort utile.

    Je reste attentif, dans l’espoir de le voir éventuellement sur votre page.

    Merci de vos idées !!

  5. DaGoN :

    Bonjour,

    Merci pour ce code, je cherche un peu la même chose sauf qu’au lieu de faire un cercle, à partir d’un point, trouver les 3 plus proches.
    En fait je sait pas trop par ou commencer… lol

    Si vous avez une idée ?

    Merci :)

  6. Jean :

    Bonjour,

    Depuis une semaine mon site utilisant Google map ne marche plus et me dis request_denied.
    Je ne sais pas d’ou vient le problème mais par contre quand j’enleve le key google cela marche.
    J entend par cela qu’avec le lient suivant

    http://maps.google.com/maps/api/directions/xml?origin=42%20rue%20de%20l%27industrie%20toulouse&destination=42%20rue%20de%20l%27industrie%20toulouse&waypoints=optimize:true|22%20Rue%20Peyras%2C%2031000%20Toulouse%2C%20France|100%20Rue%20Achille%20Viadieu%2C%2031400%20Toulouse%2C%20France|8%20Rue%20des%20Filatiers%2C%2031000%20Toulouse%2C%20France&sensor=false&key=ABQIAAAAEMxCg9BDREz4rWjsNytwWBQf1n1DndsbAgStce_U6lWS2QvklxRib6CIKt7fe97lJ0L_MxJQAbX5_A

    j obtiens This XML file does not appear to have any style information associated with it. The document tree is shown below.

    REQUEST_DENIED

    et quand je vire la key ca marche
    http://maps.google.com/maps/api/directions/xml?origin=42%20rue%20de%20l%27industrie%20toulouse&destination=42%20rue%20de%20l%27industrie%20toulouse&waypoints=optimize:true|22%20Rue%20Peyras%2C%2031000%20Toulouse%2C%20France|100%20Rue%20Achille%20Viadieu%2C%2031400%20Toulouse%2C%20France|8%20Rue%20des%20Filatiers%2C%2031000%20Toulouse%2C%20France&sensor=false

    Pourriez vous m’aider sur le sujet c’est mon outil de travail ?

  7. mapsou :

    Bonjour,

    serait il possible d’obtenir le code javascript de cette fabuleuse carte

    Merco

  8. scraly :

    Même demande que DaGoN : trouver les x marqueurs les plus proche d’une coordonnée ;)

Laisser une réponse

Security Code: