Spec-Zone.ru › Qt 5.6

Позиционирование (QML)

Позиционирование по местоположению

Данные местоположения включают точно указанную позицию на поверхности Земли — как предоставленную координатами широты и долготы — вместе с сопутствующими данными, такими как:

  • Дата и время, в которые была сообщена позиция
  • Скорость устройства, которое сообщило о позиции
  • Высота сообщенной позиции (высота над уровнем моря)
  • Азимут устройства в градусах относительно истинного севера

Для получения дополнительной информации см. Географическую координату.

Эти данные можно извлечь различными методами. Один из самых известных методов позиционирования — GPS (Глобальная система позиционирования), общедоступная система, которая использует радиоволновые сигналы, принимаемые со спутников, вращающихся вокруг Земли, для расчета точного местоположения и времени приемника. Другой популярный метод — «Позиционирование по идентификатору ячейки», который использует идентификатор ячейки базовой станции, которая в данный момент обслуживает принимающее устройство, для расчета приблизительного местоположения. Эти и другие методы позиционирования могут использоваться с API местоположения; единственное требование к источнику данных о местоположении в рамках API заключается в том, что он предоставляет координаты широты и долготы со значением даты/времени, с возможностью предоставления других перечисленных выше атрибутов.

Координата

Координата — это базовая единица географической информации. Тип координата имеет атрибуты для хранения latitude, longitude и altitude.

Позиция

Трехмерное положение объекта, такого как мобильное устройство, может быть указано, применив широту, долготу и высоту. Это те значения, которые хранятся в типе l{координата}. Кроме того, для расчета будущих позиций нам нужно знать, движется ли объект, с какой скоростью он движется и каков временной отметки последних данных о позиции. Таким образом, позиция включает значения координаты, скорости и временной отметки. Позиция также отвечает за проверку разумных значений для этих свойств. Они представлены как свойства latitudeValid, longitudeValid, altitudeValid, speedValid, horizontalAccuracyValid и verticalAccuracyValid.

Источник позиции

У нас есть тип Позиции, тип координата, но откуда берутся данные? Также неплохо иметь возможность указать альтернативные источники. Возможно, вместо прямого приема сигналов со спутников GPS, желательно выполнить какие-то тесты с использованием файла данных.

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

NMEA — это распространенный текстовый протокол для указания навигационных данных. Для удобства предоставляется свойство nmeaSource, которое позволяет приложениям QML читать данные NMEA из файла журнала или TCP-соккета. Источник будет излучать обновления в соответствии со временной отметкой каждой фразы NMEA, чтобы создать «воспроизведение» записанных данных. Для использования TCP-соккета установите схему URI «сокет».

PositionSource {
    nmeaSource: "socket://127.0.0.1:12345"
}

Пример GeoFlickr

Пример GeoFlickr использует Location для загрузки миниатюрных изображений с Flickr, относящихся к текущему местоположению.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/location-positioning-qml.html

Spec-Zone.ru

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