Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのTurtleグラフィックス入門!基本コマンドと図形描画の実例集


Turtle(タートル)は、Pythonでグラフィックスを描画するための標準ライブラリです。Turtleをインポートすると、「forward(前進)」「backward(後退)」「right(右回転)」「left(左回転)」といった直感的なコマンドを使えるようになります。これらのコマンドを組み合わせることで、さまざまな図形を簡単に描くことができます。この記事では、まず基本的な使い方を確認し、その後、シンプルな例から複数のコマンドを組み合わせた美しいグラフィックの作成例まで、順番にご紹介します。

タートルの基本コマンド一覧

  • forward(10) … タートル(矢印カーソル)を10ピクセル前に移動させます。

  • backward(5) … タートルを5ピクセル後ろに移動させます。

  • right(35) … タートルを時計回りに35度回転させます。

  • left(55) … タートルを反時計回りに55度回転させます。

  • goto(x, y) … タートルを指定した座標(x, y)の位置へ移動させます。

  • dot() … 現在位置に点(ドット)を描きます。

  • shape('circle') … カーソルの形状を円に変更します。

描画例

それでは、シンプルなコマンドを使った具体的な描画例を見ていきましょう。

星形を描く

次のプログラムでは星形を描いています。カーソルを前に進めては144度右に回転する動作を繰り返すことで、きれいな星形が完成します。

import turtle

star = turtle.Turtle()
for i in range(100):
    star.forward(100)
    star.right(144)

turtle.done()

上記のコードを実行すると、次のような結果が得られます。

PythonのTurtleグラフィックス入門!基本コマンドと図形描画の実例集

アルファベットの「E」を描く

同じ考え方で、タートルを上下左右の4方向に動かすことで、英字の「E」を描くことができます。ペンの色や太さも自由に設定できるので、好みに合わせてカスタマイズしてみましょう。

import turtle

t = turtle.Turtle()
t.penup()
t.setpos(-20, 40)
t.pendown()
t.pensize(10)
t.pencolor("pink")
t.forward(100)
t.backward(100)
t.right(90)
t.forward(100)
t.left(90)
t.forward(100)
t.backward(100)
t.right(90)
t.forward(100)
t.left(90)
t.forward(100)

turtle.done()

上記のコードを実行すると、次のような結果が得られます。

PythonのTurtleグラフィックス入門!基本コマンドと図形描画の実例集

複数の正方形を描く

次の例では、共通の起点から複数の正方形を描いています。「前進」と「90度の回転」という基本コマンドだけでも、幾何学的で美しい模様を作れるのがタートルグラフィックスの魅力です。

import turtle

mult_square = turtle.Turtle()

def multiple_squares(length, colour):
    mult_square.pencolor(colour)
    mult_square.pensize(2)
    mult_square.forward(length)
    mult_square.right(90)
    mult_square.forward(length)
    mult_square.right(90)
    mult_square.forward(length)
    mult_square.right(90)
    mult_square.forward(length)
    mult_square.right(90)
    mult_square.setheading(360)

for i in range(60, 120, 15):
    multiple_squares(i, "blue")

turtle.done()

上記のコードを実行すると、次のような結果が得られます。

PythonのTurtleグラフィックス入門!基本コマンドと図形描画の実例集

スパイラル状の六角形

最後に、少し凝った例としてタートルを使った螺旋(スパイラル)構造の描画に挑戦しましょう。最終的な形は六角形になり、各辺に複数の色が使われているため、黒背景の上にカラフルで幻想的な模様が浮かび上がります。

import turtle

colors = ["pink", "yellow", "blue", "green", "white", "red"]

sketch = turtle.Pen()
turtle.bgcolor("black")

for i in range(200):
    sketch.pencolor(colors[i % 6])
    sketch.width(i / 100 + 1)
    sketch.forward(i)
    sketch.left(59)

turtle.done()

上記のコードを実行すると、次のような結果が得られます。

PythonのTurtleグラフィックス入門!基本コマンドと図形描画の実例集


  1. PythonでのCX_Freezeの使い方:スクリプトを実行ファイル(EXE)に変換する方法

    はじめに 何か面白いものを作りたいという欲求は人間の本能であり、完成したものは誰かに共有したくなるものです。Pythonでもその願いを叶えられます。ただし、作成したPythonスクリプトをそのまま共有するには、相手のマシンにも同じバージョンのPythonと、プログラムで使用しているすべてのモジュールがインストールされている必要があります。 そこで役立つのがCX_Freezeです。このツールを使えば、Pythonがインストールされていない環境でも動作するスタンドアロンの実行ファイル(.exe)を作成できます。 CX_Freezeのインストール まず、コマンドプロンプトで以下のコマンドを実行し、c

  2. PythonのTurtleグラフィックス入門!基本メソッド一覧と図形描画サンプルコード集

    Turtle(タートル)はPythonに標準搭載された特殊な機能で、専用の描画ウィンドウ上に簡単に図形を描くことができるモジュールです。 使い方はとてもシンプルです。まずturtleモジュールをインポートし、次にウィンドウ(Screen)を作成、その後タートルオブジェクトを生成します。あとは各種メソッドを呼び出すだけで、キャンバス上に自由に描画できます。この記事では、よく使われるメソッドの一覧表と、正方形・星・六角形などの具体的な描画例をサンプルコード付きで解説します。 主なTurtleメソッド一覧 メソッド パラメータ 説明 Turtle() なし 新しいタートルオブジェクトを作成