Pygame使用测试(二)

1. Pygame 事件对象

当用户执行特定操作(例如单击鼠标或按下键盘按钮)时,会发生“事件”。Pygame 记录每一个发生的事件。

我们可以通过调用函数(如前所示)找出发生了哪些事件,该pygame.event.get()函数返回一个pygame.event.Event对象列表(我们将简称为事件对象)。事件对象拥有的众多属性(或属性)之一是type. 该type属性告诉我们对象代表什么样的事件。用于event.type == QUIT确定游戏是否要关闭。

2. 显示

由于创建和管理游戏的复杂性,创建高分辨率游戏需要时间和精力。对于每个游戏,我们通过传递一个包含宽度和高度的元组来创建一个固定大小的窗口。然后将该元组传递给display.set_mode()函数。

Screen= = pygame.display.set_mode((300,300))

游戏的另一个重要方面是单独访问坐标。要显示一组坐标,请将 X 和 Y 值放在一个元组中,其中第一个整数是 X,第二个整数是 Y。X 值从左到右增加,Y 值从上到下增加。这些必须是整数。一个像素旨在表示屏幕上可能的最小区域,因此没有“半像素”之类的东西。

如:

BLACK = 0, 0, 0

pygame.draw.circle(Screen, BLACK, (200,50), 30)

在屏幕上限制一个黑点

3.  颜色

颜色将成为任何游戏开发框架或引擎的重要组成部分。Pygame 使用典型的 RGB 颜色系统。每种颜色的值范围从 0 到 255,总共 256 个值。您可以通过评估 256 x 256 x 256 来找到可能的颜色组合的总数,结果值远远超过 1600 万。

例如:

color1 = pygame.Color(0, 0, 0) # Black

color2 = pygame.Color(255, 255, 255)  # White

color3 = pygame.Color(128, 128, 128)  # Grey

color4 = pygame.Color(255, 0, 0)      # Red

使用fill(color)方法来填充对象。例如,将矩形指定为绿色只会将边框变为绿色。如果使用fill()方法并传递一个绿色对象,矩形将变为完全绿色。

4. 绘制功能

绘图函数用于在 Pygame 中创建对象。由于它们的相似性,它们经常共享一些用于创建所需形状的参数。

- surface参数是pygame 将在其上绘制形状的表面对象。

- 颜色参数 是指定形状的指定颜色。

- pointlist参数是一个包含坐标或“点”的元组。例如,对于一个矩形,您将传递一个包含 4 个坐标对的元组。

- width是一个可选参数,用于确定形状轮廓的大小。采用整数值。

- start_point和end_point表示一组坐标。这条线从一组坐标开始,在另一组坐标结束。同样,center_point是圆的原点。

例如:

pygame.draw.polygon(窗口界面、颜色、点列表、宽度)

例如: pygame.draw.polygon(Screen, GREEN, [(10, 30), (380, 120), (590, 300)], 3)

pygame.draw.line(窗口界面,颜色,起点,终点,宽度)

例如:pygame.draw.line(Screen, RED, (100, 20), (100, 500), 3)

pygame.draw.lines(窗口界面,颜色,封闭,点表,宽度)

例如:pygame.draw.line(Screen, RED, (100, 20), (100, 500), 3)

pygame.draw.circle(窗口界面,颜色,中心点,半径,宽度)

例如:pygame.draw.circle(Screen, WHITE, (200, 200), 30)

pygame.draw.ellipse(窗口界面,颜色,bounding_rectangle,宽度)

例如:pygame.draw.ellipse(Screen, GREEN, (500, 20, 150, 350), 10)

pygame.draw.rect(窗口界面,颜色,矩形元组,宽度)

例如:pygame.draw.rect(Screen, RED, (50, 80, 450, 500), 4)

效果图如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flysh05

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值