Scratch(スクラッチ)「100%ペンによる動的な三角関数グラフ」作り方の説明

KIDSPRO

100%ペンブロックにより、sin(サイン)とcos(コサイン)の値が動的に表示されるグラフをプログラミングしました。
ペンブロックとは?
Scratch(スクラッチ)には、スプライトをステージ上を動かすことにより、画面上に図形を描画したり、線を引いたりできる「ペン」というブロックがあります。

Scratch 3.0(スクラッチ3.0)から、ペンブロックは拡張ブロックとなっていますのでご注意ください。

今回、この「ペン」ブロックを使い、サインとコサインの値がグラフ上で動的に変化するプロジェクトを作りました。100%ペンによるプロジェクトでは、スプライトの見た目は必要ないので、コスチュームは空の状態になっています。

KIDSPRO

「ペン」ブロックの使い方

「ペン」ブロックでは、色や太さを指定して、「ペンを下ろす」ブロックの後に、x座標とy座標などでスプライトの位置を指定することにより描画します。

KIDSPRO

上図右のスクリプトでは、ステージ上の円の中の鋭角部分と、sinθとcosθのグラフを描画しています。
円の中の鋭角部分は左周りに回転し、右側のグラフもその角度に合わせて変動するようになっています。

KIDSPRO

KIDSPRO

上図のスクリプトでは、ステージ背景の水色や「SIN」や「COS」の文字を「ペン」ブロックで描画しています。
画面を再描画せずに実行するとは?

定義ブロックを使っていますが、何度も利用するスクリプトを定義するためではなく、処理速度を上げるために使用しています。

「ペン」ブロックを使う場合、描画して消してを何度も繰り返すケースが多いので、処理速度を早くしないと動きがぎこちなくなってしまうからです。定義ブロックを作る際にオプションの「画面を再描画せずに実行する」にチェックすると、処理速度を早くすることが出来ます。

Scratch 3.0(スクラッチ3.0)100%ペンによる動的な三角関数グラフ