Bienvenue sur le forum !

Si vous souhaitez rejoindre la communauté, cliquez sur l'un de ces boutons !

Qt 5 : 5.9.1 - Qt Creator : 4.4.0 - Qt Installer : 2.0.3 - JOM : 1.1.2 - Qt Build suite : 1.7.0 - VS Qt 5 : 2.0.0

OpenStreetMap et QLocation

Bonjour à tous,

J'ai vu que Qt avait sorti une API de pour la gestion de la navigation. Il y a un plugin openstreetmap (http://doc.qt.io/qt-5/location-plugin-osm.html). J'aimerais l'utiliser.
Cela semble simple. j'ai récupéré le projet d'exemple mais il faut définir des chemins vers des serveurs de données.

J'ai défini ces chemins mais cela ne marche pas. Mon objectif serait de faire une navigation type GPS (simple) dans une voiture. A termes, les données pourrait être en offline (ou sur des serveurs locaux).

PluginParameter { name: "osm.useragent"; value: "My great Qt OSM application" }
PluginParameter { name: "osm.mapping.host"; value: "http://tile.openstreetmap.fr" }
PluginParameter { name: "osm.mapping.copyright"; value: "All mine" }
PluginParameter { name: "osm.routing.host"; value: "http://map.project-osrm.org/" }
PluginParameter { name: "osm.geocoding.host"; value: "http://nominatim.openstreetmap.org" }
PluginParameter { name: "osm.places.host"; value: "http://nominatim.openstreetmap.org/" }

Je suppose qu'il faut donnée des liens spécifiques vers l'API (voir se créer des comptes sur les sites qui utilisent les données OSM.
Si quelqu'un a des pistes je prends.

Cordialement

Réponses

  • 24 Jan modifié
    Salut !

    Pour recupérer les données OpenStreetMap pas besoin de se créer un compte.
    C'est drôle car en ce moment je l'utilise (openStreetMap) mais pour un projet web (en javascript)
    Pour ma part, (en javascript donc) je defini un seul lien vers open street map qui me permet de recuperer les tiles (grace surement à la librairie Leaflet) :
    http://{s}.tile.osm.org/{z}/{x}/{y}.png
    En cherchant un peu j'ai trouvé ca si ca peut t'aider :

    stackoverflow.com/questions/29120160/qt-qml-how-to-include-map-tiles-for-offline-usage
  • Il y eu effectivement un problème avec OSM : le fournisseur de service (MapQuest de memoire) a decide de changer sa licence du jour au lendemain, ce qui fait qu'il n'était plus possible de d'utiliser OSM avec Qt 5.6 et 5.7. Ca était corrigé dans les dernières version en utilisant un nouveau fournisseur et en ajoutant des paramètres de configuration pour changer le fournisseur si celui ci refait des blagues du même genre.

    Donc, si tu as une version a jour, tu n'as pas besoin de fournir des paramètres si les paramètres par défaut fonctionnent.

    Pour le offline, c'est pas encore pris en charge par Qt (c'est dans les projets). Tu peux faire cela toi meme en installant les serveurs en local.

    (HS/mode auto promotion : et il faut quand même que je parle des SDK alternatifs. Tu peux regarder du cote de ESRI par exemple : https://developers.arcgis.com/qt/)
  • 24 Jan modifié
    Oui j'ai vu pour arcgis. J'ai mis dans ma todo liste.

    j'ai récup le projet: https://github.com/RPG-18/SimpleGPSTracker
    J'ai viré les trucs qui ne m'interesse pas, j'arrive à avoir une vue QML avec la carte ça marche bien.
    Maintenant, il me faut faire une recherche pour calculer un trajet entre la position courante et destination.
    L'étape suivante sera d'alimenter le systeme avec les coordonnées GPS.
  • Je n'ai pas regardé le code de ce projet, mais dans la doc et les exemples de Qt, tu as deja pas mal de choses :

    - pour tracker la position GPS (QtPositioning) : http://doc.qt.io/qt-5/qtpositioning-logfilepositionsource-example.html
    - pour afficher une map, la position sur la map, rechercher une route entre 2 points et l'afficher : http://doc.qt.io/qt-5/qtlocation-mapviewer-example.html
  • Merci, j’ai bien étudié le premier exemple pour réaliser mon lecteur de position. Je vais voir avec le seconde. merci !!
Connectez-vous ou Inscrivez-vous pour répondre.