my_mc._y+=dy*.3; };
演示:
8.Spring弹簧
spring非常类似于easing,但它的效果比easing更cool。一般的方法为定义一个目标点,计算出到它的距离,加速度为距离与摩擦系数的积,同时还需要使用摩擦。
代码:
var targetx = 200; var targety = 150; fraction = .9; vx = 0; vy = 0; onEnterFrame = function () { if (!dragging) { //起始点与目标地点的距离 dx = targetx-my_mc._x; dy = targety-my_mc._y; //加速度 vx += dx*.3; vy += dy*.3; //加入摩擦 vx *= fraction; vy *= fraction; my_mc._x += vx; my_mc._y += vy; } }; my_mc.onPress = function() { this.startDrag(); dragging = true; }; my_mc.onRelease=function() { this.stopDrag(); dragging = false; };
演示:
spring 与鼠标相连
下面我们要对spring 进行一下简单的扩展,我们可以将目标地点设为光标的坐标值,同时可以使用drawing api用画线的方式将其相连起来。
上一篇:Flash 8.0前瞻——揭开8 ball的薄面纱
下一篇:Flash视觉特效实例之花样年华
|