Sur cette page

QGeoCodingManager Class

La classe QGeoCodingManager fournit un support pour les opérations de géocodage. Plus d'informations...

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 rendent compte du résultat des opérations et des erreurs éventuelles.

Les fonctions geocode() et reverseGeocode() peuvent être utilisées pour convertir des instances QGeoAddress en instances QGeoCoordinate et vice-versa.

La fonction geocode() est également surchargée pour permettre à un utilisateur d'effectuer une opération de géocodage en texte libre, si la chaîne fournie peut être interprétée comme une adresse, elle peut être géocodée en informations de coordonnées.

Les instances de QGeoCodingManager sont accessibles à l'aide de la fonction QGeoServiceProvider::geocodingManager().

Documentation des fonctions membres

[virtual noexcept] QGeoCodingManager::~QGeoCodingManager()

Détruit 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 dans le 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 en même temps.

Remarque : ne supprimez pas l'objet reply dans le slot connecté à ce signal. Utilisez plutôt deleteLater().

[signal] void QGeoCodingManager::finished(QGeoCodeReply *reply)

Ce signal est émis lorsque reply a terminé le traitement.

Si reply::error() est égal à QGeoCodeReply::NoError, le traitement s'est terminé avec succès.

Ce signal et QGeoCodeReply::finished() seront émis en même temps.

Remarque : ne supprimez pas l'objet reply dans le slot connecté à ce signal. Utilisez plutôt deleteLater().

QGeoCodeReply *QGeoCodingManager::geocode(const QGeoAddress &address, const QGeoShape &bounds = QGeoShape())

Commence le géocodage de address. Le géocodage est le processus qui consiste à trouver une coordonnée correspondant à une adresse donnée.

Un objet QGeoCodeReply sera renvoyé, qui 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 est terminée ou si des erreurs se produisent.

Si supportsGeocoding() renvoie false, un message QGeoCodeReply::UnsupportedOptionError sera émis.

Une fois l'opération terminée, QGeoCodeReply::locations() peut être utilisé pour récupérer les résultats, qui consisteront en une liste d'objets QGeoLocation. Ces objets représentent une combinaison de coordonnées et d'adresses.

Les données d'adresse renvoyées dans les résultats peuvent être différentes de celles de address, ce qui se produit généralement si le backend du service de géocodage utilise une forme canonique différente pour les adresses ou si address n'a été que partiellement rempli.

Si bounds n'est pas nul et qu'il s'agit d'une adresse QGeoShape valide, il sera utilisé pour limiter les résultats à ceux qui sont contenus dans bounds. Cela est particulièrement utile si address n'est que partiellement rempli, car le service tentera de géocoder toutes les correspondances pour les données spécifiées.

L'utilisateur est responsable de la suppression de l'objet de réponse renvoyé, bien que cela puisse être fait dans le slot connecté à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() avec deleteLater().

QGeoCodeReply *QGeoCodingManager::geocode(const QString &address, int limit = -1, int offset = 0, const QGeoShape &bounds = QGeoShape())

Commence le géocodage d'un lieu correspondant à address.

Un objet QGeoCodeReply sera renvoyé, qui peut être utilisé pour gérer l'opération de géocodage et renvoyer les résultats de l'opération.

Ce gestionnaire et l'objet QGeoCodeReply renvoyé émettront des signaux indiquant si l'opération est terminée ou si des erreurs se produisent.

Une fois l'opération terminée, QGeoCodeReply::locations() peut être utilisé 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é, sinon au maximum limit sera renvoyé.

Le paramètre offset est utilisé pour demander au service de géocodage de ne pas renvoyer les premiers résultats offset.

Les résultats limit et offset sont utilisés ensemble pour mettre en œuvre la pagination.

Si bounds n'est pas nul et que QGeoShape est valide, il sera utilisé pour limiter les résultats à ceux qui sont contenus dans bounds.

L'utilisateur est responsable de la suppression de l'objet de réponse renvoyé, bien que cela puisse être fait dans le slot connecté à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() avec deleteLater().

QLocale QGeoCodingManager::locale() const

Renvoie la locale utilisée pour indiquer à ce gestionnaire de géocodage la langue à utiliser pour les résultats.

Voir aussi 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 de managerName() et managerVersion() doit être unique parmi les implémentations du plugin.

QGeoCodeReply *QGeoCodingManager::reverseGeocode(const QGeoCoordinate &coordinate, const QGeoShape &bounds = QGeoShape())

Commence le géocodage inversé de coordinate. Le géocodage inverse consiste à trouver une adresse correspondant à une coordonnée donnée.

Un objet QGeoCodeReply sera renvoyé, qui peut être utilisé pour gérer l'opération de géocodage inverse 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 est terminée ou si des erreurs se produisent.

Si supportsReverseGeocoding() renvoie false, un message QGeoCodeReply::UnsupportedOptionError est émis.

À ce moment-là, QGeoCodeReply::locations() peut être utilisé 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 être différentes de celles de coordinate. Cela se produit généralement si le backend du service de géocodage inverse modifie les coordonnées pour les rapprocher des adresses correspondantes, ou si le backend renvoie des résultats à plusieurs niveaux de détail.

Si plusieurs résultats sont renvoyés par le backend du service de géocodage inversé, ils seront fournis par ordre de spécificité. Cela se produit normalement si le backend est configuré pour effectuer un géocodage inverse à plusieurs niveaux de détail. Par exemple, certains services renvoient des paires d'adresses et de coordonnées pour l'adresse de la rue, la ville, l'État et le pays.

Si bounds n'est pas nul et que QGeoRectangle est valide, il sera utilisé pour limiter les résultats à ceux qui sont contenus dans bounds.

L'utilisateur est responsable de la suppression de l'objet de réponse renvoyé, bien que cela puisse être fait dans le slot connecté à QGeoCodingManager::finished(), QGeoCodingManager::errorOccurred(), QGeoCodeReply::finished() ou QGeoCodeReply::errorOccurred() avec deleteLater().

void QGeoCodingManager::setLocale(const QLocale &locale)

Définit la locale à utiliser par ce gestionnaire à 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.

La locale utilisée est par défaut la locale du système si elle n'est pas définie.

Voir aussi 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.