Класс QAccelerometer
Класс QAccelerometer — это обёртка для удобства использования класса QSensor. Подробнее...
| Заголовок: | #include <QAccelerometer> |
| CMake: | find_package(Qt6 COMPONENTS Sensors REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Sensors) |
| qmake: | QT += sensors |
| С момента: | Qt 5.1 |
| Наследуется от: | QSensor |
Типы public
| Перечисление | AccelerationMode { Combined, Gravity, User } |
Свойства
- accelerationMode : AccelerationMode
Public-функции
| QAccelerometer(QObject *parent = 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.
Документация по типу члена
[since 5.1] Перечисление QAccelerometer::AccelerationMode
Это перечисление представляет режим ускорения датчика ускорения.
Режим ускорения контролирует, как датчик сообщает об ускорении. QAccelerometer::Combined — единственный режим, в котором значения могут быть непосредственно физически измерены; другие — приближения.
| Константа | Значение | Описание |
|---|---|---|
QAccelerometer::Combined |
0 |
Совместно сообщается как ускорение, вызванное силой тяжести, так и ускорение, вызванное перемещением устройства пользователем. |
QAccelerometer::Gravity |
1 |
Сообщается только ускорение, вызванное силой тяжести. Перемещения устройства, вызванные пользователем, не влияют ни на что, кроме изменения направления при повороте устройства. |
QAccelerometer::User |
2 |
Сообщается только ускорение, вызванное перемещением устройства пользователем; эффект силы тяжести компенсируется. Поэтому устройство в состоянии покоя должно сообщать значения, близкие к нулю. В других API этот режим может быть известен как линейное ускорение. |
Это перечисление было добавлено или изменено в Qt 5.1.
См. такжеQAccelerometer::accelerationMode.
Документация по свойству
[since 5.1] Свойство 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 = nullptr)
Создаёт датчик как дочерний элемент parent.
[signal, since 5.1] void QAccelerometer::accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode)
Вызывается при изменении accelerationMode.
Примечание: Сигнал уведомления для свойства accelerationMode.
Эта функция была добавлена в Qt 5.1.
[virtual] QAccelerometer::~QAccelerometer()
Уничтожает датчик. Останавливает датчик, если он ещё не остановлен.
QAccelerometerReading *QAccelerometer::reading() const
Возвращает класс считывания для этого датчика.
См. такжеQSensor::reading().
[since 5.1] 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-6.2/qaccelerometer.html