Класс QAccelerometer
Класс QAccelerometer — это обёртка над классом QSensor. Подробнее...
| Заголовок: | #include <QAccelerometer> |
| qmake: | QT += sensors |
| С момента: | Qt 5.1 |
| Наследует: | QSensor |
Этот класс был представлен в Qt 5.1.
Типы публичного доступа
| Перечисление | AccelerationMode { Объединённый, Гравитация, Пользователь } |
Свойства
- accelerationMode : AccelerationMode
Функции публичного доступа
| QAccelerometer(QObject *parent = Q_NULLPTR) | |
| virtual | ~QAccelerometer() |
| QAccelerometer::AccelerationMode | accelerationMode() const |
| QAccelerometerReading * | reading() const |
| void | setAccelerationMode(QAccelerometer::AccelerationMode accelerationMode) |
Сигналы
| void | accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode) |
Подробное описание
Единственное различие в поведении заключается в том, что этот класс правильно устанавливает тип.
Он также поддерживает изменение режима ускорения, который управляет включением или выключением силы тяжести в значениях акселерометра.
Кроме того, этот класс имеет функцию reading(), которая возвращает QAccelerometerReading, а не QSensorReading.
Подробности о работе датчика см. в QAccelerometerReading.
См. также QAccelerometerReading.
Документация по типам членов
Перечисление QAccelerometer::AccelerationMode
Это перечисление представляет режим ускорения акселерометрического датчика.
Режим ускорения определяет, как датчик сообщает об ускорении. QAccelerometer::Combined — единственный режим, в котором значения могут быть непосредственно физически измерены, остальные являются приближением.
| Константа | Значение | Описание |
|---|---|---|
QAccelerometer::Combined |
0 |
Объединяет ускорение, вызванное гравитацией, и ускорение, вызванное перемещением устройства пользователем. |
QAccelerometer::Gravity |
1 |
Сообщается только ускорение, вызванное гравитацией. Перемещения устройства, вызванные пользователем, не влияют на результат, кроме изменения направления при повороте устройства. |
QAccelerometer::User |
2 |
Сообщается только ускорение, вызванное перемещением устройства пользователем; эффект гравитации отменяется. Неподвижное устройство должно сообщать значения, близкие к нулю. В других API этот режим может быть известен как линейное ускорение. |
Это перечисление было представлено или изменено в Qt 5.1.
См. также QAccelerometer::accelerationMode.
Документация по свойствам
accelerationMode : AccelerationMode
Это свойство содержит режим ускорения, определяющий, как сообщаются значения ускорения.
Режим ускорения определяет, как акселерометрический датчик сообщает значения. По умолчанию используется режим QAccelerometer::Combined, что означает, что ускорение, вызванное гравитацией, включено в отчитываемые значения.
Ускорение, вызванное гравитацией, и ускорение, вызванное перемещением устройства пользователем, физически невозможно отличить из-за общей теории относительности. Большинство устройств используют слияние датчиков, чтобы определить, какая часть ускорения вызвана гравитацией, например, используя датчик вращения для расчета направления гравитации и предполагая фиксированное значение для гравитации. Поэтому результат является лишь приближением и может быть неточным. Режим QAccelerometer::Combined является наиболее точным, так как не предполагает приближение гравитации.
Не все бэкэнды и устройства могут поддерживать установку режима ускорения. В таких случаях используется режим по умолчанию QAccelerometer::Combined; изменение режима не влияет на результат.
Это свойство было представлено в Qt 5.1.
Функции доступа:
| QAccelerometer::AccelerationMode | accelerationMode() const |
| void | setAccelerationMode(QAccelerometer::AccelerationMode accelerationMode) |
Сигнал уведомления:
| void | accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode) |
Документация по функциям членов
QAccelerometer::QAccelerometer(QObject *parent = Q_NULLPTR)
Создаёт датчик как дочерний элемент parent.
[signal] void QAccelerometer::accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode)
Вызывается при изменении accelerationMode.
Примечание: Сигнал уведомления для свойства accelerationMode.
Эта функция была представлена в Qt 5.1.
[virtual] QAccelerometer::~QAccelerometer()
Удаляет датчик. Останавливает датчик, если он ещё не остановлен.
QAccelerometerReading *QAccelerometer::reading() const
Возвращает класс чтения для этого датчика.
См. также QSensor::reading().
void QAccelerometer::setAccelerationMode(QAccelerometer::AccelerationMode accelerationMode)
Устанавливает режим ускорения в accelerationMode.
Примечание: Функция установки для свойства accelerationMode.
Эта функция была представлена в Qt 5.1.
См. также accelerationMode().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qaccelerometer.html