三角関数は、直角三角形のある角に対する各辺の比を表すものです。
各辺の比とは、ある辺の長さを別の辺の長さで割り算したものです。
ここで、直角三角形の直角以外の角度が決まっていれば、
各辺の比は直角三角形の大きさに関係なく決まることに注意してください。
そんな辺の比をとって何の役に立つのでしょうか。
役に立つというよりも、数学や物理の世界では無くてはならない存在です。
もちろん、CG の世界においても三角関数が無ければ CG のソフト自体が作れません。
なぜなら、2 次元や 3 次元の仮想世界で長さ・角度・座標値などを求めるときに必要な道具だからです。
度数とラジアンを変換するには以下の式を使います。
Maya では、以下の MEL コマンドを使っても変換が可能です。
三角関数は、直角三角形のどの辺と、どの辺との比をとるかでいろいろな種類があります。
主な三角関数の定義を 3 種類、以下に挙げておきます。
(辺 C と、辺 A のなす角度を α としています)
当たり前のことですが、辺 A の長さが同じならば、 角度 α が変化したとき、辺 B と辺 C の長さが変わって、各三角関数の値も変化します。 逆に、角度αが同じならば辺の長さが変化しても、各三角関数の値は変化しません。
自然界には様々な波があります。
みなさんが聴いている音は空気の波ですし、
光も波の性質を持っています。
他にも水面に立っている波もあるし、
コンピュータを動かしている電気(交流電力)も波になっています。
ところで、波の本質とは何でしょうか。
ある場所と違う場所を行ったり来たりしたり、
力が強くなったり弱くなったり、
明るくなったり暗くなったり、
濃くなったり薄くなったりなど、
波とは、ある状態と、ある状態の間を往復する運動です。
ですから、エンジンのピストン運動なども波なのです。
さて、ここで面白いことに三角関数は波を表すことができるのです。
直角三角形の辺の比にすぎない三角関数がどうして波になるのでしょうか?
前回の計算例を思いだしてください。
下図のように、長さ A の直線と X 軸の角度がわかっていると座標 (x, y) を三角関数で表すことができました。
ここで、計算をやさしくするために A の長さを 1 だと考えてみます。 すると、座標値は (cos(α), sin(α)) になります。
つぎに、角度αの値を 0 から少しずつ大きくしてみましょう。
最初は、角度が 0 なので三角関数の定義から sin(0) と cos(0) は以下のような値になります。
後は、角度を少しずつ増やしていくと、 今までの図で分かる通り、X 座標が cos(α)、Y 座標が sin(α) になっています。 例えば、横軸に角度 α、縦軸に sin(α) の値をとってグラフを作ると以下のようになります。
さらに、角度を増やしてゆき点を一周させると以下の図が出来上がります。
この図によって sin(α) が波になるのがわかると思います。
同じように、cos(α) の図も描くことができます。
ここでは、図を描きやすいように X-Y 座標を左回りに 90 度傾けていることに注意してください。
これらの図からわかることは、sin と cos の図は円運動をグラフに描いたものだということです。
円運動を横から見るとピストン運動になります。
ここで注目してもらいたいのは cos の図は 90 度右方向にずらすと sin の図とピッタリ重なるということです。
つまり、以下の式が成り立ちます。
sin を cos に重ねる場合は左方向に 90 度ずらせば良いので以下の式が成り立ちます。
円の一周が 360 度というのは古代バビロニアで決められたらしいのですが、
正確な起源は不明です。
degree (度)という単位はギリシャ語のμοτρα(moira)がアラビアに渡って daraja となり、その後、ラテン語の de gradus から degree になりました。
radian (ラジアン)はジェイムス・トンプソンによって A.C.1871 に考えだされました。