Pygame 绘制矩形
- 2025-01-17 09:22:00
- admin 原创
- 24
问题描述:
我正在制作一款游戏,需要知道如何在 Python(3.2)中绘制一个矩形。
我检查了很多资料,但没有一个能确切说明如何操作。
解决方案 1:
import pygame, sys
from pygame.locals import *
def main():
pygame.init()
DISPLAY=pygame.display.set_mode((500,400),0,32)
WHITE=(255,255,255)
BLUE=(0,0,255)
DISPLAY.fill(WHITE)
pygame.draw.rect(DISPLAY,BLUE,(200,150,100,50))
while True:
for event in pygame.event.get():
if event.type==QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
main()
这将创建一个 500 像素 x 400 像素的白色简单窗口。窗口内将有一个蓝色矩形。您需要使用 来pygame.draw.rect
完成此操作,然后添加DISPLAY
常量将其添加到屏幕,添加变量 blue 使其变为蓝色(blue 是一个元组,其值等于 RGB 值中的蓝色及其坐标。
访问pygame.org了解更多信息
解决方案 2:
方法如下:
import pygame
screen=pygame.display.set_mode([640, 480])
screen.fill([255, 255, 255])
red=255
blue=0
green=0
left=50
top=50
width=90
height=90
filled=0
pygame.draw.rect(screen, [red, blue, green], [left, top, width, height], filled)
pygame.display.flip()
running=True
while running:
for event in pygame.event.get():
if event.type==pygame.QUIT:
running=False
pygame.quit()
解决方案 3:
您是否尝试过这个:
PyGame 绘图基础
摘自网站:
pygame.draw.rect(screen, color, (x,y,width,height), thick) 绘制一个矩形 (x,y,width,height) 是一个 Python 元组 x,y 是左上角的坐标 width, height 是矩形的宽度和高度 thick 是线条的粗细。如果为零,则矩形被填充
解决方案 4:
使用pygame.draw模块可以绘制矩形、圆形、多边形、线、椭圆或圆弧等形状。以下是一些示例:
pygame.draw.rect
绘制填充的矩形或轮廓。参数是目标Surface(即显示器)、颜色、矩形和可选的轮廓宽度。矩形参数是一个包含 4 个分量(x、y、宽度、高度)的元组,其中(x、y)是矩形的左上角点。或者,参数可以是pygame.Rect
对象:
pygame.draw.rect(window, color, (x, y, width, height))
rectangle = pygame.Rect(x, y, width, height)
pygame.draw.rect(window, color, rectangle)
pygame.draw.circle
绘制实心圆或轮廓。参数包括目标Surface(即显示屏)、颜色、中心、半径和可选的轮廓宽度。中心参数是一个包含 2 个分量(x、y)的元组:
pygame.draw.circle(window, color, (x, y), radius)
pygame.draw.polygon
绘制填充的多边形或轮廓。参数是目标Surface(即显示)、颜色、点列表和可选的轮廓宽度。每个点都是一个包含 2 个分量(x,y)的元组:
pygame.draw.polygon(window, color, [(x1, y1), (x2, y2), (x3, y3)])
最小示例:![IT科技](https://i.sstatic.net/5jD0C.png) repl.it/@Rabbid76/PyGame-Shapes
import pygame
pygame.init()
window = pygame.display.set_mode((200, 200))
clock = pygame.time.Clock()
run = True
while run:
clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
window.fill((255, 255, 255))
pygame.draw.rect(window, (0, 0, 255), (20, 20, 160, 160))
pygame.draw.circle(window, (255, 0, 0), (100, 100), 80)
pygame.draw.polygon(window, (255, 255, 0),
[(100, 20), (100 + 0.8660 * 80, 140), (100 - 0.8660 * 80, 140)])
pygame.display.flip()
pygame.quit()
exit()
解决方案 5:
有一种更简单的使用方法pygame.draw.rect()
:
pygame.draw.rect(surface/screen, color, [x,y,width,height])
然后只需记得更新显示。
解决方案 6:
最低限度的工作是:
# Importing the library
import pygame
# Initializing Pygame
pygame.init()
# Initializing surface
surface = pygame.display.set_mode((400,300))
# Initializing color
color = (255,0,0)
# Drawing Rectangle
pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60))
pygame.display.flip()
来源
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 项目管理必备:盘点2024年13款好用的项目管理软件
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)