📜  如何在 PyGame 中绘制带圆角的矩形?

📅  最后修改于: 2022-05-13 01:54:44.581000             🧑  作者: Mango

如何在 PyGame 中绘制带圆角的矩形?

Pygame是一个Python库,旨在开发视频游戏。 Pygame 在优秀的 SDL 库之上添加了功能。这允许您使用Python语言创建功能齐全的游戏和多媒体程序。在本文中,我们将看到如何在 Pygame 中绘制带圆角的矩形。

使用的功能:

  • pygame.display.set_mode():这个函数用于初始化一个显示面。该函数以显示尺寸为参数。
  • pygame.display.flip():该函数用于更新屏幕整个显示面的内容。
  • pygame.draw.rect():该函数用于绘制矩形。它以表面、颜色和 pygame Rect 对象作为输入参数并在表面上绘制矩形。

句法:

border_radius 参数仅添加到 PyGame 2.0.0.dev8 版本中。

方法



  • 导入模块
  • 初始化 Pygame
  • 绘制一个带圆角边框的矩形
  • 显示形状

示例 1:此示例绘制一个所有角都为圆角的矩形

Python3
# Importing the library
import pygame
  
# Initializing Pygame
pygame.init()
  
# Initializing surface
surface = pygame.display.set_mode((400, 300))
  
# Initialing Color
color = (48, 141, 70)
  
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60),  2, 3)
pygame.display.flip()


Python3
# Importing the library
import pygame
  
# Initializing Pygame
pygame.init()
  
# Initializing surface
surface = pygame.display.set_mode((400, 300))
  
# Initialing Color
color = (48, 141, 70)
  
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60),  2, 0, 0, 3)
  
# Displying Object
pygame.display.flip()


Python3
# Importing the library
import pygame
  
# Initializing Pygame
pygame.init()
  
# Initializing surface
surface = pygame.display.set_mode((400, 300))
  
# Initialing Color
color = (48, 141, 70)
  
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(
    30, 30, 60, 60),  2,  border_bottom_right_radius=5)
  
# Displayig Object
pygame.display.flip()


输出:

不仅如此,Pygame 甚至可以根据要求只对一个角进行圆角处理。下面给出了使用上述方法的实现。

示例 2:此示例绘制一个仅右上角为圆角的矩形。

蟒蛇3

# Importing the library
import pygame
  
# Initializing Pygame
pygame.init()
  
# Initializing surface
surface = pygame.display.set_mode((400, 300))
  
# Initialing Color
color = (48, 141, 70)
  
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60),  2, 0, 0, 3)
  
# Displying Object
pygame.display.flip()

输出:



示例 3:此示例使用关键字参数绘制一个右下角为圆角的矩形。

蟒蛇3

# Importing the library
import pygame
  
# Initializing Pygame
pygame.init()
  
# Initializing surface
surface = pygame.display.set_mode((400, 300))
  
# Initialing Color
color = (48, 141, 70)
  
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(
    30, 30, 60, 60),  2,  border_bottom_right_radius=5)
  
# Displayig Object
pygame.display.flip()

输出: