円とカージオイド [見て楽しむ三角関数]
Scratchで円とカージオイドを描きます。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。今回も極座標方程式ではなく媒介変数方程式なので半径ありません。
次に本体です。角度を0度から360度まで変化させながら計算、移動を繰り返すとこの曲線が描画できます。
次に準備です。ペンの準備、変数の初期化、開始座標の計算、開始座標への移動を行なっています。
式はこうなっています。θは角度です。
\[ x= \frac{\cos^3(\theta)}{2\cos^3(\theta)-2\cos(\theta)+1} \\
y=\frac{\sin(2\theta)\sin^2\left(\frac{\theta}{2}\right)}{2\cos^3(\theta)-2\cos(\theta)+1} \] 複雑すぎて考える気もおきません。機械的にプログラムにすると次のようになります。XとYの計算はそれぞれ一行に書くこともできますが、長すぎて画面からはみ出るので分割しています。\(cos(\theta)\)は繰り返し出てくるので、先に計算しておいて結果を使い回しています。
移動はいつも通りです。
完成版はこちら。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。今回も極座標方程式ではなく媒介変数方程式なので半径ありません。
次に本体です。角度を0度から360度まで変化させながら計算、移動を繰り返すとこの曲線が描画できます。
次に準備です。ペンの準備、変数の初期化、開始座標の計算、開始座標への移動を行なっています。
式はこうなっています。θは角度です。
\[ x= \frac{\cos^3(\theta)}{2\cos^3(\theta)-2\cos(\theta)+1} \\
y=\frac{\sin(2\theta)\sin^2\left(\frac{\theta}{2}\right)}{2\cos^3(\theta)-2\cos(\theta)+1} \] 複雑すぎて考える気もおきません。機械的にプログラムにすると次のようになります。XとYの計算はそれぞれ一行に書くこともできますが、長すぎて画面からはみ出るので分割しています。\(cos(\theta)\)は繰り返し出てくるので、先に計算しておいて結果を使い回しています。
移動はいつも通りです。
完成版はこちら。