actionscript3.0 基本 三角関数を使った円運動

actionscript3.0 基本 三角関数を使った円運動

actionscriptをある程度扱えるようにはなってきたが、
3Dを扱うとすぐに頭が混乱する。
もう一度、一から勉強してみようと思う。

一番最初に、三角関数を使った運動を考えて見ます。
これが、全ての基礎になるはずなので、sin,cos,tanは何をしてるのか理解しておく。

actionscriptで三角関数を使って値を求めるときは、以下の式?をつかいますが、
これは、そもそも何を求めているのか?

var sin:Nmber = Math.sin("ラジアン角度");
var cos:Nmber = Math.cos("らじあん角度");
var tan:Nmber = Math.tan("ラジアン角度");

これらの公式は
sinは斜辺と対辺の比率を。
cosは斜辺と隣辺の比率を。
tanは隣辺と対辺の比率を。
それぞれ求めることになります。
比率が分かるということは、斜辺と角度さえ分かれば、その座標が分かるということ。
言葉にすると意味が分からないですね。ぼくの言い方悪いだけか;
三角形の定義
中学生?の時にたぶん習ったと思います。たぶん。
それはこういった公式でした。
三角関数

これを円運動に活用します。
斜辺と角度さえ分かれば、対辺と隣辺がわかるのです。

言い換えると、
回転の中心点「A」から角度30度の傾きで100pxの線を引いた「B点」の座標を求めることができます。
円運動をさせたい場合はenterFrameなどで角度を足していってあげればよい。
座標を求める

//sinとcosを求める
//[Math.PI / 180]私達が普段つかっている角度から
//ラジアン(角度)に変換する。
var sin:Number = Math.sin(rotate * Math.PI / 180);
var cos:Number = Math.cos(rotate * Math.PI / 180);

//求めた比率を使って対辺と隣辺の長さ(距離)を求める
//これがFlashでつかうx座標(隣辺),y座標(対辺)になる。
対辺 = sin * 100;
隣辺 = cos * 100;

実際の動くコードは以下のようになります。
三角関数の理解の助けになれば幸いです

flash on 2010-4-3 – wonderfl build flash online

また、度からラジアン ラジアンから度への変換は以下のように行うので
丸暗記しておくのがよいかと思います。

radian = 角度*Math.PI/180;
degrees = ラジアン*180/Math.PI;