devicemotionイベント
端末の物理的な動きを検知するには
windowオブジェクトにイベントリスナを登録
window.addEventListenr(“devicemotion”,function(event){
//event .acceleration, accelarationIncludingGravity, ratationRate, interval を取得して何かする
},true);
devicemotion イベントには以下の属性が含まれる
eventaccelaration
端末にかかる加速度を
x,y,zの3軸成分で保持
単位は m/秒 ^2
各成分の値は下記属性として取得可能
event.acceleraton.x
event.acceleration.y
event.acceleration.z
端末を静止しているならx,y,zは0になる
端末が自由落下しているなら
x,yは0
zは-9.81になる
event.acceleationIncludingGravity
重力加速分を含む以外は
event.accelerationと同じ
端末を静止していると
x,yは0
zは 9.81
端末が自由落下しているなら
x,y,zは0になる
event.rotationRate
端末の回転速度を
alpha
beta
ganma
の3成分で保持
各成分の値は
event.rotationRate.alpha
event.rotationRate.beta
event.rotationRate.ganma
の属性として取得可能
event.interval
前回イベント発生時からの経過時間を保持
単位はミリ秒
重力加速度を含まないため、加速度を取得できないなら
重力加速度込みの加速度が
accelerationの値にセットされ
accelerationIncludingGravityと同じ値になることがある
これはジャイロスコープが搭載されていないデバイスとかである