Freeth's Nephroid [見て楽しむ三角関数]
ScratchでFreeth's Nephroidを描きます。
今回も片側が交差した円のような形です。今回は右側で交差しているのがこれまでとは違う点です。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。いつもあまり変わりませんね。
次に本体です。角度を0度から720度まで変化させるとこの曲線が描けます。
準備はいつもだいたい同じです。変数を初期設定し、開始点を計算してそこに移動します。
式はこうなっています。rは半径、aは倍率(大きさ)、θは角度です。
\[ r= a\left(1+2\sin\left(\frac{1}{2}\theta\right)\right)\] この式をプログラムで書くと次のようになります。
最初に半径を計算し、半径と角度からX座標とY座標を計算します。そのままだと若干左寄りに描画されるので、最後にX座標を調整して少し右にずらしています。
移動はいつも通りです。
完成版はこちら。
今回も片側が交差した円のような形です。今回は右側で交差しているのがこれまでとは違う点です。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
最初に変数です。いつもあまり変わりませんね。
次に本体です。角度を0度から720度まで変化させるとこの曲線が描けます。
準備はいつもだいたい同じです。変数を初期設定し、開始点を計算してそこに移動します。
式はこうなっています。rは半径、aは倍率(大きさ)、θは角度です。
\[ r= a\left(1+2\sin\left(\frac{1}{2}\theta\right)\right)\] この式をプログラムで書くと次のようになります。
最初に半径を計算し、半径と角度からX座標とY座標を計算します。そのままだと若干左寄りに描画されるので、最後にX座標を調整して少し右にずらしています。
移動はいつも通りです。
完成版はこちら。