SSブログ

ド・スルーズのコンコイド Conchoid of de Sluze [見て楽しむ三角関数]

曲線シリーズの100回目はド・スルーズのコンコイドです。Scratchでこの曲線を描きます。

ConchoidOfDeSluze.png

曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。

まず変数です。これらの変数を使って座標を計算し、曲線を描画します。

deSluze-vars.png

sec変数は、三角関数の一種secを計算した値を保持します。

本体はこうなっています。今回はa=-3からa=6まで10本の線を描画するので、二重ループになっています。内側の繰り返しで一本の線を描きます。

deSluze-main.png

次に準備です。プログラムを実行したときに一度だけ行う処理を記述しています。

deSluze-prep.png

次に初期化です。このブロックでは線一本を描画するために角度をリセットして描画を開始する座標に移動します。

deSluze-init.png

次に計算ブロックです。曲線のX座標とY座標を式から求めています。

deSluze-calc.png

この計算ブロックは次の式をScratchで実装したものです。
\[ r = \sec(\theta)+a\cos(\theta) \]ブロックの最初に呼び出しているsecは次のように計算できます。

secant-generic.png

計算式のrは半径です。英語のradiusの最初の一文字です。X座標Y座標は先に計算した半径と与えられた角度から求められます。

移動はいつも通りです。

move-generic.png

完成版はこちら
nice!(0)  コメント(0) 
共通テーマ:日記・雑感

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。