zoukankan      html  css  js  c++  java
  • 重力感应示例

    package 
    {
    import flash.display.Sprite;
        import flash.display.StageAlign;
        import flash.display.StageScaleMode;
        import flash.events.Event;
        import flash.events.AccelerometerEvent;
        import flash.sensors.Accelerometer;
     public class AccelerometerTest extends Sprite
        {
            private var ball:Sprite;
            private var accelerometer:Accelerometer;        
            private var xSpeed:Number = 0;
            private var ySpeed:Number = 0;
            private const RADIUS = 20;
            
            public final function AccelerometerTest()
            {
                stage.scaleMode = StageScaleMode.NO_SCALE;
                stage.align = StageAlign.TOP_LEFT;
                
                createBall();
                                        
                if (Accelerometer.isSupported)
                {
                    accelerometer = new Accelerometer();
                    accelerometer.addEventListener(AccelerometerEvent.UPDATE, accUpdateHandler);
                    stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
                }
            }
     private final function createBall():void
            {
                 ball = new Sprite();
                 ball.graphics.beginFill(0xFF0000);
                 ball.graphics.drawCircle(0, 0, RADIUS);
                 ball.cacheAsBitmap = true;
                 ball.x = stage.stageWidth / 2;
                 ball.y = stage.stageHeight / 2;
                 addChild(ball);
            }
    
            private final function enterFrameHandler(event:Event):void
            {
                event.stopPropagation();
                moveBall();
            }
            private final function moveBall():void
            {
                var newX:Number = ball.x + xSpeed;
                var newY:Number = ball.y + ySpeed;
                if (newX < 20)
                {
                    ball.x = RADIUS;
                    xSpeed = 0;
                }
                else if (newX > stage.stageWidth - RADIUS)
                {
                    ball.x = stage.stageWidth - RADIUS;
                    xSpeed = 0;
                }
                else
                {
                    ball.x += xSpeed;
                }
                
                if (newY < RADIUS)
                {
                    ball.y = RADIUS;
                    ySpeed = 0;
                }
                else if (newY > stage.stageHeight - RADIUS)
                {
                    ball.y = stage.stageHeight - RADIUS;
                    ySpeed = 0;
                }
                else
                {
                    ball.y += ySpeed;
                }
            }
    

     

      private final function accUpdateHandler(event:AccelerometerEvent):void
            {
                xSpeed -= event.accelerationX * 2;
                ySpeed += event.accelerationY * 2;
            }
        }
    }
  • 相关阅读:
    持续集成(转)
    Java中前台JSP请求Servlet实例(http+Servlet)
    Java中Map集合的四种访问方式(转)
    Python中字符串操作
    Python中的range函数用法
    Python学习资料下载地址(转)
    Linux性能工具介绍
    性能问题定位方法
    录制脚本前需要理解的几个基本概念
    Python 硬件底层基础理论
  • 原文地址:https://www.cnblogs.com/kuailezoe/p/3484307.html
Copyright © 2011-2022 走看看