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