UNPKG

dragonbones-runtime

Version:

the tools to build dragonbones file for diffrent framework

54 lines (47 loc) 1.55 kB
namespace egret.web { /** * @private */ export class WebMotion extends EventDispatcher implements Motion { /** * @private * */ start() { window.addEventListener("devicemotion", this.onChange); } /** * @private * */ stop() { window.removeEventListener("devicemotion", this.onChange); } /** * @private */ protected onChange = (e: DeviceMotionEvent) => { let event = new MotionEvent(Event.CHANGE); let acceleration: egret.DeviceAcceleration = { x: e.acceleration.x, y: e.acceleration.y, z: e.acceleration.z }; let accelerationIncludingGravity: egret.DeviceAcceleration = { x: e.accelerationIncludingGravity.x, y: e.accelerationIncludingGravity.y, z: e.accelerationIncludingGravity.z }; let rotation: egret.DeviceRotationRate = { alpha: e.rotationRate.alpha, beta: e.rotationRate.beta, gamma: e.rotationRate.gamma }; event.acceleration = acceleration; event.accelerationIncludingGravity = accelerationIncludingGravity; event.rotationRate = rotation; this.dispatchEvent(event); } } egret.Motion = egret.web.WebMotion; }