Scratch(スクラッチ)でのx座標・y座標・中心点について

Scratch(スクラッチ)
スポンサーリンク

こどもに座標をどうやって教える?

まだ学校で座標を習っていないこどもに、「x座標」「y座標」と言ってもなかなか理解し難いかもしれません。

Scratchスクラッチのステージの背景で、ライブラリーから「xy-grid」を選択すると説明しやすいと思います。

このとき、スプライトの猫は大きさを30%くらいにしておいた方が見やすいです。

ちょうど中心が「x座標 0、y座標 0」で、右へ行くとx座標の値が増え左へ行くとx座標の値が減ります
また、上へ行くとy座標の値が増え下へ行くとy座標の値が減ります

スクリプトのブロックパレットの中にある「x座標を10ずつ変える」を連打してあげると、猫がちょっとずつ左へ動き、「x座標を-10ずつ変える」と書き換えてまた連打すると、今度は右へ動くので、こどもにも伝わりやすいようです。

スプライトが一番端にあるときの座標を調べる方法

例えば、スプライトが左から現れて右に消えるのを繰り返す、という動きを作ろうとした場合、ステージの一番左のx座標は-240で、一番右のx座標は240なので、下記のようなスクリプトを組むことが多いと思います。

例えばこれで、小さな猫を動かしてみます。

このように、スプライトが小さい場合はこれで問題ないのですが、大きい場合は問題があります。

例えば、横幅480pxの下記のようなスプライトの場合はどうでしょうか。

これを、先ほどと同じスクリプトで動かしてみます。

スプライトの半分が常に表示されてしまいます。

これは、x座標で指定した値が、スプライトの中心点の座標を指定しているためです。

通常、スクリプトのちょうど真ん中が、中心点となっています。(コスチュームの画面で中心点を変更することも可能です)

そのため、このスプライトを画面の左端に置く場合は、x座標-240から、さらに-240(つまり、x座標-480)の場所へ置く必要があります。

ただし、ここで一つ問題があります。

Scratchスクラッチの仕様で、「x座標を-480にする」としても、スプライトは画面から完全には消えず、画面左端に少し残ってしまうのです。

そのため、本当の左端の値はいくつなのか、調べなければなりません。

ブロックパレットの中にある「x座標を○にする」のブロックに数値を入れてダブルクリックするとスクリプトに反映されるので、-480から少しずつ数値を上げてみて、どこでスプライトが動くか注意深く見ていきます。

このスプライトの場合、「x座標を-470にする」としたところでピクッと内側に動いたので、-471が一番左端の座標だということがわかりました。

そのため、このスプライトが左端から現れて右端に消えるのを繰り返す、というスクリプトは、このようになります。

これで、意図通りに動くようになりました。

 

 

おすすめのScratchスクラッチ関連書籍
とにかく丁寧でとってもわかりやすい! 初心者に一番のおすすめ本。こどもへの教え方のアドバイスまで載っています。
文字が多いのでとっつきにくいかもしれないけど、内容がすごくいい。基礎固めの2冊目としてもおすすめ。
子どもに読ませるための入門書としておすすめ。マンガでわかりやすく書かれています。

コメント

タイトルとURLをコピーしました