我正在尝试打印图案。 Pattern
在C ++中,当我们使用'*'打印图案时,当我们想在特定位置打印图案时,我们将打印空间。但是在使用矩形的pygame中,我们希望[x,y]坐标将其绘制在屏幕上。正如您在模式中看到的那样,我需要从左开始的4块空间,然后绘制一个矩形,在第二行中绘制3个块空间,然后再绘制两个矩形,依此类推。同样,对称性也应该存在。 我无法准确绘制它。请帮我。
以下是我的代码-:
import pygame
pygame.init()
screen_width = 580
screen_height = 650
screen = pygame.display.set_mode((screen_width,screen_height))
brick_width = 60
brick_height = 20
bricks = []
k = 4
for i in range(5):
for j in range(0,i+1):
bricks.append(pygame.Rect(k*brick_width,i * (brick_height+2),brick_width,brick_height))
k -= 1
done = False
while not done:
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
for i in range(len(bricks)):
pygame.draw.rect(bricks[i])
pygame.display.flip()
答案 0 :(得分:0)
我建议看这本教科书,尤其是提到get_rect()方法的部分。
https://inventwithpython.com/makinggames.pdf
通常,您似乎需要Rect对象。这些包含有关给定对象的所有位置和尺寸信息,可让您计算命中检测等。使用blit()运算符和图像,您还可以在屏幕上表示这些矩形。
从pygame的基础知识开始,并结合示例,对本书进行浏览。尽管某些部分可能看起来很乏味,但了解每个对象的工作原理至关重要。