ハート Heart [見て楽しむ三角関数]
Scratchでハート型を描きます。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
まず変数です。
コサイン1、コサイン2、コサイン3、コサイン4、サインは計算の途中経過を記録しておくためのものです。関数名と区別しやすいように変数名をカタカナにしています。
本体はまた同じです。
次に準備です。
特筆するようなことはありません。単に描画すると絵が小さいので、倍率を11倍に設定しています。準備についての詳しい説明は初回にありますので、参考にしてください。
次に計算処理です。計算に使う式はWolfram MathWorldにあります。一応元になった式もここに書いておきます。θは角度ですので、プログラムでも該当する箇所に「角度」変数を使います。
\[ x = 16\sin^3(\theta) \\
y = 13\cos(\theta)-5\cos(2\theta)-2\cos(3\theta)-\cos(4\theta) \\
0 \le \theta \le 360 \] 前回と比べると複雑な式ですね。これを見たからといってハートが描画できることは私には想像できません。ですが、下のコードとくらべれば式を分解してコードを書く方法はわかるかもしれません。
最後はY座標を上に23だけ移動しています。ハートが画面からはみ出さないようにです。
移動はいつもと同じです。
座標の計算結果にしたがってスプライドを移動していくと、ハートが描画できます。
完成版はこちら。上のコードにアニメーションを少し追加しています。
曲線を描く処理の詳細は初回で説明していますので、そちらを参照してみてください。違う曲線ですが流れは同じです。
まず変数です。
コサイン1、コサイン2、コサイン3、コサイン4、サインは計算の途中経過を記録しておくためのものです。関数名と区別しやすいように変数名をカタカナにしています。
本体はまた同じです。
次に準備です。
特筆するようなことはありません。単に描画すると絵が小さいので、倍率を11倍に設定しています。準備についての詳しい説明は初回にありますので、参考にしてください。
次に計算処理です。計算に使う式はWolfram MathWorldにあります。一応元になった式もここに書いておきます。θは角度ですので、プログラムでも該当する箇所に「角度」変数を使います。
\[ x = 16\sin^3(\theta) \\
y = 13\cos(\theta)-5\cos(2\theta)-2\cos(3\theta)-\cos(4\theta) \\
0 \le \theta \le 360 \] 前回と比べると複雑な式ですね。これを見たからといってハートが描画できることは私には想像できません。ですが、下のコードとくらべれば式を分解してコードを書く方法はわかるかもしれません。
最後はY座標を上に23だけ移動しています。ハートが画面からはみ出さないようにです。
移動はいつもと同じです。
座標の計算結果にしたがってスプライドを移動していくと、ハートが描画できます。
完成版はこちら。上のコードにアニメーションを少し追加しています。
コメント 0