Spec-Zone.ru › Qt 5.9

Класс QGeoRoutingManagerEngine

Класс QGeoRoutingManagerEngine предоставляет интерфейс и удобные методы для разработчиков плагинов QGeoServiceProvider, которые хотят обеспечить доступ к географической информации о маршрутах. Подробнее...

Заголовок: #include <QGeoRoutingManagerEngine>
qmake: QT += location
С момента: Qt 5.6
Наследует: QObject
  • Список всех членов, включая наследуемые

Публичные функции

QGeoRoutingManagerEngine(const QVariantMap &parameters, QObject *parent = Q_NULLPTR)
virtual ~QGeoRoutingManagerEngine()
virtual QGeoRouteReply * calculateRoute(const QGeoRouteRequest &request) = 0
QLocale locale() const
QString managerName() const
int managerVersion() const
QLocale::MeasurementSystem measurementSystem() const
void setLocale(const QLocale &locale)
void setMeasurementSystem(QLocale::MeasurementSystem system)
QGeoRouteRequest::FeatureTypes supportedFeatureTypes() const
QGeoRouteRequest::FeatureWeights supportedFeatureWeights() const
QGeoRouteRequest::ManeuverDetails supportedManeuverDetails() const
QGeoRouteRequest::RouteOptimizations supportedRouteOptimizations() const
QGeoRouteRequest::SegmentDetails supportedSegmentDetails() const
QGeoRouteRequest::TravelModes supportedTravelModes() const
virtual QGeoRouteReply * updateRoute(const QGeoRoute &route, const QGeoCoordinate &position)
  • 32 public functions inherited from QObject

Сигналы

void error(QGeoRouteReply *reply, QGeoRouteReply::Error error, QString errorString = QString())
void finished(QGeoRouteReply *reply)
  • 2 signals inherited from QObject

Защищенные функции

void setSupportedFeatureTypes(QGeoRouteRequest::FeatureTypes featureTypes)
void setSupportedFeatureWeights(QGeoRouteRequest::FeatureWeights featureWeights)
void setSupportedManeuverDetails(QGeoRouteRequest::ManeuverDetails maneuverDetails)
void setSupportedRouteOptimizations(QGeoRouteRequest::RouteOptimizations optimizations)
void setSupportedSegmentDetails(QGeoRouteRequest::SegmentDetails segmentDetails)
void setSupportedTravelModes(QGeoRouteRequest::TravelModes travelModes)
  • 9 protected functions inherited from QObject

Дополнительные наследуемые члены

  • 1 свойство, унаследованное от QObject
  • 1 public slot, унаследованный от QObject
  • 11 static public members inherited from QObject

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

Класс QGeoRoutingManagerEngine предоставляет интерфейс и удобные методы для разработчиков плагинов QGeoServiceProvider, которые хотят обеспечить доступ к географической информации о маршрутах.

Подклассы QGeoRoutingManagerEngine должны реализовывать метод calculateRoute().

В реализации по умолчанию supportsRouteUpdates() возвращает false, а updateRoute() возвращает объект QGeoRouteReply, содержащий ошибку QGeoRouteReply::UnsupportedOptionError.

Если служба маршрутизации поддерживает обновление маршрутов во время движения, подкласс должен реализовать updateRoute() и вызвать setSupportsRouteUpdates(true) в какой-то момент до вызова updateRoute().

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

Важно, чтобы это было сделано до вызова calculateRoute(), updateRoute() или любых функций отчёта о возможностях, чтобы предотвратить некорректное или несогласованное поведение.

Подкласс QGeoRouteManagerEngine часто использует подкласс QGeoRouteReply для внутреннего использования, чтобы добавить любые данные, специфичные для движка (например, объект QNetworkReply для сетевых служб) в экземпляры QGeoRouteReply, используемые движком.

См. также QGeoRoutingManager.

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

QGeoRoutingManagerEngine::QGeoRoutingManagerEngine(const QVariantMap &parameters, QObject *parent = Q_NULLPTR)

Создаёт новый движок с указанным parent, используя parameters для передачи любых данных, специфичных для реализации, в движок.

[virtual] QGeoRoutingManagerEngine::~QGeoRoutingManagerEngine()

Удаляет этот движок.

[pure virtual] QGeoRouteReply *QGeoRoutingManagerEngine::calculateRoute(const QGeoRouteRequest &request)

Начинает вычисление маршрута, указанного в request.

Возвращается объект QGeoRouteReply, который можно использовать для управления операцией маршрутизации и возврата результатов операции.

Этот движок и возвращаемый объект QGeoRouteReply будут генерировать сигналы, указывающие, завершена ли операция или произошли ошибки.

После завершения операции, QGeoRouteReply::routes можно использовать для извлечения вычисленного маршрута или маршрутов.

Если request включает в себя функции, которые не поддерживаются этим движком, как сообщается методами в этом движке, то произойдёт QGeoRouteReply::UnsupportedOptionError.

END_OF_DOCUMENT_MARKER

Пользователь отвечает за удаление возвращённого объекта reply, хотя это можно сделать в слоте, подключённом к QGeoRoutingManagerEngine::finished(), QGeoRoutingManagerEngine::error(), QGeoRouteReply::finished() или QGeoRouteReply::error() с помощью deleteLater().

[signal] void QGeoRoutingManagerEngine::error(QGeoRouteReply *reply, QGeoRouteReply::Error error, QString errorString = QString())

Этот сигнал излучается, когда при обработке reply была обнаружена ошибка. За этим, вероятно, последует сигнал QGeoRoutingManagerEngine::finished().

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

Этот сигнал и QGeoRouteReply::error() будут излучаться одновременно.

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

[signal] void QGeoRoutingManagerEngine::finished(QGeoRouteReply *reply)

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

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

Этот сигнал и QGeoRouteReply::finished() будут излучаться одновременно.

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

QLocale QGeoRoutingManagerEngine::locale() const

Возвращает локаль, используемую для указания этому менеджеру маршрутизации, какой язык использовать для адресов и инструкций.

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

QString QGeoRoutingManagerEngine::managerName() const

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

Сочетание managerName() и managerVersion() должно быть уникальным среди реализаций плагинов.

int QGeoRoutingManagerEngine::managerVersion() const

Возвращает версию этой реализации движка.

Сочетание managerName() и managerVersion() должно быть уникальным среди реализаций плагинов.

QLocale::MeasurementSystem QGeoRoutingManagerEngine::measurementSystem() const

Возвращает систему измерения, используемую этим менеджером.

Если был вызван setMeasurementSystem(), то значение, возвращаемое этой функцией, может отличаться от значения, возвращаемого locale(). В этом случае значение, возвращаемое этой функцией, будет использоваться менеджером.

См. также setMeasurementSystem() и setLocale().

void QGeoRoutingManagerEngine::setLocale(const QLocale &locale)

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

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

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

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

void QGeoRoutingManagerEngine::setMeasurementSystem(QLocale::MeasurementSystem system)

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

Систему измерения можно задать независимо от локали. Обе функции setLocale() и эта функция устанавливают систему измерения. Используется значение, установленное последней вызванной функцией.

См. также measurementSystem(), locale() и setLocale().

[protected] void QGeoRoutingManagerEngine::setSupportedFeatureTypes(QGeoRouteRequest::FeatureTypes featureTypes)

Устанавливает типы объектов, которые этот движок может учитывать при планировании маршрута, на featureTypes.

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

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

[protected] void QGeoRoutingManagerEngine::setSupportedFeatureWeights(QGeoRouteRequest::FeatureWeights featureWeights)

Устанавливает весовые коэффициенты, которые этот движок может применять к различным объектам при планировании маршрута, на featureWeights.

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

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

[protected] void QGeoRoutingManagerEngine::setSupportedManeuverDetails(QGeoRouteRequest::ManeuverDetails maneuverDetails)

Устанавливает уровни детализации для маневров навигации, которые может запросить этот движок, на maneuverDetails.

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

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

[protected] void QGeoRoutingManagerEngine::setSupportedRouteOptimizations(QGeoRouteRequest::RouteOptimizations optimizations)

Устанавливает оптимизации маршрутов, поддерживаемые этим движком, на optimizations.

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

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

[protected] void QGeoRoutingManagerEngine::setSupportedSegmentDetails(QGeoRouteRequest::SegmentDetails segmentDetails)

Устанавливает уровни детализации для сегментов маршрута, которые может запросить этот движок, на segmentDetails.

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

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

[protected] void QGeoRoutingManagerEngine::setSupportedTravelModes(QGeoRouteRequest::TravelModes travelModes)

Устанавливает типы транспортных режимов, поддерживаемые этим движком, на travelModes.

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

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

QGeoRouteRequest::FeatureTypes QGeoRoutingManagerEngine::supportedFeatureTypes() const

Возвращает типы объектов, которые этот движок может учитывать при планировании маршрута.

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

QGeoRouteRequest::FeatureWeights QGeoRoutingManagerEngine::supportedFeatureWeights() const

Возвращает весовые коэффициенты, которые этот движок может применять к различным объектам при планировании маршрута.

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

QGeoRouteRequest::ManeuverDetails QGeoRoutingManagerEngine::supportedManeuverDetails() const

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

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

QGeoRouteRequest::RouteOptimizations QGeoRoutingManagerEngine::supportedRouteOptimizations() const

Возвращает оптимизации маршрутов, поддерживаемые этим движком.

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

END_OF_DOCUMENT_MARKER

QGeoRouteRequest::SegmentDetails QGeoRoutingManagerEngine::supportedSegmentDetails() const

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

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

QGeoRouteRequest::TravelModes QGeoRoutingManagerEngine::supportedTravelModes() const

Возвращает типы передвижения, поддерживаемые этим движком.

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

[virtual] QGeoRouteReply *QGeoRoutingManagerEngine::updateRoute(const QGeoRoute &route, const QGeoCoordinate &position)

Начинает процесс обновления route на основе текущего положения position.

Будет возвращён объект QGeoRouteReply, который может использоваться для управления операцией маршрутизации и для возврата результатов операции.

Этот движок и возвращённый объект QGeoRouteReply будут генерировать сигналы, указывающие на завершение операции или возникновение ошибок.

Если supportsRouteUpdates() возвращает false, произойдёт ошибка QGeoRouteReply::UnsupportedOptionError.

После завершения операции, QGeoRouteReply::routes может быть использован для получения обновлённого маршрута.

Возвращённый маршрут может быть полностью отличным от исходного маршрута, особенно если position достаточно удалён от начального маршрута. В противном случае маршрут будет похожим, хотя оставшееся время и расстояние будут обновлены, а любые сегменты исходного маршрута, которые были пройдены, будут удалены.

Пользователь отвечает за удаление возвращённого объекта ответа, хотя это можно сделать в слоте, подключенном к QGeoRoutingManagerEngine::finished(), QGeoRoutingManagerEngine::error(), QGeoRouteReply::finished() или QGeoRouteReply::error() с помощью deleteLater().

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

Spec-Zone.ru

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