【问题标题】:Drawing a circle to a surface in pygame在pygame中绘制一个圆到表面
【发布时间】:2018-01-29 11:26:31
【问题描述】:

我正在 pygame 中编写一个程序,我想在几个表面上绘制圆圈,这样当我擦除一个圆圈(用透明色键重新绘制它)时,我会得到下面图层中的图片。但是,我似乎被困在了早期的一步,似乎无法在表面上画一个圆圈(与背景显示相反)。这是一个最小的例子:

import pygame

pygame.init()
width  = 400
height = 400
screen = pygame.display.set_mode((width, height))
surf1 = pygame.Surface((width,height))
surf1.fill((0,255,0))
pygame.draw.circle(surf1, (0,0,0), (200,2000), 5)
screen.blit(surf1, (0,0))
exit = False

while not exit:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit = True
    pygame.display.update()
pygame.quit()

我希望得到一个中间有一个黑色圆圈的绿色表面,但我只得到一个绿色表面。我究竟做错了什么? 谢谢!

【问题讨论】:

  • 圆的坐标有错,应该是pygame.draw.circle(surf1, (0,0,0), (200,200), 5),即200而不是2000。哦,你会得到一个绿色的表面,而不是一个绿色的圆圈;)
  • 谢谢,这解决了我的问题!是的,我的意思是绿色表面,感谢您的更正。
  • 不要在 cmets 中发布答案,@ThomasKühn,将它们作为答案发布。
  • @AdamBarnes 这只是一个错字,但没关系。
  • 另外,错别字是题外话,所以这个问题应该首先被关闭。

标签: python pygame draw


【解决方案1】:

圆的坐标有错别字,应该是

pygame.draw.circle(surf1, (0,0,0), (200,200), 5)

200 而不是 2000

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-12
    • 1970-01-01
    • 2013-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多