banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Thu 09 April 2009 14:51

magali.giaume
Invité

A partir d'un point GPS, connaître le nom de la commune

Bonjour,

Savez-vous s'il existe des utilitaires qui à partir d'un point GPS (coordonnées long/lat) fournissent la commune à laquelle ce point appartient? Ce qui nécessite derrière une requête spatiale avec des limites de communes assez précises.

Merci par avance,

Cordialement,

--
Magali Giaume
Etudiante Mastère SILAT

 

#2 Thu 09 April 2009 15:06

René-Luc D'Hont
Participant assidu
Date d'inscription: 7 Nov 2006
Messages: 328
Site web

Re: A partir d'un point GPS, connaître le nom de la commune

Oui les API de web mapping : Google Maps, Yahoo! Maps ou Virtual Earth.

Par exmple si tu saisis dans l'interface de Google Maps : lat/lon à la place de l'adresse tu obtiendras la localisation. C'est du reverse geocoding. Il existe plein d'autres solutions mais que cherches-tu exactement ?

Hors ligne

 

#3 Fri 10 April 2009 14:02

vdb
Participant actif
Lieu: Chambéry
Date d'inscription: 21 Jun 2006
Messages: 56

Re: A partir d'un point GPS, connaître le nom de la commune

Bonjour Magali,

Je doute qu'il existe un tel utilitaire "desktop" tout prêt, qui combine données + logiciel (du moins, dans le domaine du gratuit / libre).

En revanche, il existe un web service qui fait ça très bien : GeoNames :

Code:

http://www.geonames.org/export/web-services.html#findNearbyPlaceName

Exemple de requête : http://ws.geonames.org/findNearbyPlaceN … ng=5.87149

... qui te renvoie l'information en JSON, aisément parsable par du code javascript... donc bien adapté pour faire des mashups. Une version XML existe également.

Voici le JSON retourné dans le cas ci-dessus :

Code:

{
  "geonames": [
    {
      "countryName": "France",
      "adminCode1": "B9",
      "fclName": "city, village,...",
      "countryCode": "FR",
      "lng": 5.8666667,
      "fcodeName": "populated place",
      "distance": "0.6486",
      "fcl": "P",
      "name": "Le Bourget-du-Lac",
      "fcode": "PPL",
      "geonameId": 3005081,
      "lat": 45.65,
      "population": 4263,
      "adminName1": "Rhône-Alpes"
    }
  ]
}

(Les curieux auront reconnu l'adresse ;-)

Si tu ne veux pas dépendre d'un web service, il te faut d'abord installer une base de données avec cartouche spatiale...
La plus connue étant sans aucun doute PostgreSQL + PostGIS dans le libre.

Ensuite, il te faut les données de type "communes"... Selon tes contraintes (notamment de complétude de l'information) et ton
budget :  * GeoFla, ou ...  * Données OSM : couche france_administrative.shp dans http://downloads.cloudmade.com/europe/f … efiles.zip

Après, il faut utiliser shp2pgsql pour charger ces données dans une table, puis écrire une belle requête SQL, et voila ... tu as l'information que tu cherches ;-)

A+
F.

Hors ligne

 

#4 Fri 10 April 2009 16:17

magali.giaume
Invité

Re: A partir d'un point GPS, connaître le nom de la commune

Merci François pour cette réponse très complète!

 

#5 Fri 10 April 2009 16:38

magali.giaume
Invité

Re: A partir d'un point GPS, connaître le nom de la commune

Malheureusement, le webservice findNearbyPlaceName de GeoNames ne me convient pas tout à fait car il me donne la ville la plus proche, mais pas la ville à laquelle j'appartiens...

Je crois que pour répondre à ma question, le mieux est d'installer une base de données avec cartouche spatiale...

 

Pied de page des forums

Powered by FluxBB