QGeoCodingManager Class

QGeoCodingManager クラスは、ジオコーディング操作のサポートを提供します。詳細...

Header: #include <QGeoCodingManager>
qmake: QT += location
Inherits: QObject

パブリック関数

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)

シグナル

void errorOccurred(QGeoCodeReply *reply, QGeoCodeReply::Error error, const QString &errorString = QString())
void finished(QGeoCodeReply *reply)

詳細説明

geocode() およびreverseGeocode() 関数はQGeoCodeReply オブジェクトを返し、これらの操作を管理し、操作の結果と発生した可能性のあるエラーを報告します。

geocode() およびreverseGeocode() 関数を使用して、QGeoAddress インスタンスをQGeoCoordinate インスタンスに変換したり、その逆に変換したりすることができる。

また、geocode() 関数もオーバーロードされており、ユーザーがフリーテキストのジオコーディング操作を実行できるようになっています。提供された文字列が住所として解釈できる場合は、座標情報にジオコーディングすることができます。

QGeoCodingManager のインスタンスにはQGeoServiceProvider::geocodingManager() でアクセスできる。

メンバー関数ドキュメント

[virtual noexcept] QGeoCodingManager::~QGeoCodingManager()

この監督を破壊する。

[signal] void QGeoCodingManager::errorOccurred(QGeoCodeReply *reply, QGeoCodeReply::Error error, const QString &errorString = QString())

このシグナルは、reply の処理でエラーが検出されたときに発せられる。QGeoCodingManager::finished() シグナルは、おそらくその後に続く。

エラーはエラーコードerror で示される。errorString が空でない場合、エラーのテキスト記述が含まれる。

このシグナルとQGeoCodeReply::errorOccurred() は同時に発せられる。

注意: このシグナルに接続されたスロット内のreply オブジェクトを削除しないでください。代わりにdeleteLater() を使用してください。

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

このシグナルは、reply の処理が終了したときに発せられる。

reply::error() がQGeoCodeReply::NoError と等しい場合、処理は正常に終了した。

このシグナルとQGeoCodeReply::finished() は同時に発せられる。

注意: このシグナルに接続されているスロットのreply オブジェクトを削除しないでください。代わりにdeleteLater() を使用してください。

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

address のジオコーディングを開始する。 ジオコーディングとは、与えられた住所に対応する座標を見つける処理のことである。

QGeoCodeReply オブジェクトが返され、それを使ってジオコーディング操作を管理し、操作の結果を返すことができる。

このマネージャと返されるQGeoCodeReply オブジェクトは、操作が完了した場合やエラーが発生した場合にシグナルを発する。

supportsGeocoding() が false を返すと、QGeoCodeReply::UnsupportedOptionError が発生する。

操作が完了したら、QGeoCodeReply::locations() を使用して結果を取得することができます。QGeoLocation オブジェクトのリストで構成されます。これらのオブジェクトは、座標データと住所データの組み合わせを表す。

結果で返される住所データは、address とは異なる可能性があります。これは通常、ジオコーディングサービスのバックエンドが異なる住所の正規形を使用している場合や、address が部分的にしか記入されていない場合に発生します。

bounds が NULL ではなく、有効なQGeoShape である場合、bounds に含まれるものに結果を限定するために使用される。address が部分的にしか記入されていない場合、サービスが指定されたデータにマッチするすべてのジオコーディングを試みるため、これは特に有用である。

返された応答オブジェクトを削除するのはユーザーの責任であるが、これはQGeoCodingManager::finished()、QGeoCodingManager::errorOccurred()、QGeoCodeReply::finished()、QGeoCodeReply::errorOccurred()に接続されたスロットで、deleteLater()を使用して行うことができる。

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

address にマッチする場所のジオコーディングを開始する。

QGeoCodeReply オブジェクトが返される。このオブジェクトはジオコーディング操作を管理したり、操作の結果を返したりするのに使うことができる。

このマネージャと返されたQGeoCodeReply オブジェクトは、操作が完了した場合やエラーが発生した場合にシグナルを発します。

操作が完了したら、QGeoCodeReply::locations() を使って結果を取得することができる。QGeoLocation オブジェクトのリストで構成される。これらのオブジェクトは、座標データとアドレスデータの組み合わせを表す。

limit が -1 の場合は結果セット全体が返され、そうでない場合は最大でlimit の結果が返される。

offset パラメータは、ジオコーディングサービスに最初のoffset 結果を返さないように依頼するために使用する。

limitoffset の結果は、ページングを実装するために一緒に使用される。

bounds が NULL でなく、有効なQGeoShape である場合、bounds に含まれる結果に限定するために使用される。

返されたリプライ・オブジェクトを削除するのはユーザーの責任であるが、これはQGeoCodingManager::finished()、QGeoCodingManager::errorOccurred()、QGeoCodeReply::finished()、QGeoCodeReply::errorOccurred()に接続されたスロットで、deleteLater()を使用して行うことができる。

QLocale QGeoCodingManager::locale() const

このジオコーディングマネージャが、結果に使用する言語を指定する際に使用するロケールを返します。

setLocale()も参照 ください。

QString QGeoCodingManager::managerName() const

このジオコーディングマネージャの振る舞いを実装するエンジンの名前を返します。

managerName() とmanagerVersion() の組み合わせは、プラグインの実装の中で一意でなければなりません。

int QGeoCodingManager::managerVersion() const

このジオコーディングマネージャの動作を実装しているエンジンのバージョンを返します。

managerName() と managerVersion() の組み合わせは、プラグインの実装の中で一意でなければなりません。

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

coordinate の逆ジオコーディングを開始する。逆ジオコーディングは、与えられた座標に対応する住所を見つけるプロセスです。

QGeoCodeReply オブジェクトが返され、これを使用して逆ジオコーディング操作を管理し、操作の結果を返すことができる。

このマネージャと返されたQGeoCodeReply オブジェクトは、操作が完了した場合やエラーが発生した場合を示すシグナルを発する。

supportsReverseGeocoding() が false を返すと、QGeoCodeReply::UnsupportedOptionError が発生する。

その時点で、QGeoCodeReply::locations ()を使用して、QGeoLocation オブジェクトのリストで構成される結果を取得することができる。これらのオブジェクトは、座標データと住所データの組み合わせを表します。

結果で返される座標データは、coordinate とは異なる場合があります。 これは通常、リバースジオコーディングサービスのバックエンドが、一致する住所に近い座標にシフトした場合や、バックエンドが複数の詳細レベルで結果を返した場合に発生します。

リバースジオコーディングサービスのバックエンドから複数の結果が返された場合、それらは詳細度の高い順に提供される。これは通常、バックエンドが複数の詳細レベルでリバースジオコーディングするように設定されている場合に発生します。例として、いくつかのサービスでは、番地、市区町村、州、国の住所と座標のペアを返します。

bounds が NULL でなく、有効なQGeoRectangle である場合、bounds に含まれるものに結果を限定するために使用される。

返された応答オブジェクトを削除するのはユーザーの責任であるが、これはQGeoCodingManager::finished()、QGeoCodingManager::errorOccurred()、QGeoCodeReply::finished()、QGeoCodeReply::errorOccurred()に接続されたスロットで、deleteLater()を使用して行うことができる。

void QGeoCodingManager::setLocale(const QLocale &locale)

このマネージャが使用するロケールをlocale に設定する。

このジオコーディングマネージャが結果を異なる言語で返すことをサポートしている場合、結果はlocale の言語で返されます。

これが設定されていない場合、使用されるロケールのデフォルトはシステムロケールです。

locale()も参照

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