このページでは

SatelliteSource QML Type

SatelliteSource クラスは、衛星情報を提供します。詳細...

Import Statement: import QtPositioning
Since: Qt 6.5

プロパティ

方法

詳細な説明

SatelliteSource クラスは、使用中の衛星および視野内の衛星に関する情報を提供します。このクラスは、QGeoSatelliteInfoSource の QML 表現です。

C++版と同様に、このクラスはさまざまなプラグインをサポートしています。name プロパティを使用して使用するプラグインの名前を指定し、必要に応じてPluginParameterを指定してください。name プロパティが設定されていない場合は、デフォルトのプラグインが使用されます。利用可能なプラグインの詳細については、「Qt Positioning プラグイン」を参照してください。

valid プロパティを使用して、SatelliteSourceの状態を確認します。

updateInterval プロパティを使用して、アプリケーションが衛星情報の更新を受け取る頻度を指定します。start()、stop()、update()メソッドを使用してSatelliteSourceの動作を制御できます。また、active プロパティを設定すると、start()またはstop()を呼び出すのと同じ効果があります。

SatelliteSource がアクティブな場合、satellitesInView およびsatellitesInUse プロパティを使用して、衛星情報の更新を取得できます。

衛星情報の更新中にエラーが発生した場合は、sourceError プロパティを使用して実際のエラーコードを取得してください。

使用例

次の例は、NMEAプラグインを使用して 1 秒ごとに衛星情報の更新を受信し、視野内の衛星数と使用中の衛星数をコンソールに出力する SatelliteSource を示しています。

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)
    }
}

QGeoSatelliteInfoSource 、PluginParameter 、およびgeoSatelliteInfoも参照してください 。

プロパティのドキュメント

active : bool

このプロパティは、衛星ソースがアクティブであるかどうかを示します。このプロパティを `false ` に設定すると、`stop` を呼び出すのと同じ効果があり、`true ` に設定すると、`start` を呼び出すのと同じ効果があります。

「 start 」、「stop 」、および「update 」も参照してください 。

name : string

このプロパティには、現在衛星情報を提供しているプラグインの一意の内部名が格納されます。

このプロパティを設定すると、SatelliteSource は特定のバックエンドプラグインを使用するようになります。nameプロパティが変更された時点でSatelliteSource がアクティブな場合、そのプラグインは非アクティブになります。指定されたバックエンドをロードできない場合、衛星ソースは無効になります。

nameプロパティを変更すると、updateInterval プロパティも変更される場合があります。

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

このプロパティには、プラグインのパラメータのリストが格納されます。

「PluginParameter」も参照してください 。

satellitesInUse : list<geoSatelliteInfo> [read-only]

このプロパティには、現在使用中の衛星のリストが格納されています。これらは「測位」を行うために使用される衛星、つまり現在の位置を特定するために使用される衛星です。

satellitesInView : list<geoSatelliteInfo> [read-only]

このプロパティには、現在視野内にある衛星のリストが格納されています。

sourceError : enumeration [read-only]

このプロパティには、バックエンドのデータプロバイダで最後に発生したエラーが格納されます。

定数説明
SatelliteSource.AccessErrorアプリケーションに必要な権限が不足していたため、サテライトバックエンドへの接続確立に失敗しました。
SatelliteSource.ClosedErrorサテライトバックエンドが接続を閉じました。これは、たとえばユーザーが位置情報サービスをオフにした場合などに発生します。
SatelliteSource.NoErrorエラーは発生していません。
SatelliteSource.UnknownSourceError未特定のエラーが発生しました。
SatelliteSource.UpdateTimeoutError指定されたタイムアウト時間内にサテライト情報を取得できませんでした。

updateInterval : int

このプロパティには、更新間隔(ミリ秒単位)が設定されます。

valid : bool [read-only]

SatelliteSource オブジェクトがデータ提供のための有効なバックエンドプラグインを取得している場合、このプロパティはtrue となり、それ以外の場合はfalse となります。

アプリケーションは、このプロパティを確認して、実行時のプラットフォーム上でサテライト情報の提供が可能かつ有効になっているかどうかを判断し、それに応じて対応する必要があります。

メソッドのドキュメント

var backendProperty(string name)

name という名前のバックエンド固有のプロパティが存在する場合、その値を返します。それ以外の場合、初期化されていない `SatelliteSource` に対して呼び出された場合も含め、戻り値は無効になります。

setBackendProperty()も参照してください 。

bool setBackendProperty(string name, var value)

「name 」というバックエンド固有のプロパティを「value 」に設定します。成功した場合はtrueを返し、それ以外の場合はfalseを返します。これには、初期化されていないSatelliteSource に対して呼び出された場合も含まれます。

backendProperty()も参照してください 。

void start()

衛星ソースからの更新をリクエストします。updateInterval が設定されている場合はそれを使用し、そうでない場合はデフォルトの間隔を使用します。利用可能なソースがない場合、このメソッドは効果を持ちません。

stop()、update()、およびactiveも参照してください 。

void stop()

衛星ソースからの更新を停止します。利用可能なソースがない場合や、ソースがアクティブでない場合、このメソッドは効果を発揮しません。

start()、update()、およびactiveも参照してください 。

void update(int timeout = 0)

サテライトソースに対して単一の更新をリクエストするための便利なメソッドです。利用可能なソースがない場合、このメソッドは効果を持ちません。

衛星ソースが非アクティブの場合、更新を受信するまで、またはリクエストがタイムアウトするまで、そのソースはアクティブになります。リクエストのタイムアウト期間はプラグインごとに異なります。

timeout はミリ秒単位で指定されます。timeout がゼロ(デフォルト値)の場合、ソースに適した妥当なタイムアウト期間がデフォルトで設定されます。

start()、stop()、および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.