钓鱼方法钓鱼技巧钓鱼攻略钓鱼秘籍钓鱼装备,尽在渔夫子

myMove类

myMove.as

class myMove{
  /*
  t:time;//运动时间
  b:begin;//起始运动地点
  c:change;//运动d时间改变的距离
  d:duration;//持续的时间
  */

  /*匀速直线运动*/
  static function linearTween(t:Number,b:Number,c:Number,d:Number):Number{
    return c*t/d + b;
}
  /*二次缓入运动,加速*/
  static function easeInQuad(t:Number,b:Number,c:Number,d:Number):Number{
    return c*(t/=d)*t + b;
}
/*二次缓出运动,减速*/
  static function easeOutQuad(t:Number,b:Number,c:Number,d:Number):Number{
    return -c *(t/=d)*(t-2) + b;
}
/*二次缓入--缓出运动*/
  static function easeInOutQuad(t:Number,b:Number,c:Number,d:Number):Number{
    if ((t/=d/2) < 1) return c/2*t*t + b;
    return -c/2 * ((--t)*(t-2) - 1) + b;
}
/*三次缓动函数*/
static function easeInCubic(t:Number,b:Number,c:Number,d:Number):Number{
  return c*(t/=d)*t*t + b;
}
static function easeOutCubic(t:Number,b:Number,c:Number,d:Number):Number{
  return c*((t=t/d-1)*t*t + 1) + b;
}
static function easeInOutCubic(t:Number,b:Number,c:Number,d:Number):Number{
  if ((t/=d/2) < 1) return c/2*t*t*t + b;
  return c/2*((t-=2)*t*t + 2) + b;
}
/*四次缓动函数*/
static function easeInQuart(t:Number,b:Number,c:Number,d:Number):Number{
  return c*(t/=d)*t*t*t + b;
}
static function easeOutQuart(t:Number,b:Number,c:Number,d:Number):Number{
  return -c * ((t=t/d-1)*t*t*t - 1) + b;
}
static function easeInOutQuart(t:Number,b:Number,c:Number,d:Number):Number{
  if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
  return -c/2 * ((t-=2)*t*t*t - 2) + b;
}
/*五次缓动函数*/
static function easeInQuint(t:Number,b:Number,c:Number,d:Number):Number{
  return c*(t/=d)*t*t*t*t + b;
}
static function easeOutQuint(t:Number,b:Number,c:Number,d:Number):Number{
  return c*((t=t/d-1)*t*t*t*t + 1) + b;
}
static function easeInOutQuint(t:Number,b:Number,c:Number,d:Number):Number{
  if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
  return c/2*((t-=2)*t*t*t*t + 2) + b;
}
/*正弦缓动函数*/
static function easeInSine(t:Number,b:Number,c:Number,d:Number):Number{
  return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
}
static function easeOutSine(t:Number,b:Number,c:Number,d:Number):Number{
  return c * Math.sin(t/d * (Math.PI/2)) + b;
}
static function easeInOutSine(t:Number,b:Number,c:Number,d:Number):Number{
  return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
}
/*指数缓动函数*/
static function easeInExpo(t:Number,b:Number,c:Number,d:Number):Number{
  return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
}
static function easeOutExpo(t:Number,b:Number,c:Number,d:Number):Number{
  return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
}
static function easeInOutExpo(t:Number,b:Number,c:Number,d:Number):Number{
  if (t==0) return b;
  if (t==d) return b+c;
  if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
  return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
}
/*弧形缓动函数*/
static function easeInCirc(t:Number,b:Number,c:Number,d:Number):Number{
  return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
}
static function easeOutCirc(t:Number,b:Number,c:Number,d:Number):Number{
  return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
}
static function easeInOutCirc(t:Number,b:Number,c:Number,d:Number):Number{
  if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
  return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
}
}

标签:flash
分类:生活点滴| 发布:渔夫子| 查看: | 发表时间:2006-8-16
原创文章如转载,请注明:转载自渔夫子 http://www.yufuzi.net/
本文链接:http://www.yufuzi.net/post/flash_myMove.html

相关文章

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。