星型を描く

三角関数のこと

三角関数を理解するため、数日間はどっぷり数学に漬かった。
行き帰りの電車では、自分で決めた例題の、
『五角形を計算で描く』というお題に取り組み、
サイン、コサイン、タンジェントについては、
少なくとも何のことかわかるようになった。

三角関数ってすごい。
直線の位置と長さと角度がわかれば、どんな直線でも引ける。
コントロールポイントまで指定すれば、曲線も引ける。
すごい力を手に入れた・・・!
さっそくコーディングしてみよう。

sinとcosは逆じゃね?

さて、勉強の成果を活かし、Flashを書いてみた。
最初の線は、星型のいちばん上の点から、
右下の点へ向かう直線。
いちばん上の角に対して、x軸はサインで求めればよくて、
y軸はコサインなのね。


・・・あれ?
角度おかしくね?
ずいぶん右のほうへ傾いてる。

試行錯誤の末、xとyにsinとcosを指定していたのを、
それぞれcosとsinに入れ替えると、うまくいった。

よく考えると・・・数学の座標は、上がy軸の正方向なのに、
画面の座標は、下がy軸の正方向になっている。
それが原因なんだろうか。

それとも、何か間違って理解しているだけなんだろうか。

いちおう完成

てんやわんやの結果、星型を描くコードが完成したので、
ここに貼ってみる。

Draw Stars - wonderfl build flash online