一、传感器XYZ方向
手机传感器是以左下角为原点的(手机正对本人视线):x轴向右为正,y轴向上为正,z轴从手机正面射向本人为正。
二、加速度计
加速度传感器用来获取手机加速度。
加速度传感器获取到的加速度是:手机运动的加速度与重力加速度(9.81m/s^2)的合加速度。
读数绝对值越大,加速度越大。
举个栗子:手机正面朝上平放在桌面上时,z轴只受到向下的重力加速度,此时z轴读数为-0.99,x轴,y轴读数接近0。
二、陀螺仪
陀螺仪又叫角速度传感器,用来获取手机角度变化快慢的数据,读数绝对值越大,角度变化越快。
沿着轴做顺时针旋转,则读数为正,逆时针旋转则读数为负。
三、代码示例
基于微信小程序的加速计示例代码,通过判断加速度计的读数变化,来判断手机(横屏情况)的竖直或倾斜状态:
wx.onAccelerometerChange(function (res) {
var slant
var degree = Math.abs(res.x.toFixed(2))
if (degree >=0.99) { //竖直状态
slant = false
} else if (degree < 0.8) { //倾斜状态
slant = true
}
}