Flash动画教程学习(二)基本运动

第二部分 基本运动

第五章 速度和加速度

  1. 向量(vector):
  2. 速度:需要用到事件ENTER_FRAME,每帧都会调用
  3. 角速度:直到角度和速度

Var vx:Number = Math.cos(angle)*speed;

Var vy:Number = Math.sin(angle)*speed;

  1. 加速度:

Vx += ax;

Ball.x += vx;

加速度为0.2

  1. 控制小球移动:

import flash.display.Sprite;

import flash.events.Event;

import flash.events.KeyboardEvent;

      import flash.ui.Keyboard;

               private function onKeyDown(event:KeyboardEvent):void{

                         if(event.keyCode == Keyboard.LEFT){

                                  ax = -2;

                         }

                         else if(event.keyCode == Keyboard.RIGHT){

                                  ax = 2;

                         }

               }

  1. 角加速度、太空船

第六章 边界和摩擦力

  1. 环境边界:使物体在一个范围内运动。

1>如果让舞台在播放器窗口发生变化时同时缩放

import flash.display.StageAlign;

    import flash.display.StageScaleMode;

stage.align = StageAlign.TOP_LEFT;

           stage.scaleMode = StageScaleMode.NO_SCALE;

2>如果物体出了范围,也就是边界:

    移除它、移回它作为新物体、屏幕折回、弹回原来的区域

  1. 摩擦力:

Var  speed:Number = Math.sqrt(vx*vx+vy*vy);

Var  angle:Number = Math.atan2(vy,vx);\

或者简单方法:

Vx*=friction; vy*=friction; ball.x+=vx; ball.y+=vy;

第七章 用户交互:移动物体

  1. 按下和放开精灵Sprite

MouseEvent.MOUSE_DOWN/UP/MOVE(ball、stage)

  1. 拖动精灵:

先监听DOWN,在监听MOVE和UP,move改变x,y;up移除监听

  1. 使用startDrag和stopDrag拖动:

在down事件中使用startDrag,在up事件中使用stopDrag

  1. 抛运动:

主要运用到,当前帧x和上一帧x来计算,mouseUp后小球的速度。

原文地址:https://www.cnblogs.com/tinytiny/p/2427416.html