カメで図形を描く
カメで絵を描く
プロデルは、カメを使って模様を描けます。
まずは、カメを使って線を書いてみましょう。
窓としてウィンドウを作る 窓を表示する かめさんというカメを作る その位置は{150,150} かめさんを窓に表示する かめさんを100だけ進める 待機する
このプログラムを実行すると、青色のカメにウィンドウに表示されます。
かめを動かして絵を描く
では、いろいろと、かめを動かして絵を描いてみましょう。
かめさんを100だけ進める かめさんを右へ90だけ回転する かめさんを100だけ進める
直角に曲がった線が描かれました。
かめさんを100だけ進める
この部分は、"前へ線を引きながら100(ピクセル)分だけ進める"という意味です。
かめさんを右へ90だけ回転する
この部分は、"右へ90度だけ曲がれ"という意味です。実行するとカメの角度が変わります。
このようにウィンドウの上をかめを動かすことで、線を引けます。これをさらに2回続ければ、カメを使って四角形を描けます。
かめさんを100だけ進める かめさんを右へ90だけ回転する かめさんを100だけ進める かめさんを右へ90だけ回転する かめさんを100だけ進める かめさんを右へ90だけ回転する かめさんを100だけ進める
三角形を描く
四角形を応用して、三角形を描いてみましょう。
三角形は、3つの角の合計が180度だから、それを3つに割って、60度になるのでその外側の角度だから、・・・3回、120度角度を変えれば、できます。
かめさんを100だけ進める かめさんを右へ120だけ回転する かめさんを100だけ進める かめさんを右へ120だけ回転する かめさんを100だけ進める かめさんを右へ120だけ回転する
実行するとちゃんと三角形を描かれます。
ただし、同じプログラムを何度も書くのは、手間が掛かります。そこで「繰り返し」を使って、次のように書くとシンプルになります。
3回、繰り返す かめさんを100だけ進める かめさんを右へ120だけ回転する そして
「円」を描く
今度は、円を描いてみましょう。カメをどう動かせば、円を描けるでしょうか。
一見難しそうに思えますが、カメを"1度だけ右、1だけ前"を360回繰り返せば円を描けます。
360回、繰り返す かめさんを1だけ進める かめさんを右へ1だけ回転する そして
ちょっと遅いなと思ったら、次のように数値を変えれば、速くなります。
36回、繰り返せ かめさんを10だけ進める かめさんを右へ10だけ回転する そして
枝を描く
他にも、枝のような複雑な模様を描けます。
【カメ】が【枝の長さ】だけ【分かれ目の数】回 【分かれ目の角度】度、枝
例 木を描く
ブロッコリーに似た木を描きます。
かめさんが50だけ10回60度、枝
色を変える
カメを引く線の色を変えるには、次のように書きます。
かめさんの色は、【色】
【色】に「緑」と指定すれば、緑色になります。緑色の他には、赤・青・緑・水色・ピンク・・・などが指定できます。また、オリジナルの色を作ることもできます。
【色】で指定できる色は、「色の作り方と定数表」をご覧ください。
「枝」手順を組み合わせて模様を描く
これらを使って、もっと複雑な模様を描いてみましょう。
「枝」手順を使うと、面白い模様を描けます。
窓としてウィンドウを作る 窓を表示する かめさんというカメを作る その位置は{150,150} かめさんを窓に表示する 18回繰り返す かめさんが30だけ3回20度枝 かめさんを30だけ進める かめさんが30だけ3回60度枝 かめさんを30だけ進める かめさんが30だけ3回100度枝 かめさんを60だけ戻る かめさんが右へ180だけ回る かめさんが右へ40だけ回る そして 待機する
カメで図形を描く時に使う手順
かめを使って模様を描くのに使う手順を紹介します。
カメを動かす | |
---|---|
前に進む | 【自分】を〈【方向】へ〉、〈【長さ】だけ〉、進める |
後ろに進む | 【自分】を、〈【長さ】だけ〉、戻す |
左に向く | 【自分】を〈【方向】へ〉〈【角度】だけ〉/〈【角度】度〉回転 |
右に向く | 【自分】を〈【方向】へ〉〈【角度】だけ〉/〈【角度】度〉回転 |
移動させる | 【自分】を、【座標】へ移動 |
図形を描く | |
色を塗る | 【自分】へ、〈【座標】を〉、〈【色】で〉塗りつぶす |
色や太さを変える | |
色を変える | 【自分】の色は、[色] |
線の太さを変える | 【自分】の太さは、[数字] |
その他 | |
文字を描く | 【自分】が、【文字】を、【フォント】で書く |
カメを出す | 【自分】を表示する |
カメを隠す | 【自分】を隠す |
線を引く | 【自分】を下げる |
線を引かない (移動だけ) | 【自分】を上げる |