QAccelerometer 类
QAccelerometer 类是围绕 QSensor 的一种便利包装。 更多...
头文件 | #include <QAccelerometer> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Sensors) target_link_libraries(mytarget PRIVATE Qt6::Sensors) |
qmake | QT += sensors |
继承 | QSensor |
公共类型
枚举 | AccelerationMode { Combined, Gravity, User } |
属性
- accelerationMode : AccelerationMode
公共函数
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。
成员类型文档
枚举 QAccelerometer::AccelerationMode
此枚举表示加速度传感器的加速度模式。
加速度模式控制传感器如何报告加速度。 QAccelerometer::Combined 是唯一可以直接物理测量的模式,其他的是近似值。
常量 | 值 | 描述 |
---|---|---|
QAccelerometer::Combined | 0 | 同时报告由重力引起和由用户移动设备引起的加速度。 |
QAccelerometer::Gravity | 1 | 仅报告由重力引起的加速度。用户引起的设备移动除了在设备旋转时改变方向之外,没有其他影响。 |
QAccelerometer::User | 2 | 仅报造设备移动引起的加速度,重力效果被消除。因此,静止的设备应该报告的值应是零或接近零。在其他API中,此模式可能被称为线性加速度。 |
属性文档
accelerationMode : AccelerationMode
此属性控制加速度值的报告方式。
加速度模式控制加速度传感器如何报告其值。默认模式是QAccelerometer::Combined,这意味着重力引起的加速度包含在报告的值中。
由于广义相对论,重力引起的加速度和用户移动设备引起的加速度在物理上无法区分。大多数设备使用传感器融合来确定哪些加速度部分是由重力引起的,例如通过使用旋转传感器来计算重力方向,并假设重力有一个固定的强度。因此,结果是近似值,可能不准确。《QAccelerometer::Combined》模式是最准确的一种,因为它不涉及重力近似的计算。
并非所有后端和设备都支持设置加速度模式。对于这些情况,将使用默认模式QAccelerometer::Combined,更改它没有效果。
访问函数
QAccelerometer::AccelerationMode | accelerationMode() const |
void | setAccelerationMode(QAccelerometer::AccelerationMode accelerationMode) |
通知信号
void | accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode) |
成员函数文档
[显式]
QAccelerometer::QAccelerometer(QObject *parent = nullptr)
将以parent为子类的形式构造传感器。
[虚拟无异常]
QAccelerometer::~QAccelerometer()
销毁传感器。如果传感器尚未停止,则停止传感器。
[信号]
void QAccelerometer::accelerationModeChanged(QAccelerometer::AccelerationMode accelerationMode)
当accelerationMode发生改变时发出。
注意:属性accelerationMode的通知信号。
QAccelerometerReading *QAccelerometer::reading() const
返回此传感器的读取类。
参见 QSensor::reading。
void QAccelerometer::setAccelerationMode(QAccelerometer::AccelerationMode accelerationMode)
将加速度模式设置为accelerationMode。
注意:属性accelerationMode的设置函数。
参见 accelerationMode。
© 2024 Qt公司有限公司。本文件中所包含的文档贡献权归各自所有者所有。提供的文档在此处是根据自由软件基金会发布的GNU自由文档许可证版本1.3条款许可的。Qt及其相关标志是芬兰以及/或其他国家Qt公司有限公司的商标。所有其他商标均为各自所有者的财产。