![ロング体験会](https://manabiail-steam.com/wp-content/uploads/2023/03/263f08deef99ee29c35bfdad3906e03d.png)
Scratch 座標と向きの説明
![](https://manabiail-steam.com/wp-content/uploads/2022/01/08799b38c9fd97e50177830e964f7ddf.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/22396435-scaled-e1643322580280-150x150.jpg)
Scratchでスプライトを画面の右上に移動させたいけど、どうすればいいの?
![](https://manabiail-steam.com/wp-content/uploads/2022/01/22396435-scaled-e1643322580280-150x150.jpg)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/22396435-scaled-e1643322580280-150x150.jpg)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/22396435-scaled-e1643322580280-150x150.jpg)
スプライトが思った方向に動かないけど、どうすればいいの?
こういった疑問にお答えします。
こんにちはサポーターのもつさんです。
Scratchの基本である、座標と向きについて、解説します。
座標と向きが分かると、スプライトを思い通りに動かすことができます。
是非最後までご覧ください。
Scratchにおける座標(ざひょう)とは
![](https://manabiail-steam.com/wp-content/uploads/2022/06/image-6.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/06/image-6.png)
スプライトの位置は、xとyの座標で表されます。
- 左右の位置:x。左端が-240、右端が240
- 上下の位置:y。上端が180、下端が-180
- 真ん中は (0,0)です。
スプライトを動かすためのコマンド(ブロック)
スプライトをどこかの場所に動かしたいときは
この2つを使います
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-2.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-2.png)
2つの違いは「1秒で」がついているかどうかです。
ついていない方は 瞬間移動です。
パッと指定の場所に移動します。
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-3.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-3.png)
「1秒で」がついている方は 1秒かけて指定の場所に移動します。
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-4.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-4.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/2.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/2.gif)
他にも左右移動、あるいは上下移動だけをしたい場合は、この4つを使います
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-5.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-5.png)
座標を調べたいとき
条件文などで、スプライトの現在の位置を調べたいときは、この2つを使います
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-1.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image-1.png)
例えば、下図のように書けば、「スプライトが真ん中より右にいるなら」
という条件分岐をすることができます。
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/image.png)
Scratchにおける向き
![](https://manabiail-steam.com/wp-content/uploads/2022/06/image-7.png)
![](https://manabiail-steam.com/wp-content/uploads/2022/06/image-7.png)
続いて、向きについてです
向きはスプライトがどちらを向いているかを表します
- 上(12時の方向)=0°
- 右(3時の方向)=90°
- 下(6時の方向)=180°
- 左(9時の方向)=-90°
ポイントは、右側がプラスで左側がマイナスであることです
特に9時の方向を270°と間違わないようにすることが大事です
(他のプログラミング言語では270°としているものもあります)
向きを変えるために使うコマンド(ブロック)
こちらは直感的にわかりやすいですよね。
迷路を進むゲームなどでよく使いますが
を使えば右に曲がります
を使えば左に曲がります
「10歩動かす」のコマンド(ブロック)について
こちらは今向いている”向き”に向かって10だけ進むと言うコマンドです。
例)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/3.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/3.gif)
もう少しゆっくり動くように書き換えると
![](https://manabiail-steam.com/wp-content/uploads/2022/01/4.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/01/4.gif)
「45度の方向に向ける」
「10歩進む」
としたので右斜め上に動きます
スプライト(ネコ)が変な方向を向いちゃう!どうすればいい?
こんなことで困ってませんか?
理想
現実
![](https://manabiail-steam.com/wp-content/uploads/2022/06/GIF-2022-06-18-6-24-38-1.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/06/GIF-2022-06-18-6-24-38-1.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/06/GIF-2022-06-18-6-25-31.gif)
![](https://manabiail-steam.com/wp-content/uploads/2022/06/GIF-2022-06-18-6-25-31.gif)
こんな場合は、回転方法を左右のみにすれば解決します。
![](https://manabiail-steam.com/wp-content/uploads/2023/01/e08be51ebf89ce29cd03ed283a219b70-1-300x169.png)
![](https://manabiail-steam.com/wp-content/uploads/2023/01/e08be51ebf89ce29cd03ed283a219b70-1-300x169.png)
まとめ
Scratchの基本である座標と向きについて解説しました。
いろんなコマンド(ブロック)を使ってスプライトを動かしてみてください