ActionScriptではcurveTo()メソッドにより曲線を描画することができる。この曲線の公式は二次ベジェ曲線。曲線の開始点を(x0,y0),コントロールポイントを(x1,y1),終了点を(x2,y2)とすると、次のようにして曲線を書くことができる。
graphics.moveTo(x0,y0); graphics.curveTo(x1,y1,x2,y2);
二次ベジェ曲線で指定するコントロールポイントはカーブする曲線を指定するが、描かれるカーブ自体はコントロールポイントを通らない。
ある点(x,y)を通るような曲線を描きたいときには次のようにしてコントロールポイントを求めれば良い。
x1 = x*2 - (x0+x2)/2; y1 = y*2 - (y0+y2)/2;
通りたい点に2をかけて、そこから開始点と終了点の平均を引いている。ここから求められるコントロールポイントを指定すれば良い。
実際にテストしたみたのがこちら。
wonderfl build flash online | 面白法人カヤック