【Python】turtleライブラリを使って簡単に花の図形を描画する方法
この記事は、Pythonのturtleライブラリを使って、黄色い花のような図形を描画するものです。python初心者にもわかりやすいturtleライブラリ入門としてこの記事を読んでいただければ幸いです。
turtleライブラリを使って描画する方法
下記の順序でプログラミングを作成し、表現していきます。
turtleライブラリをインポート
turtleライブラリをインストールするには下記のように記載します。turtleライブラリをインポートし、Tuという名称で利用することを宣言しています。Tuは、何でも良いのですが短い方が今後のプログラムを記載していくうえでコード作成がはかどっていくと思います。
次にオブジェクトを生成して、変数tに代入します。ここまでしてturtleを利用できるようになります。
変数の名称は,
t は turtle の頭文字
Tu は turtle の先頭の2文字
turtleライブラリについてはこちら ーーー> ここクリック
import turtle as Tu
t = Tu.Turtle()
//turtleオブジェクトを生成し、変数tに代入します。
背景色を変更する
背景色を黒色に、描画色を黄色に設定します。
pythonで色を表現するには、色のRGBである赤、緑、青の3つの色成分を0から255で表現します。今回は、標準でいくつかの色名が定義されています。それを使います。
Tu.bgcolor('black')
t.pencolor('yellow')
black RGBで指定すると→(0, 0, 0)
white RGBで指定すると→(255, 255, 255)
red RGBで指定すると→(255, 0, 0)
green RGBで指定すると→(0, 255, 0)
blue RGBで指定すると→(0, 0, 255))
yellow RGBで指定すると→(255, 255, 0)
cyan RGBで指定すると→(0, 255, 255)
magenta RGBで指定すると→(255, 0, 255)
gray RGBで指定すると→(128, 128, 128)
for文を使って花を描画する
今回のプログラムでは、円を回転させてながら花を記載していくため、繰り返しの定番であるfor文を使っていきます。各繰り返しで、左に90度ずつ回転しながら、半径190からiだけ小さい半径の円を記載していきながら花を作成していきます。
そうはいっても円でなくて楕円ではないの?という疑問が出てきますので、もう少し細かく説明します。下記のfor文を利用していないプログラムを実行すると理解しやすいです。
t.circle()関数は、2つの引数を取ります。1つ目は半径、2つ目は角度です。例えば、t.circle(190,90) は、半径190の円を90度分だけ描画します。
for i in range(190):
t.circle(190-i,90)
t.left(90)
t.circle(190-i,90)
t.left(18)
この図形は、下記の「sample.py」を記載すると表現できます。「circle」は、円を描くものということから、理解しにくいのでぜひサンプルプログラムを動かして理解を深めてみてください。
import turtle as Tu #Tuという名称へ変更してturtleをインポート
t = Tu.Turtle() #tへturtleオブジェクトを生成
Tu.bgcolor('black')
t.pencolor('yellow')
t.circle(190,90)
t.left(90)
t.circle(185,90)
t.left(90)
t.circle(175,90)
t.left(90)
t.circle(165,90)
t.left(90)
t.circle(155,90)
t.left(90)
t.getscreen()._root.mainloop()
サンプルプログラム
具体的に説明していきます。下記の4つの過程をプログラミングすることで、花びらを描いている
<1>
turtleライブラリをインポートし、Tuという名称で利用します
<2>
背景色を黒色に、描画色を黄色に設定します。
<3>
for文を使って、190回繰り返します。
各繰り返しで、左に90度回転しながら、半径190からiだけ小さい半径の円を描画します。
<4>
左に18度回転し、次の繰り返しに移ります。
import turtle as Tu #Tuという名称へ変更してturtleをインポート
t = Tu.Turtle() #tへturtleオブジェクトを生成
Tu.bgcolor('black')
t.pencolor('yellow')
t.speed(0)
for i in range(190):
t.circle(190-i,90)
t.left(90)
t.circle(190-i,90)
t.left(18)
動画
TictokにもUPしている動画を紹介します。色や形をコードを変更して試してみてください
まとめ
PythonのTurtleライブラリを使用して、黄色い花のような図形を描画する方法を紹介しました。
このプログラムはどのような用途に使用できるのか、どのように拡張して利用することができるのかを今回コードを色々変えて遊んでみてください。
Let's start programming
他のpythonはこちら ーーー> ここをクリック
“【Python】turtleライブラリを使って簡単に花の図形を描画する方法” に対して1件のコメントがあります。