Pygame - 如果你用一个小于表面的矩形来表面,会发生什么?

时间:2013-12-17 03:00:40

标签: python pygame rect

在此blit电话

screen = pygame.Surface(640, 480)
bgsurf = pygame.Surface(640, 480)
new_rect = pygame.Rect(0, 0, 80, 80)

screen.blit(bgsurf, new_rect, new_rect)

pygame如何决定bgsurf中哪个部分会复制到new_rect区域的屏幕?

1 个答案:

答案 0 :(得分:3)

来自pygame docs:

  

blit(source,dest,area = None,special_flags = 0) - >矩形

     

在此Surface上绘制源Surface。平局可以定位   与dest参数。 Dest可以是坐标对   表示源的左上角一个Rect也可以   作为目的地传递,矩形的topleft角将   用作blit的位置。目的地的大小   矩形不影响blit。

     

也可以传递可选的区域矩形。这代表了一个   要绘制的源曲面的较小部分。

正如你所看到的,pygame会在(0,0)处整个表面blit。 如果要对表面的一部分进行blit,则需要传入Rect。

区域

编辑:

在你的情况下,它会将new_rect给出的地下blit放到屏幕上,左上角将放在(0,0)处。