Spec-Zone.ru › Qt 5.14

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

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

Пользователь несет ответственность за удаление возвращаемого объекта ответа, хотя это можно сделать в слоте, подключенном к 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.14/qgeocodingmanager.html

Spec-Zone.ru

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