类名 QRotationReading#

QRotationReading 类表示旋转传感器的读数。

Inheritance diagram of PySide6.QtSensors.QRotationReading

概要#

属性#

  • x - 绕 x 轴的旋转

  • y - 绕 y 轴的旋转

  • z - 绕 z 轴的旋转

方法#

  • def __init__()

  • def setFromEuler()

  • def x()

  • def y()

  • def z()

注意

此文档可能包含从 C++ 自动转换为 Python 的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译问题,也可以在 https:/bugreports.qt.io/projects/PYSIDE 上创建工单来告知我们

详细说明#

QRotationReading 单位#

该旋转读数包含 3 个角度值,用度衡量,定义了设备在三维空间中的方向。这些角度与偏航角、俯仰角和横滚角类似,但仅使用右手旋转法以及右手笛卡尔坐标系定义的轴向。

../../_images/sensors-rotation.jpg

以下顺序将这三个角度应用到设备上。

  • 右手旋转 z [-180, 180]。从 y 轴开始,逆时针方向增加。

  • 右手旋转 x [-90, 90]。从新(旋转过一次的)y 轴开始,增加到 z 轴。

  • 右手旋转 y [-180, 180]。从新(旋转过两次的)z 轴开始,增加到 x 轴。

以下是一个显示应用角度顺序的实例。

../../_images/sensors-rotation-anim.gif

z 角的 0 点被定义为固定的、外部的实体,并且对设备是特定的。虽然通常使用磁北作为参考点,但这可能不是。不要尝试比较不同设备上 z 角的值,甚至在同一设备上,如果它移动了显著的距离,也不要比较。

如果设备无法检测到固定的外部实体,则z角度始终为0,并且hasZ属性将设置为false。

x和y角度的0点定义为当设备的x和y轴朝向地平线时。以下是一个x值随设备移动而变化的示例。

../../_images/sensors-rotation2.jpg

以下是一个y值随设备移动而变化的示例。

../../_images/sensors-rotation3.jpg

注意,当x为90或-90时,z和y的值会在同一轴上旋转(由于运算顺序)。在这种情况下,y旋转将为0。

注意

当使用from __feature__ import true_property时可以直接使用属性,否则通过访问函数。

属性xᅟ: float#

此属性包含绕x轴的旋转。

以度为单位测量。

另见

QRotationReading 单位

访问函数
属性yᅟ: float#

此属性包含绕y轴的旋转。

以度为单位测量。

另见

QRotationReading 单位

访问函数
属性zᅟ: float#

此属性包含绕z轴的旋转。

以度为单位测量。

另见

QRotationReading 单位

访问函数
__init__(parent)#
参数parent

QObject

setFromEuler(x, y, z)#
参数parent
  • x – float

  • y – float

  • z – float

从三个欧拉角度设置旋转。

此方法应由后端调用。

角度以度为单位测量。旋转顺序很重要,首先应用z旋转,然后是x旋转,最后是y旋转。

x()#
返回类型:

float

属性xᅟ的获取器。

y()#
返回类型:

float

属性 y的 getter

z()#
返回类型:

float

属性 z的 getter