导航

  • 首页
  • Tags列表
  • 管理
  • 简繁转换
Search Engine Optimization 站外搜索 站内搜索
« googel称google做动词侵犯其商标什么是XSL »

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;
}
}

发表评论:

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

Search



  • 互联网 站内搜索

最新留言

最近发表

站点统计

  • 文章总数:244
  • 评论总数:246
  • 引用总数:0
  • 浏览总数:380993
  • 当前样式:default
  • 当前语言:zh-CN

图标汇集

  • 订阅到抓虾
    新闻蚂蚁
    周博通
    订阅到狗狗
    google reader
    bloglines
    my yahoo
    newsgator
    netvibes
    Rojo
  • 通过 W3C XHTML 1.0 Transitional 校验
  • 通过 W3C CSS 校验
  • 订阅本站的 ATOM 1.0 新闻聚合
  • 订阅本站的 RSS 2.0 新闻聚合

Powered By Z-Blog 1.6 Final Build 60802

Copyright Yufuzi Some Rights Reserved.
E-mail:yufuzi80@126.com QQ:20168130
备案序号:苏ICP备06015492号