QGeoCodingManager Class
La classe `QGeoCodingManager` permet d'effectuer des opérations de géocodage. En savoir plus...
| Header: | #include <QGeoCodingManager> |
| qmake: | QT += location |
| Inherits: | QObject |
Fonctions publiques
| virtual | ~QGeoCodingManager() |
| QGeoCodeReply * | geocode(const QGeoAddress &address, const QGeoShape &bounds = QGeoShape()) |
| QGeoCodeReply * | geocode(const QString &address, int limit = -1, int offset = 0, const QGeoShape &bounds = QGeoShape()) |
| QLocale | locale() const |
| QString | managerName() const |
| int | managerVersion() const |
| QGeoCodeReply * | reverseGeocode(const QGeoCoordinate &coordinate, const QGeoShape &bounds = QGeoShape()) |
| void | setLocale(const QLocale &locale) |
Signaux
| void | errorOccurred(QGeoCodeReply *reply, QGeoCodeReply::Error error, const QString &errorString = QString()) |
| void | finished(QGeoCodeReply *reply) |
Description détaillée
Les fonctions geocode() et reverseGeocode() renvoient des objets QGeoCodeReply, qui gèrent ces opérations et fournissent des informations sur leur résultat ainsi que sur les éventuelles erreurs survenues.
Les fonctions geocode() et reverseGeocode() permettent de convertir des instances QGeoAddress en instances QGeoCoordinate, et inversement.
La fonction geocode() est également surchargée pour permettre à l’utilisateur d’effectuer une opération de géocodage à partir d’un texte libre : si la chaîne fournie peut être interprétée comme une adresse, elle peut être géocodée pour obtenir des coordonnées.
Les instances de QGeoCodingManager sont accessibles via la méthode QGeoServiceProvider::geocodingManager().
Documentation des fonctions membres
[virtual noexcept] QGeoCodingManager::~QGeoCodingManager()
Supprime ce gestionnaire.
[signal] void QGeoCodingManager::errorOccurred(QGeoCodeReply *reply, QGeoCodeReply::Error error, const QString &errorString = QString())
Ce signal est émis lorsqu'une erreur a été détectée lors du traitement de reply. Le signal QGeoCodingManager::finished() suivra probablement.
L'erreur sera décrite par le code d'erreur error. Si errorString n'est pas vide, il contiendra une description textuelle de l'erreur.
Ce signal et QGeoCodeReply::errorOccurred() seront émis simultanément.
Remarque : ne supprimezpas l’objet reply dans le slot connecté à ce signal. Utilisez plutôt deleteLater().
[signal] void QGeoCodingManager::finished(QGeoCodeReply *reply)
Ce signal est émis lorsque le traitement de ` reply ` est terminé.
Si reply::error() est égal à QGeoCodeReply::NoError, cela signifie que le traitement s'est terminé avec succès.
Ce signal et la fonction QGeoCodeReply::finished() seront émis simultanément.
Remarque : ne supprimezpas l’objet ` reply ` dans le slot connecté à ce signal. Utilisez plutôt ` deleteLater()`.
QGeoCodeReply *QGeoCodingManager::geocode(const QGeoAddress &address, const QGeoShape &bounds = QGeoShape())
Lance le géocodage de address. Le géocodage consiste à déterminer les coordonnées correspondant à une adresse donnée.
Un objet QGeoCodeReply sera renvoyé ; il permettra de gérer l'opération de géocodage et de renvoyer les résultats de celle-ci.
Ce gestionnaire et l’objet ` QGeoCodeReply ` renvoyé émettront des signaux indiquant si l’opération s’est achevée ou si des erreurs se sont produites.
Si supportsGeocoding() renvoie « false », une exception de type « QGeoCodeReply::UnsupportedOptionError » sera levée.
Une fois l’opération terminée, la méthode ` QGeoCodeReply::locations()` peut être utilisée pour récupérer les résultats, qui consisteront en une liste d’objets ` QGeoLocation `. Ces objets représentent une combinaison de données de coordonnées et d’adresses.
Les données d’adresse renvoyées dans les résultats peuvent différer de celles de ` address`. Cela se produit généralement si le service de géocodage utilise une forme canonique différente pour les adresses ou si ` address ` n’a été renseigné que partiellement.
Si bounds n’est pas nul et correspond à une QGeoShape valide, celle-ci sera utilisée pour limiter les résultats à ceux contenus dans bounds. Cela s’avère particulièrement utile si address n’est que partiellement renseigné, car le service tentera alors de géocoder toutes les correspondances pour les données spécifiées.
Il incombe à l’utilisateur de supprimer l’objet de réponse renvoyé, bien que cela puisse être effectué dans le slot associé à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() à l’aide de deleteLater().
QGeoCodeReply *QGeoCodingManager::geocode(const QString &address, int limit = -1, int offset = 0, const QGeoShape &bounds = QGeoShape())
Lance le géocodage d'un lieu correspondant à address.
Un objet QGeoCodeReply sera renvoyé ; celui-ci peut être utilisé pour gérer l’opération de géocodage et pour renvoyer les résultats de l’opération.
Ce gestionnaire et l'objet ` QGeoCodeReply ` renvoyé émettront des signaux indiquant si l'opération s'est achevée ou si des erreurs se sont produites.
Une fois l’opération terminée, la méthode QGeoCodeReply::locations() peut être utilisée pour récupérer les résultats, qui consisteront en une liste d’objets QGeoLocation. Ces objets représentent une combinaison de données de coordonnées et d’adresses.
Si limit vaut -1, l’ensemble des résultats sera renvoyé ; dans le cas contraire, un maximum de limit résultats sera renvoyé.
Le paramètre ` offset ` sert à demander au service de géocodage de ne pas renvoyer les ` offset ` premiers résultats.
Les paramètres « limit » et « offset » sont utilisés conjointement pour mettre en œuvre la pagination.
Si bounds est non nul et constitue un QGeoShape valide, il sera utilisé pour limiter les résultats à ceux contenus dans bounds.
L’utilisateur est chargé de supprimer l’objet de réponse renvoyé, bien que cela puisse être effectué dans l’emplacement associé à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() à l’aide de deleteLater().
QLocale QGeoCodingManager::locale() const
Renvoie les paramètres régionaux utilisés pour indiquer à ce gestionnaire de géocodage quelle langue utiliser pour les résultats.
Voir également setLocale().
QString QGeoCodingManager::managerName() const
Renvoie le nom du moteur qui implémente le comportement de ce gestionnaire de géocodage.
La combinaison de `managerName()` et ` managerVersion()` doit être unique parmi les implémentations du plugin.
int QGeoCodingManager::managerVersion() const
Renvoie la version du moteur qui implémente le comportement de ce gestionnaire de géocodage.
La combinaison des méthodes ` managerName()` et `managerVersion()` doit être unique parmi les implémentations du plugin.
QGeoCodeReply *QGeoCodingManager::reverseGeocode(const QGeoCoordinate &coordinate, const QGeoShape &bounds = QGeoShape())
Lance le géocodage inversé de coordinate. Le géocodage inversé consiste à trouver une adresse correspondant à des coordonnées données.
Un objet QGeoCodeReply sera renvoyé ; il permettra de gérer l'opération de géocodage inversé et de renvoyer les résultats de celle-ci.
Ce gestionnaire et l’objet ` QGeoCodeReply ` renvoyé émettront des signaux indiquant si l’opération s’est achevée ou si des erreurs se sont produites.
Si supportsReverseGeocoding() renvoie « false », une exception QGeoCodeReply::UnsupportedOptionError sera levée.
À ce stade, la méthode ` QGeoCodeReply::locations()` peut être utilisée pour récupérer les résultats, qui consisteront en une liste d’objets ` QGeoLocation `. Ces objets représentent une combinaison de données de coordonnées et d’adresses.
Les données de coordonnées renvoyées dans les résultats peuvent différer de celles de ` coordinate`. Cela se produit généralement si le backend du service de géocodage inversé décale les coordonnées pour les rapprocher des adresses correspondantes, ou si le backend renvoie des résultats à plusieurs niveaux de détail.
Si le backend du service de géocodage inversé renvoie plusieurs résultats, ceux-ci seront fournis par ordre de spécificité. Cela se produit généralement lorsque le backend est configuré pour effectuer un géocodage inversé à plusieurs niveaux de détail. À titre d’exemple, certains services renvoient des paires adresse-coordonnées pour l’adresse postale, la ville, la région et le pays.
Si ` bounds ` est non nul et constitue une ` QGeoRectangle ` valide, il sera utilisé pour limiter les résultats à ceux contenus dans ` bounds`.
Il incombe à l’utilisateur de supprimer l’objet de réponse renvoyé, bien que cela puisse être effectué dans le slot associé à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() à l’aide de deleteLater().
void QGeoCodingManager::setLocale(const QLocale &locale)
Définit les paramètres régionaux que ce gestionnaire doit utiliser sur locale.
Si ce gestionnaire de géocodage prend en charge le renvoi des résultats dans différentes langues, ceux-ci seront renvoyés dans la langue de locale.
Si aucune locale n’est définie, la locale par défaut du système est utilisée.
Voir également locale().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.