【Pygame】長方形の描画

この記事では、Python言語とPygameを用いてウィンドウ(画面)に四角形を描画する方法とソースコードを解説します。

## pygame.draw.rect

Pygameでは「 pygame.draw.rect」を用いることで長方形を描画できます。
今回はこれを利用して画面に緑色の四角形を表示しました。

## 処理手順

プログラムの処理手順です。

説明
1 ゲームライブラリpygameをインポートする。(import pygame)
2 Pygameを初期化する。[pygame.init]
3 大きさ300*200の画面(ウィンドウ)を生成する。[pygame.display.set_mode]
4 画面を黒色(R=0, G=0, B=0)に塗りつぶす。[screen.fill]
5 左上座標(10,10)、幅80px、高さ50pxの長方形を線幅5pxの緑色(R=0, G=80, B=0)で描く。[ pygame.draw.rect]
6 画面を更新する。[pygame.display.update]
7 閉じるボタンが押されたら画面を閉じて終了する。

## ソースコード

サンプルプログラムのソースコードです。

# -*- coding:utf-8 -*-
import pygame
from pygame.locals import *
import sys


def main():
    pygame.init()                                               # Pygameの初期化
    screen = pygame.display.set_mode((300, 200))                # 大きさ600*500の画面を生成
    pygame.display.set_caption("GAME")                          # タイトルバーに表示する文字

    while (1):
        screen.fill((0,0,0))                                    # 画面を黒色に塗りつぶし
        pygame.draw.rect(screen,(0,80,0),Rect(10,10,80,50),5)   # 四角形を描画(塗りつぶしなし)
        #pygame.draw.rect(screen,(0,80,0),Rect(10,10,80,50))    # 四角形を描画(塗りつぶし)
        pygame.display.update()                                 # 画面を更新
        # イベント処理
        for event in pygame.event.get():
            if event.type == QUIT:                              # 閉じるボタンが押されたら終了
                pygame.quit()                                   # Pygameの終了(画面閉じられる)
                sys.exit()


if __name__ == "__main__":
    main()

## 実行結果

サンプルプログラムの実行結果です。

【おすすめ関連記事】
Pygameでゲームプログラミング
Python入門 基本文法

コメント

  1. AfterLog より:

    Pythonに魅力を感じて勉強中です、お世話になります。

    Rectですが、画面サイズを計算して数値を変えたところ、
    右下座標ではなくて辺の長さだと判明しました。
    参考にどうぞ。
    http://westplain.sakuraweb.com/translate/pygame/Rect.cgi

    • 管理人 より:

      ※AfterLog 様
      コメントありがとうございます。
      ご指摘頂いた通り、引数の意味を勘違いしておりましたので記事を修正しました。
      本当に助かりました。(ソースまで提示していただき感謝です)

      私もPythonの魅力にはまり絶賛勉強中です。
      こちらこそ、今後ともよろしくお願いします。