この記事では、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入門 基本文法

コメント
Pythonに魅力を感じて勉強中です、お世話になります。
Rectですが、画面サイズを計算して数値を変えたところ、
右下座標ではなくて辺の長さだと判明しました。
参考にどうぞ。
http://westplain.sakuraweb.com/translate/pygame/Rect.cgi
※AfterLog 様
コメントありがとうございます。
ご指摘頂いた通り、引数の意味を勘違いしておりましたので記事を修正しました。
本当に助かりました。(ソースまで提示していただき感謝です)
私もPythonの魅力にはまり絶賛勉強中です。
こちらこそ、今後ともよろしくお願いします。