Sur cette page

SatelliteSource QML Type

La classe SatelliteSource fournit les informations relatives aux satellites. En savoir plus…

Import Statement: import QtPositioning
Since: Qt 6.5

Propriétés

Méthodes

Description détaillée

La classe SatelliteSource fournit des informations sur les satellites utilisés et les satellites visibles. Cette classe est une représentation QML de QGeoSatelliteInfoSource.

À l'instar de son équivalent en C++, cette classe prend en charge différents plugins. Utilisez la propriété name pour spécifier le nom du plugin à utiliser et indiquez l'PluginParameter, si nécessaire. Si la propriété name n'est pas définie, un plugin par défaut sera utilisé. Consultez la section Plugins d'Qt Positioning pour plus d'informations sur les plugins disponibles.

Utilisez la propriété ` valid ` pour vérifier l’état de `SatelliteSource`.

Utilisez la propriété updateInterval pour indiquer la fréquence à laquelle votre application souhaite recevoir les mises à jour des informations sur les satellites. Les méthodes start(), stop() et update() peuvent être utilisées pour contrôler le fonctionnement de SatelliteSource, tout comme la propriété active qui, lorsqu’elle est définie, équivaut à appeler start() ou stop().

Lorsque SatelliteSource est active, les mises à jour des informations satellite peuvent être récupérées à l’aide des propriétés ` satellitesInView ` et ` satellitesInUse `.

Si une erreur survient lors de la mise à jour des informations satellite, utilisez la propriété sourceError pour obtenir le code d'erreur correspondant.

Exemple d'utilisation

L’exemple suivant montre une instance de SatelliteSource qui utilise le plugin NMEA pour recevoir des mises à jour d’informations sur les satellites toutes les secondes et afficher sur la console le nombre de satellites visibles et de satellites utilisés.

SatelliteSource {
    id: source
    name: "nmea"
    active: true
    updateInterval: 1000
    PluginParameter { name: "nmea.source"; value: "serial:/dev/ttyACM0" }

    onSatellitesInUseChanged: {
        console.log("Satellites in use:", source.satellitesInUse.length)
    }
    onSatellitesInViewChanged: {
        console.log("Satellites in view:", source.satellitesInView.length)
    }
}

Voir également QGeoSatelliteInfoSource, PluginParameter et geoSatelliteInfo.

Documentation sur les propriétés

active : bool

Cette propriété indique si la source satellite est active. Définir cette propriété sur false revient à appeler stop, et la définir sur true revient à appeler start.

Voir également start, stop et update.

name : string

Cette propriété contient le nom interne unique du plugin fournissant actuellement les informations satellite.

La définition de cette propriété indique à l'SatelliteSource d'utiliser un plugin backend spécifique. Si l'SatelliteSource est actif au moment où la propriété « name » est modifiée, il sera désactivé. Si le backend spécifié ne peut pas être chargé, la source satellite deviendra invalide.

La modification de la propriété « name » peut également entraîner une modification de la propriété « updateInterval ».

parameters : list<PluginParameter> [default read-only]

Cette propriété contient la liste des paramètres du plugin.

Voir également PluginParameter.

satellitesInUse : list<geoSatelliteInfo> [read-only]

Cette propriété contient la liste des satellites actuellement utilisés. Il s'agit des satellites servant à obtenir une « position », c'est-à-dire ceux utilisés pour déterminer la position actuelle.

satellitesInView : list<geoSatelliteInfo> [read-only]

Cette propriété contient la liste des satellites actuellement visibles.

sourceError : enumeration [read-only]

Cette propriété contient la dernière erreur survenue avec le fournisseur de données backend.

ConstanteDescription
SatelliteSource.AccessErrorL'établissement de la connexion avec le backend satellite a échoué car l'application ne disposait pas des privilèges requis.
SatelliteSource.ClosedErrorLe backend satellite a fermé la connexion, ce qui se produit par exemple lorsque l'utilisateur désactive les services de localisation.
SatelliteSource.NoErrorAucune erreur ne s’est produite.
SatelliteSource.UnknownSourceErrorUne erreur non identifiée s'est produite.
SatelliteSource.UpdateTimeoutErrorLes informations du satellite n'ont pas pu être récupérées dans le délai imparti.

updateInterval : int

Cette propriété définit l'intervalle souhaité entre les mises à jour, exprimé en millisecondes.

valid : bool [read-only]

Cette propriété a la valeur « true » si l'objet « SatelliteSource » a acquis un plugin backend valide pour fournir des données, et « false » dans le cas contraire.

Les applications doivent vérifier cette propriété afin de déterminer si la fourniture d’informations satellites est disponible et activée sur la plateforme d’exécution, et réagir en conséquence.

Documentation de la méthode

var backendProperty(string name)

Renvoie la valeur de la propriété spécifique au backend nommée « name », si elle existe. Dans le cas contraire, y compris si la fonction est appelée sur un objet « SatelliteSource » non initialisé, la valeur renvoyée sera invalide.

Voir également setBackendProperty().

bool setBackendProperty(string name, var value)

Définit la propriété spécifique au backend nommée « name » sur « value ». Renvoie « true » en cas de succès, « false » dans le cas contraire, y compris si la fonction est appelée sur un objet « SatelliteSource » non initialisé.

Voir également backendProperty().

void start()

Demande des mises à jour à la source satellite. Utilise updateInterval si cette valeur est définie ; sinon, l'intervalle par défaut est utilisé. Si aucune source n'est disponible, cette méthode n'a aucun effet.

Voir également stop(), update() et active.

void stop()

Interrompt les mises à jour provenant de la source satellite. Si aucune source n'est disponible ou si celle-ci n'est pas active, cette méthode n'a aucun effet.

Voir également start(), update() et active.

void update(int timeout = 0)

Méthode pratique permettant de demander une seule mise à jour à la source satellite. Si aucune source n'est disponible, cette méthode n'a aucun effet.

Si la source satellite n'est pas active, elle sera activée le temps nécessaire pour recevoir une mise à jour, ou jusqu'à ce que la requête expire. Le délai d'expiration de la requête dépend du plugin.

Le délai d'expiration (` timeout `) est spécifié en millisecondes. Si la valeur ` timeout ` est égale à zéro (valeur par défaut), un délai d'expiration raisonnable, adapté à la source, est utilisé par défaut.

Voir également start(), stop() et active.

© 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.