Pygame绘制一个矩形

问题描述 投票:4回答:3

我制作的游戏需要知道如何在python 3.2中绘制一个矩形。

我检查了很多来源但没有一个确切地显示如何做到这一点。

谢谢!

python pygame rectangles 2d-games
3个回答
8
投票

如果您彻底检查了您声称要检查的来源,那么您将找到如何绘制矩形 - 这是pygame中最简单的任务。但既然你问,这是怎么回事:

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像素×400像素的白色简单窗口。窗口内将是一个蓝色矩形。您需要使用pygame.draw.rect来解决这个问题,然后添加DISPLAY常量将其添加到屏幕,将蓝色变为蓝色(蓝色是一个元组,其值等于RGB值中的蓝色及其坐标。

查看pygame.org了解更多信息


3
投票

你试过这个:

PyGame Drawing Basics

取自网站:

pygame.draw.rect(screen,color,(x,y,width,height),thickness)绘制一个矩形(x,y,width,height)是一个Python元组x,y是左上角的坐标宽度,高度是矩形的宽度和高度,厚度是线的粗细。如果为零,则填充矩形


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()
© www.soinside.com 2019 - 2024. All rights reserved.