Pygame で円を描く

Pygame では、draw モジュールの下にある circle() 関数を使用して円を描画できます。

1 準備完了

円を描く前に、Pygame モジュールをインポートし、Pygame モジュールを初期化し、Surface オブジェクトを作成する必要があります。

import pygame
from pygame.locals import *
pygame.init()
screen = pygame.display.set_mode((600,500))

その中で、screen は作成された Surface オブジェクトです。

2 円描画の実現

2.1 circle() 関数の使い方

circle() 関数には 2 つの使用方法があります。1 つは基本的な使用方法で、もう 1 つは拡張使用方法です。

2.1.1 基本的な使い方

circle() 関数の基本的な使い方の形式は次のとおりです。

circle(surface, color, center, radius)

このうちパラメータ surface は円を描くための Surface オブジェクトを参照し、 color は円の色を指定し (パラメータ width は色が円を描く線の色か塗りつぶしの色かを決定します)、パラメータは Color クラスまたは色のタプルです; center は円の中心の位置を指定し、その型は Vector2 クラスまたは位置を表すタプルまたはリストです; radius は円の半径を示し、型はこのパラメータは整数型または浮動小数点型です. このパラメータの値が 1 未満の場合, 円を描くアクションは実行されません. circle() 関数の戻り値は Rect 型の変数で、描画される円の範囲を示します。

2.1.2 拡張使用

circle() 関数の拡張使用法の形式は次のとおりです。

circle(surface, color, center, radius, width=0, draw_top_right=None, draw_top_left=None, draw_bottom_left=None, draw_bottom_right=None)

パラメータ surface、color、center、radius は基本型と同じように使用されます. width は円を描くための線の太さを示します. width の値が 0 の場合、パラメータ color は円の塗りつぶしの色を示します. . width の値が 0 より大きい場合, パラメータ color は円を描く線の色を示し, width は線の太さを示します. width の値が 0 より小さい場合, color および width パラメータは無視されます; 次の 4 つのパラメータは、それぞれ円の右上、左上、左下、右下のみを描画するかどうかを指定します。4 つの部分、True は指定された部分のみを描画することを意味します。

2.2 circle() 関数の使用

2.2.1 基本型の使用

circle() 関数の基本コードは次のとおりです。

color = 255,0,0
center = 300,200
radius = 50
pygame.draw.circle(screen, color, center, radius)
pygame.display.update()

このうち color 変数、center 変数、radius 変数は描画する円の色、中心位置、半径をそれぞれ指定し、screen は「1 準備完了」で作成した Surface オブジェクトです。pygame.display.update() 関数の機能は、描画された円を画面に表示することです。コードの実行効果を図 1 に示します。

図1 基本的な円の描画

2.2.2 拡張型の使用

circle() 関数のスケーラビリティのコードは次のとおりです。

pygame.draw.circle(screen, color, center, radius,0,True, False,True,False)

このうち、パラメータ width の値は 0、draw_top_right と draw_bottom_left の値は True、draw_top_left と draw_bottom_right の値は False で、描画効果を図 2 に示します。

図2 拡張円描画

おすすめ

転載: blog.csdn.net/hou09tian/article/details/129095118