あなたが言及したように、クイックアンドダーティは、極座標からデカルト座標(sinとcos)を使用することです:
import flash.events.Event;
var a:Number = 0;//angle
var ra:Number = .01;//random angle increment
var rx:Number = 100;//random trajectory width
var ry:Number = 100;//random trajectory height
graphics.lineStyle(1);
addEventListener(Event.ENTER_FRAME,function (event:Event):void{
a += ra;//increment angle
rx += a;//fidle with radii otherwise it's gonna be a circle
ry += a;//feel free to play with these
graphics.lineTo(225 + (Math.cos(a) * rx),//offset(225,200)
200 + (Math.sin(a) * ry));//and use pol to car conversion
if(a > Math.PI) reset();//reset at 180 or any angle you like
});
function reset():void{
trace('reset');//more values to tweak here
a = Math.random();
ra = Math.random() * .0001;
rx = 20 + Math.random() * 200;
ry = 20 + Math.random() * 200;
}
乱数は、(より平らなものではなく)ほぼ丸い楕円を得るために微調整する必要がありますが、原理は同じです。
ライブラリの使用を気にしない場合は、TweenLite の BezierPluginまたはBezierThroughPluginを試してみませんか。開始点/終了点を簡単にランダム化できるはずです。
また、二次、三次、エルミート補間に関するこの古い回答の最初の部分をチェックすることもできます
私の例ではパスを描いていますが、もちろん、これらの計算された x、y 座標を使用して DisplayObject に接続し、画面上で移動することもできます。