Maya上でリサージュ図形をビジュアライズする
三角関数のお勉強してたらリサージュ図形ってものがあるらしい。フムフム。
高校の時は文系選択だったので範囲外だった模様。
そもそも絵ばっか描いて勉強はあんまり(ゲフンゲフン
自分のメモもかねてちょっくら検証してみました。
さておき、要約すると正弦波(又は余弦波)の振動、振幅、位相の違いを表す図形、ということらしい(あってるかな?)
ざっと図解
サインカーブ
半径が1の単位円を考えてsinθ、cosθそれぞれのサインカーブを描いてみましょう。
0°≦θ≦360°のとき
sinθは半径1なのでy/1
0→1→0→-1→0と増減します。
こんな感じですねー↓
※360°は2πラジアン
cosθはx/1となるので1→0→-1→0→1と増減します。
で、こう。
図形を描く
この時の(coxθ, sinθ)を(x, y)座標とする図形を描くと半径1の円になります。
座標は(1, 0)→(0, 1)→(-1, 0)→(0, -1)→(0, 1)と変遷します。
sinθを30°ずらした図形を考えるとどうなるでしょう?
座標は(cosθ, sin(θ+30))となり、y座標が30°ぶん先行した値となります。
示す図形はこんな楕円形に
90°ずらすとsinとcosの波形が一致するので直線になります。
(cosθ, sin(θ+90°))
上記ではθのオフセットを考えましたが、比率が違う場合はどうなるでしょう?
(x, y) = (cosθ, sin2θ)
cosに比べてsinが2倍の比率で変動します。
x軸が1周期する間にy軸が2周期するので8の字のようなラインを描きます。
比率とオフセットを変化させると以下のような図形が得られるようで。
↓拾い物です。こちらはsinθどうしの比較なのでxを90°ずらして考えてください。
やっぱりビジュアライズ
図示ばっかりじゃわからん!ってことでMayaでビジュアライズしてみました。
コードはこちら。
実行するとロケータが取り出され、UI上でのθの比率オフセット変更に合わせてリサージュ図形を描きます。
Visualize lissajuous figure in Maya UI
上記図示を再現
いろんな波形を取り出してみます。
オフセットを変更するとまるで3D空間上で回転させているように見えたりしておもしろいですねー。