嗨,我在画圆时遇到问题
ERROR: module object has no attribute 'circle'
。我做错了什么?
还有如何将数字放入圆圈中?
例如:(第一次点击是0的圆圈,第二次是1的圆圈,依此类推)
import pygame
WHITE = (255, 255, 255)
BLUE = ( 0, 0, 255)
GREEN = ( 0, 255, 0)
RED = (255, 0, 0)
TEXTCOLOR = ( 0, 0, 0)
(width, height) = (200, 300)
running = True
def main():
global running, screen
pygame.init()
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption("TUFF")
screen.fill(background_color)
pygame.display.update()
while running:
ev = pygame.event.get()
for event in ev:
if event.type == pygame.MOUSEBUTTONUP:
drawCircle()
pygame.display.update()
if event.type == pygame.QUIT:
running = False
def getPos():
pos = pygame.mouse.get_pos()
return (pos)
def drawCircle():
pos=getPos()
pygame.draw.circl(screen, BLUE, pos, 20)
if __name__ == '__main__':
main()
您输错了函数名称。正确的名称是 pygame.draw.circle.
def drawCircle():
pos=getPos()
pygame.draw.circle(screen, BLUE, pos, 20) # Here <<<
这是如何在 pygame 中画圆;
import pygame
pygame.init()
screen = pygame.display.set_mode((x, y)) #x and y are height and width
pygame.draw.circle(screen, (r,g,b), (x, y), R, w) #(r, g, b) is color, (x, y) is center, R is radius and w is the thickness of the circle border.
以下是正确画圆的方法
import pygame
window = pygame.display.set_mode((500,500))
red = (200,0,0)
circleX = 100
circleY = 100
radius = 10
active = True
while active:
for event in pygame.event.get():
if event.type == pygame.QUIT:
active = False
pygame.draw.circle(window,red,(circleX,circleY),radius) # DRAW CIRCLE
pygame.display.update()
维护一个计数器来记录你画了多少个圆,并以与圆心相同的坐标写下这个数字。 该命令也是 pygame.draw.circle 而不是 pygame.draw.circl
如果你想要一个椭圆,你可以使用函数:pygame.draw.ellipse(surface, color,bounding_rectangle, width=0)。这将绘制一个由指定矩形外接的椭圆!