プログラミング入門

プログラミング初心者のためのScratch(スクラッチ)入門-ペン編(2)

プログラミング初心者の子供に何を教えたらいいの?とお悩みの保護者のためのScratch(スクラッチ)の入門講座。Scratchで猫の動かし方はわかったけど・・・次にどんなことをしたらいいの?という疑問にお答えするシリーズです。
今回は「ペン」をつかった応用作品についてお届けします。

対象は小学校高学年のお子さん向けになっています。小学校低学年のお子さんは、保護者がまず作り、お子さんがプログラムを改造するという方法がおすすめです。
 

1. Scratchで多角形を描こう

前回、三角形を描く方法をお伝えしましたが、三角形以外のいろいろな多角形をえがくプログラムを作ってみましょう。
前回説明しましたが、図形の内角・外角の関係と繰り返しの回数に気をつけましょう。
 

1-1. 絵のないスプライトを作ろう

ペンを使った作品を作るときは、絵のないスプライトを使用することが多いです。
なぜならスプライトがペンで描いた線にかぶると見えづらいからです。
 
▼スプライトがペンの線にかぶると、ペンで描いた図形が見えづらい

 
絵のないスプライトの作り方は簡単です。「新しいスプライトを描く」というボタンを押すだけ。
絵を描かないでおけば、そのまま絵のないスプライトのできあがりです。

 
Scratchのネコは今回は使わないので、スプライトのリストからネコを削除しておきます。
 

1-2. Scratchで正方形を描こう

まず、ペンがどこから出発するのか?出発地点をきめましょう。今回は、x座標が0、y座標が0からスタートします。
プログラムは下の図のように、緑の旗をおしたら、まずスタート地点のx座標が0、y座標が0にスプライトが来るようにします。

 
続けてペンを下ろして正方形を描くプログラムを追加しましょう。

 
すると・・・正方形が描かれました。

 

1-3. Scratchでペンの線を消す

さて、上のような画面で緑の旗を連打してみてください。何も起こりませんね。
ペンは「消す」という命令を出さない限り、一度描かれた線は消えることがありません。ですから、緑の旗が押されたときには線を消しておき、真っ白な状態からまた線が描かれるようにしましょう。
 
先ほどのプログラムに「消す」を追加しました。

緑の旗を押すと、一瞬だけですが線が消えてその後で正方形が描かれるようになります。
 

1-4. その他の正多角形の描き方と注意事項

上記のプログラムの●回繰り返す、と●度回すの数値を変えると多角形が作れます。多角形の繰り返しの回数と、回す角度の一覧表を以下に記載しておきますので、試してみてくださいね。


 
では試しに上の表を参考にして、正八角形を描くプログラムを作ってみます。

 
このプログラムを実行すると・・・

キレイな正八角形になりません。。。Scratchでは、スプライトがステージの端から外に出ないようになっているので、端にぶつかるとプログラム通りに動かないようです。

さらに、もう一度緑の旗を押してみましょう。

あらら・・・?今度は先ほど線が引かれていなかったところに線が引かれるようになりました。
ペンを下げっぱなしにしていたので、2回目に緑の旗を押した時に、「前回プログラムが実行された最後の場所」から、「x座標が0、y座標が0」の場所まで線が引かれてしまったんですね。
 
上の実験を参考に、次の2点を修正しましょう。
(1)スタート地点をもっと下の方にして、画面の端にぶつからないようにする。
(2)線を描き終わったらペンをあげる
 
修正したプログラムがこちらです。

緑の旗を押してみると・・・・

はいキレイな正八角形が描けました。
 
繰り返しを使って多角形を描くときには、
 ・画面の端にぶつからないようにスタート地点、もしくは辺の長さを調整する
 ・ペンの上げ下げに気をつける
 ・スプライトの向きに気をつける
という点に気をつけて作成しましょう。
 

2. いろいろなScratchのペンの技

Scratchのペンの動かし方が分かったところで、ペンの太さや色、濃さをかえていろいろなペンの表現方法について学んでいきましょう。

2-1. Scratchのペンでレインボーカラーの線を引こう

Scratchのペンのプログラムブロックの中に、

「ペンの色を●ずつ変える」というプログラムブロックがあります。
このブロックを使うとレインボーカラーで線を引くことができるんです。
 
先ほどの正八角形を描くプログラムを次のように修正しました。

「100歩動かす」を、1歩動かしてペンの色を変えるのを100回繰り返すにしてみました。
その他にもペンの太さやスプライトの向きの設定を少し変えています。

緑の旗を押して、プログラムを実行すると・・・

レインボーカラーの正八角形が描けました。
 

2-2. Scratchのペンでグラデーションの線を引こう

次はこちらのプログラムブロックを使ってグラデーションの線を引いてみます。

これは、ペンの色の濃さを変えるプログラムです。
 
先ほどのプログラムをまた少し修正しました。
ペンの最初の色を指定し、ペンの濃さがだんだん変化するようにしています。

緑の旗を押して、プログラムを実行すると・・・

グラデーションの線で正八角形を描くことができました。
 

2-3. Scratchのペンで筆ペンみたいな線を引こう

次はこちらのプログラムブロックを使って、筆ペンみたいな線を引いてみます。

先ほどのプログラムをまたまた修正しました。
ペンの太さがだんだん変わるようにしていますが、太さがちょうどよくなるように繰り返しの回数を減らしています。

緑の旗を押して、プログラムを実行すると・・・

太さが変わって、筆ペンみたいな見た目の線が引けましたね。
 

3. Scratchのスタンプについて

Scratchのペンの中にはスタンプというブロックがあります。スタンプではいったいどんなことができるのか?検証してみました。

 

3-1. Scratchの「ペン」の中にあるスタンプ

Scratchのスタンプブロックを使うと、スプライトの絵をスタンプのように、ペタン!と貼り付ける(?)ことができます。
ネコのスプライトで次のようなプログラムを作ってみました。

緑の旗を押してプログラムを実行してみると・・・猫がステージ上にスタンプされました。

 

3-2. Scratchのスタンプとクローンは何が違う?

スプライトを複製する機能には他には「クローン」というものがあります。
スタンプとクローンには、コピーされた後にプログラムが実行できるかどうかの違いがあります。

     

  • スタンプ:絵がコピーされるだけでその後にプログラムは実行されない
  •  

  • クローン:「クローンされたとき」を使うと、コピー後に実行されるプログラムを作ることができる

 
スタンプはただの絵の複製で、クローンは見た目が同じ影武者で本体と別に動くことができる、とイメージすればその違いがわかりやすいと思います。
 

3. Scratchのペン応用編のまとめ

今回はScratchのペンの機能を使って、次のようなペンの使い方をご紹介しました。
 ・レインボーペン
 ・グラデーションペン
 ・筆ペン
 ・スタンプ

ペン一つだけでも、こんなにいろいろなことができて面白い!ですね。
今回ご紹介した技をいくつか組み合わせて、レインボー筆ペンのような自分オリジナルの新しいペンの書き方を開発してみてください。

伴野悠佳 / YUKA TOMONO
この記事の著者伴野悠佳 / YUKA TOMONO
教育ヲタクの1児の母。自称ニコニコキッズクリエーター。東京理科大学大学院卒。元SE。小学生の頃から教育書を読んでいた教育ヲタク。大学では、電池の素材の性質について実験とコンピューターシミュレーションを比較する研究を行っていたことがきっかけでSEになる。出産&育休後、子ども向けプログラミング教室講師、子どもたちの考える力を育てるオンライン塾の講師。