目標に向かって収束していく運動のサンプルを作成しました。
// 点オブジェクト
function PointClip(x, y, endX, endY, speed, limit) {
this._x = x;
this._y = y;
// 収束の目標点
var endX = endX;
var endY = endY;
// 収束スピード
var speed = speed;
// 許容誤差
var limit = limit;
// 収束処理
this.onEnterFrame = function() {
var diffX = (endX-this._x);
var diffY = (endY-this._y);
if (Math.abs(diffX)<limit && Math.abs(diffY)<limit) {
this._x = endX;
this._y = endY;
this.onEnterFrame;
} else {
this._x += (endX-this._x)/speed;
this._y += (endY-this._y)/speed;
}
};
}
var o = new PointClip(0, 0, 100, 100, 20, 1);
attachMovie('clip', 'ball', 0, o);
No comments yet.
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。