[Débutant] Usage de Nominatim, Android, API

Bonjour,

Je suis un développeur Android débutant, préparant un application basée sur les transports en communs de Grenoble dans le cadre d’un projet scolaire universitaire.

Je souhaiterais utiliser OSM pour toutes mes fonctionnalités cartes / géolocalisation / points d’intêret.
La première fonctionnalité que j’aimerais utiliser concerne le rapatriement des coordonnées GPS des arrêts de bus / tramway de la ville, limité à une distance maximale basée sur la localisation de l’utilisateur.

J’avoue être complètement perdu, avoir passé beaucoup de temps à chercher et essayer de me documenter, j’ai essayé de regarder les API pour Android de MapQuest et MapForge, ou encore, j’ai essayé d’utiliser Nominatim pour obtenir la liste des arrêts avec “amenity=bus_station”, mais je n’arrive pas à écrire la bonne requête, et ne trouve aucun exemple pertinant…

Est-ce que vous pouvez m’aider ?
Merci d’avance à tous les frenchies d’ici qui verront ce message,
Bonne journée,
Lucas :slight_smile:

Salut,

Bon courage dans ton projet en tout cas :slight_smile: Je ne pourrais pas t’aider sur la partie développement mais en revanche si tu as besoin d’un testeur ça sera avec grand plaisir, je suis sur Gre :wink:

Vincèn

Bonjour Pock3t,

Ce que tu décris est une fonctionnalité présente [1] dans le soft OSMand [2] (qui comme la fin de son nom l’indique marche sous Android)
Le code est ouvert, donc tu pourras peut être récupérer des choses.

[1] http://code.google.com/p/osmand/wiki/HowToArticles#How_To_Find_on_map
[2] http://osmand.net/

"To find closest POI.
You need pre-loaded vector maps to be able to use this feature.
You could press the search button on the map or go through main menu → Search → Top Left POI button.
Next you could select category or predefined filter. In order to find all POI select POI.
After that you can select closest poi or amenity in relation to the last centre point of the map, or related to your actual location (Search nearby). You can increase search radius by your desire.
Long click shows you a choice:

  1. show additional information if available,
  2. Show on map and
  3. Navigate to.
    A short click moves map position directly to the choosen poi.
    The POI will be in the center of map. You can also choose to define a custom filter choosing the categories with a multi-picklist.
    At last: whichever POI list you have choosen, you can filter this list at last on the name of a POI by choosing Menu > Show filter. Now you can enter a few characters or part of a name."

Salut,

J avais aide quelqu un a ecrire une requete Overpass qui permettait de recuperer toute la relation d une ligne Bus, justement celles de Grenoble vu que je les ai quasi toutes rentrees. Apres je sais pas si il faudrait un gros traitement pour extraire l arret de bus le plus proche a partir des coordonnees de l utilisateur…
Si ca te dit d’en discuter de vive voix passe un jeudi soir au LOGre, on est plusieurs OSMeurs a y etre.
Sinon ab_fab ou la mailing liste developpeur de la communaute francaise pourront certainement te fournir des reponses tres pointues sur le sujet

Bonsoir,

Tout d’abord merci à tous pour vos réponses.
Je ne prend que seulement maintenant le temps d’y répondre, mais j’ai consulté les threads à chaque nouvelle réponse.

@Vincèn > tout le plaisir sera pour moi d’avoir de tes retours ! :slight_smile: A ce propos, nous avons lancé un beta testing en communauté très très restreinte, pourquoi ne pas en profiter ? :smiley: Les releases publiques de l’application sont disponibles ici : https://www.dropbox.com/sh/3wwajkrnqgemw44/jAoGwvWR97
Quelques détails :

  • L’application n’a que quelques fonctions utilisables pour le moment (sur une foule de fonctionnalités en To Do)
  • Des versions différentes seront disponibles successivement au fil du temps, n’hésite pas à retourner sur l’URL de la dropbox pour récuperer la dernière version (jusqu’à release officielle Play Store)
  • L’application peut devenir instable, si c’est le cas, force l’arrêt dans les paramètres des applications de ton système Android (Paramètres → Application → Gérer les applications → EasyWay → Forcer l’arrêt)
  • Des données sont collectées et envoyées automatiquement concernant l’usage que tu faits de l’application, mais uniquement à des fins d’évaluations & améliorations.

N’hésite pas à me faire part de tes critiques, même quelque chose que tu pense inutile, tout m’est très utile ! :slight_smile:

@ab_fab > j’ai pas mal fouiné dans le code et je suis toujours dessus, merci pour la piste !
@quicky > je ne connaissais pas du tout LOGre ! Belle découverte, je garde cette opportunité sous le coude :slight_smile:
Concernant Overpass, ca a l’air vraiment sympa mais (comme d’habitude avec moi …) j’ai beau cherché toute la documentation que je veux dans tous les coins, je ne trouve même pas par exemple le “network reference” du réseau de transport grenoblois pour faire des essais ?! sans compter sur le fait que les requêtes avec l’API semblent (ce soir en tout cas) assez lentes, peut être un petit problème technique ou une surcharge serveurs…

Je vais vraissemblablement me diriger vers la mailing list comme me l’a suggeré quicky si je n’arrive toujours à rien.
Merci encore pour cette aide précieuse que vous m’avez apportée.
Bonne soirée,
Lucas

Le network reference est TAG. Si je me souviens bien la requete suivante permet de recuperer la ligne 21 et c est plutot rapide

La requête que t’a donné Quicky peut se faire sur 2 serveurs distincts utilisant l’outil Overpass API :

Serveur principal Overpass API
http://www.overpass-api.de/query_form.html

Serveur français
http://api.openstreetmap.fr/query_form.html

pour le premier, la requête fonctionne et le retour des données a été rapide.

Bonne journée