PythonのTurtleライブラリで四角形・円・六角形などさまざまな図形を描画する方法
この記事では、PythonのTurtle(タートル)ライブラリを使って、さまざまな図形を描く方法を解説します。Turtleは、Pythonに標準で用意されたお絵かきボードのような機能で、画面上の「タートル(亀)」に命令を出すことで、自由に図形を描画できます。
本記事で描画する図形は、正方形・長方形・円・六角形の4種類です。初心者にもわかりやすいよう、アルゴリズムとサンプルコード、実行結果まで順を追って紹介します。
アルゴリズム
手順1:各図形の辺の長さなどを入力として受け取ります。
手順2:forward()やleft()などのTurtleメソッドを組み合わせて、各図形を描画します。
サンプルコード
import turtle
t = turtle.Turtle()
# 正方形
side = int(input("Length of side: "))
for i in range(4):
t.forward(side)
t.left(90)
# 長方形
side_a = int(input("Length of side a: "))
side_b = int(input("Length of side b: "))
t.forward(side_a)
t.left(90)
t.forward(side_b)
t.left(90)
t.forward(side_a)
t.left(90)
t.forward(side_b)
t.left(90)
# 円
radius = int(input("Radius of circle: "))
t.circle(radius)
# 六角形
for i in range(6):
t.forward(side)
t.left(300)コードのポイント
正方形は4回、六角形は6回繰り返し処理を行うことで描画できます。特に六角形では外角が60度になるため、t.left(300)(360度 − 60度)と指定するのがポイントです。また、円はcircle()メソッドに半径を渡すだけで簡単に描けます。
実行結果
SQUARE: Length of side: 100RECTANGLE: Length of side a: 100 Length of side b: 20
CIRCLE: Radius of circle: 60
HEXAGON: Length of side: 100
このように、Turtleライブラリを使えば短いコードでさまざまな図形を描画できます。forward()で前進し、left()で方向転換するという基本動作の組み合わせだけで、正方形から六角形まで自由に作図できるのが魅力です。ぜひ辺の長さや角度を変えて、いろいろな図形の描画に挑戦してみてください。
-
Python(Tkinter)でウィンドウのスクリーンショットを撮る方法
Pythonには豊富なモジュールや関数が用意されており、多機能なアプリケーションを構築・開発できます。中でもTkinterは、GUIベースのアプリケーション作成に広く利用されている有名なPythonライブラリです。ウィンドウのスクリーンショットを撮影するアプリケーションを開発したい場合も、Tkinterを使えばGUI部分を簡単に構築できます。 この記事では、以下のステップに沿ってアプリケーションの仕組みを解説します。 必要なライブラリ – 画像処理用の Pillow(PIL)、およびファイル名のランダム化やエポック時間の処理に使用するPython標準の timeモジュール。さらに、画面キャ
-
PythonとMatplotlibで点群の中心座標を取得・可視化する方法
一連のポイント(点群)の中心を求めるには、リスト内のすべての要素を合計し、その合計値をリストの要素数(長さ)で割ります。この計算結果が、対応する各軸における中心座標となります。これはいわゆる「平均値」であり、点群の重心を表します。実装の手順データポイントとして x 座標と y 座標の2つのリストを作成します。plot() メソッドを使って、x および y のデータポイントをプロットします。x と y の各リストから、sum() と len() を組み合わせて中心座標のタプルを算出します。算出した中心点をグラフ上にプロットします。annotate() メソッドを使い、中心点に「center」とい
RECTANGLE:
Length of side a: 100
Length of side b: 20
CIRCLE:
Radius of circle: 60
HEXAGON:
Length of side: 100
