方向和运动数据解说

在使用方向和运动事件时,理解浏览器提供给你的值的含义非常重要。本文档将详细介绍相关的坐标系以及如何使用它们。

关于坐标系

坐标系是一种参照一个物体来定义三个轴(X、Y 和 Z)方向的系统。在使用方向和运动事件时,需要考虑两个坐标系。

地球坐标系

地球坐标系是以地球中心为固定点的坐标系;也就是说,轴是根据重力拉力和标准磁北方向对齐的。我们使用大写字母(“X”、“Y”和“Z”)来描述地球坐标系的轴。

  • X 轴沿着地面平面,与 Y 轴垂直,正方向指向东方(因此负方向指向西方)。
  • Y 轴沿着地面平面,正方向指向真北(即北极,而非磁北),负方向指向真南。
  • Z 轴垂直于地面平面;可以将其视为一条连接设备和地球中心的直线。Z 坐标值向上(远离地心)为正,向下(指向地心)为负。

设备坐标系

设备坐标系是以设备中心为固定点的坐标系。我们使用小写字母(“x”、“y”和“z”)来描述设备坐标系的轴。

Drawing representing three axes of a mobile device

  • x 轴在屏幕平面内,正方向指向右侧,负方向指向左侧。
  • y 轴在屏幕平面内,正方向指向顶部,负方向指向底部。
  • z 轴垂直于屏幕或键盘,正方向从屏幕向外延伸。

注意:在手机或平板电脑上,设备的朝向始终与屏幕的标准朝向相关;在大多数设备上,这是“纵向”朝向。在笔记本电脑上,朝向与键盘相关。如果你想检测设备朝向的变化以便进行补偿,可以使用 change 事件。

关于旋转

旋转是根据设备坐标系与地球坐标系之间的度数差来描述任何给定轴的,单位为度。

Alpha

绕 z 轴旋转——即扭转设备——会导致 alpha 旋转角度发生变化。

Positive alpha rotates the device counter-clockwise.

当设备顶部直接指向地球北极时,alpha 角度为 0°,随着设备逆时针旋转而增加。因此,90° 对应指向西方,180° 对应南方,270° 对应东方。

Beta

绕 x 轴旋转——即设备向用户倾斜或远离用户——会导致 beta 旋转角度发生变化。

Positive beta pitches the device forward toward the user.

当设备的顶部和底部与地球表面距离相等时,beta 角度为 0°;当设备向前(向用户)倾斜时,它会增加到 180°;当设备向后(远离用户)倾斜时,它会减小到 -180°。

Gamma

绕 y 轴旋转——即设备向左或向右倾斜——会导致 gamma 旋转角度发生变化。

Positive gamma tilts the devices toward the right.

当设备的左侧和右侧与地球表面距离相等时,gamma 角度为 0°;当设备向右倾斜时,它会增加到 90°;当设备向左倾斜时,它会减小到 -90°。