Python Pygame入門:ウィンドウにさまざまな図形を描画する方法
Pygameは、Pythonでゲームやマルチメディアアプリケーションを開発するための人気の高いマルチメディアライブラリです。この記事では、pygameモジュールを使用して、ウィンドウ内での高さ・幅・位置を考慮しながら、画面上にさまざまな図形を描画する方法を詳しく解説します。
図形描画の基本的な流れ
以下のプログラムでは、まずpygame.init()でpygameモジュールを初期化し、図形に使用する色(RGB値)とウィンドウのサイズを定義しています。
その後、pygame.drawモジュールが提供する描画関数を使って、円・楕円・長方形を順番に描いていきます。各関数の引数(色や座標、サイズなど)を適切に指定することで、図形同士が重ならないように配置できるのがポイントです。
最後に、while Trueによる無限ループでイベントを常時監視し、ウィンドウの閉じるボタン(QUITイベント)が押されるまで画面を表示し続けます。pygame.display.update()によって、描画内容が毎フレーム画面に反映されます。
主な描画関数の引数
- pygame.draw.circle(表面, 色, 中心座標, 半径, 線幅) … 円を描画します。線幅を0にすると塗りつぶしになります。
- pygame.draw.ellipse(表面, 色, 矩形領域, 線幅) … 指定した矩形領域に内接する楕円を描画します。
- pygame.draw.rect(表面, 色, 矩形領域) … 長方形を描画します。矩形領域は(x, y, 幅, 高さ)の形式で指定します。
サンプルコード
import pygame
pygame.init()
# RGB値を定義
white = (255, 255, 255)
green = (0, 255, 0)
blue = (0, 0, 150)
black = (0, 0, 0)
red = (255, 0, 0)
# ウィンドウのX・Yサイズを設定
X = 400
Y = 400
# ディスプレイサーフェスを作成
display_surface = pygame.display.set_mode((X, Y))
# pygameウィンドウのタイトルを設定
pygame.display.set_caption('Drawing')
# サーフェスを白で塗りつぶす
display_surface.fill(white)
# draw.circle()で黒い円を描画
pygame.draw.circle(display_surface,
black, (300, 250), 80, 0)
# draw.ellipse()で赤い楕円を描画
pygame.draw.ellipse(display_surface, red,
(50, 200, 100, 150), 4)
# draw.rect()で青い長方形を描画
pygame.draw.rect(display_surface, blue,
(50, 50, 150, 100))
# 無限ループ
while True:
# 発生したイベントを反復処理
for event in pygame.event.get():
# イベントの種類がQUITの場合
if event.type == pygame.QUIT:
# pygameライブラリを終了
pygame.quit()
# プログラムを終了
quit()
# 画面を更新
pygame.display.update()
実行結果
上記のコードを実行すると、白背景のウィンドウ上に、左上に青い長方形、中央下に赤い輪郭の楕円、右側に黒い塗りつぶしの円がそれぞれ描画された画面が表示されます。

まとめ
Pygameのpygame.drawモジュールを使えば、数行のコードで簡単にさまざまな図形を描画できます。座標系や引数の指定方法を理解すれば、より複雑なグラフィックやゲーム画面の作成にも応用できます。ぜひ実際にコードを動かして、図形の位置や色、サイズを変更しながら試してみてください。
-
Python Tkinterで使えるさまざまなメッセージ表示の方法
TkinterはPythonに標準搭載されているGUIモジュールです。ユーザーの操作や実行中プログラムの状態変化に応じて、さまざまなメッセージを画面に表示する機能が用意されています。特にmessageboxクラスを使うと、確認メッセージ、エラーメッセージ、警告メッセージなど、用途に応じた多彩なメッセージボックスを簡単に表示できます。例1:Messageウィジェットでテキストを表示するまずは基本的なMessageウィジェットの例です。背景色やフォントサイズ、フォントの種類などは自由にカスタマイズできます。import tkinter as tk main = tk.Tk() key = the
-
Python Tkinterで作る簡単な登録フォーム入門
Tkinterは、GUI(グラフィカルユーザーインターフェース)を開発するためのPython標準ライブラリです。Tkinterを使うことで、ウィンドウをはじめとするさまざまなUI(ユーザーインターフェース)要素を持つデスクトップアプリケーションを作成できます。推奨されているPython 3.xを使用している場合、TkinterはPythonに標準搭載されているパッケージなので、追加のインストールは一切不要です。この記事では、まずTkinterの基本的なGUIアプリケーションの作り方を解説し、その後、実際の登録フォームやローン金利計算ツールといった実用的な例まで段階的に見ていきます。シンプルなG