• 物体的运动(二)


    加入重力

    在Main.as中定义重力

    private var _gravity:Number = 0.5;

    修改onFrame函数,在把速度加到位置之前,需要在y方向的速度上再加上一个重力。

    private function onFrame(e:Event):void 
    		{
    			_circle.vy += _circle.ay;
    			_circle.vx += _circle.ax;
    			_circle.vy += _gravity;
    			_circle.vx *= _circle.friction;
    			_circle.vy *= _circle.friction;
    			_circle.x += _circle.vx;
    			_circle.y += _circle.vy;
    			
    			vTi.text = _circle.vx.toFixed(2);
    			aTi.text = _circle.vy.toFixed(2);
    		}
    
    

    加上风的效果

    private var _wind:Number = 0.3;
    
    

    修改onFrame函数,在把速度加到位置之前,需要在x方向的速度上再加上一个风力(此处是从左向右的风)。

    		private function onFrame(e:Event):void 
    		{
    			_circle.vy += _circle.ay;
    			_circle.vx += _circle.ax;
    			_circle.vy += _gravity;
    			_circle.vx += _wind;
    			_circle.vx *= _circle.friction;
    			_circle.vy *= _circle.friction;
    			_circle.x += _circle.vx;
    			_circle.y += _circle.vy;
    			
    			vTi.text = _circle.vx.toFixed(2);
    			aTi.text = _circle.vy.toFixed(2);
    		}
    
    

    加上旋转的效果

    修改onFrame函数,在把速度加到位置之后,再将x方向的速度加到物体的rotation属性。

    		private function onFrame(e:Event):void 
    		{
    			_circle.vy += _circle.ay;
    			_circle.vx += _circle.ax;
    			_circle.vy += _gravity;
    			_circle.vx += _wind;
    			_circle.vx *= _circle.friction;
    			_circle.vy *= _circle.friction;
    			_circle.x += _circle.vx;
    			_circle.y += _circle.vy;
    			_circle.rotation += _circle.vx;
    			
    			vTi.text = _circle.vx.toFixed(2);
    			aTi.text = _circle.vy.toFixed(2);
    		}
    
    
  • 相关阅读:
    网络--会话层、表示层、应用层
    Unix C
    操作系统原理
    TCP/UDP
    config OSX firewall programmatically
    Objective-C 浅谈
    OS X background process
    CreateProcessWithToken 1058 error
    WebBrowser keystroke
    MFC加载PNG图片并实现双缓冲
  • 原文地址:https://www.cnblogs.com/ywxgod/p/1708861.html
Copyright © 2020-2023  润新知