Spec-Zone.ru › Qt 5.13

Класс QGeoCodingManager

Класс QGeoCodingManager предоставляет поддержку операций геокодирования. Подробнее...

Заголовок: #include <QGeoCodingManager>
qmake: QT += location
С момента: Qt 5.6
Наследует: QObject

Этот класс был представлен в Qt 5.6.

  • Список всех членов, включая наследуемые

Открытые функции

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 error(QGeoCodeReply *reply, QGeoCodeReply::Error error, QString errorString = QString())
void finished(QGeoCodeReply *reply)

Подробное описание

Функции geocode() и reverseGeocode() возвращают объекты QGeoCodeReply, которые управляют этими операциями и сообщают о результате операций и любых возникших ошибках.

Функции geocode() и reverseGeocode() могут использоваться для преобразования экземпляров QGeoAddress в экземпляры QGeoCoordinate и наоборот.

Функция geocode() также перегружена, чтобы позволить пользователю выполнить операцию геокодирования свободного текста; если предоставленная строка может быть интерпретирована как адрес, она может быть геокодирована в информацию о координатах.

К экземплярам QGeoCodingManager можно получить доступ с помощью QGeoServiceProvider::geocodingManager().

Документация по членам-функциям

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

Этот сигнал испускается, когда в обработке reply была обнаружена ошибка. Сигнал QGeoCodingManager::finished() вряд ли последует.

Ошибка будет описана кодом ошибки error. Если errorString не пусто, она будет содержать текстовое описание ошибки.

Этот сигнал и QGeoCodeReply::error() будут испускаться одновременно.

Примечание: Не удаляйте объект reply в слоте, подключенном к этому сигналу. Используйте deleteLater() вместо этого.

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

Этот сигнал испускается, когда обработка reply завершена.

Если reply::error() равно QGeoCodeReply::NoError, обработка завершилась успешно.

Этот сигнал и QGeoCodeReply::finished() будут испускаться одновременно.

Примечание: Не удаляйте объект reply в слоте, подключенном к этому сигналу. Используйте deleteLater() вместо этого.

[virtual] QGeoCodingManager::~QGeoCodingManager()

Удаляет этот менеджер.

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 заполнен только частично, так как служба попытается геокодировать все совпадения для указанных данных.

Пользователь отвечает за удаление возвращённого объекта reply, хотя это можно сделать в слоте, подключённом к QGeoCodingManager::finished(), QGeoCodingManager::error(), QGeoCodeReply::finished() или QGeoCodeReply::error() с помощью 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 результатов.

Параметры limit и offset используются вместе для реализации постраничного вывода.

Если bounds не null и является допустимым QGeoShape, он будет использоваться для ограничения результатов теми, которые содержатся в bounds.

Пользователь отвечает за удаление возвращённого объекта reply, хотя это можно сделать в слоте, подключённом к QGeoCodingManager::finished(), QGeoCodingManager::error(), QGeoCodeReply::finished() или QGeoCodeReply::error() с помощью 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::error(), QGeoCodeReply::finished() или QGeoCodeReply::error() с помощью deleteLater().

void QGeoCodingManager::setLocale(const QLocale &locale)

Устанавливает локаль, используемую этим менеджером, в locale.

Если этот менеджер геокодирования поддерживает возврат результатов на разных языках, они будут возвращены на языке locale.

Используемая по умолчанию локаль — системная локаль, если она не задана.

См. также locale().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qgeocodingmanager.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API