我正在做一个游戏,需要知道如何在python 3.2中画一个矩形。我查了很多资料,但没有一个能确切地说明如何做。谢谢!
hvvq6cgz1#
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
pygame.draw.rect
DISPLAY
vcudknz32#
下面是方法:
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()
qqrboqgw3#
你试过这个吗:PyGame Drawing Basics取自研究中心:rect(screen,color,(x,y,width,height),thickness)绘制一个矩形(x,y,width,height)是一个Python元组x,y是左手角的坐标宽度,高度是矩形的宽度和高度thickness是线条的粗细,如果为零,则填充矩形
p4tfgftt4#
使用pygame.draw模块可以绘制矩形、圆形、多边形、直线、椭圆或圆弧等形状。pygame.draw.rect绘制填充的矩形形状或轮廓。参数为target Surface(即显示)、* 颜色 、 矩形 * 和可选轮廓 * 宽度 。 矩形 * 参数是具有4个组件的元组(x,y,width,height),其中(x,y)是矩形的左上点。或者,该参数可以是pygame.Rect对象:
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绘制实心圆或轮廓。参数为目标 * 表面 (即显示)、 颜色 、 中心 、 半径 * 和可选轮廓 * 宽度 。 中心 * 参数是具有2个组件(x,y)的元组:
pygame.draw.circle
pygame.draw.circle(window, color, (x, y), radius)
pygame.draw.polygon绘制填充的多边形或轮廓。参数为目标 * 表面 (即显示)、 颜色 、 点 * 列表和可选轮廓 * 宽度 *。每个 * 点 * 都是具有2个组件(x,y)的元组:
pygame.draw.polygon
pygame.draw.polygon(window, color, [(x1, y1), (x2, y2), (x3, y3)])
最小示例: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()
4urapxun5#
最低限度的工作是:
# Importing the library import pygame # Initializing Pygame pygame.init() # Initializing surface surface = pygame.display.set_mode((400,300)) # Initialing Color color = (255,0,0) # Drawing Rectangle pygame.draw.rect(surface, color, pygame.Rect(30, 30, 60, 60)) pygame.display.flip()
Source
ftf50wuq6#
使用pygame.draw.rect()有一种更简单的方法:
pygame.draw.rect()
`pygame.draw.rect(surface/screen, color, [x,y,width,height])`
然后记得更新显示。
6条答案
按热度按时间hvvq6cgz1#
这会创建一个500 x 400像素的白色窗口,窗口内是一个蓝色的矩形,你需要使用
pygame.draw.rect
来完成这个操作,你需要添加DISPLAY
常量来把它添加到屏幕上,变量blue使它变成蓝色(blue是一个元组,它的值在RGB值和坐标中等同于蓝色。有关详细信息,请查找pygame.org
vcudknz32#
下面是方法:
qqrboqgw3#
你试过这个吗:
PyGame Drawing Basics
取自研究中心:
rect(screen,color,(x,y,width,height),thickness)绘制一个矩形(x,y,width,height)是一个Python元组x,y是左手角的坐标宽度,高度是矩形的宽度和高度thickness是线条的粗细,如果为零,则填充矩形
p4tfgftt4#
使用pygame.draw模块可以绘制矩形、圆形、多边形、直线、椭圆或圆弧等形状。
pygame.draw.rect
绘制填充的矩形形状或轮廓。参数为target Surface(即显示)、* 颜色 、 矩形 * 和可选轮廓 * 宽度 。 矩形 * 参数是具有4个组件的元组(x,y,width,height),其中(x,y)是矩形的左上点。或者,该参数可以是pygame.Rect
对象:pygame.draw.circle
绘制实心圆或轮廓。参数为目标 * 表面 (即显示)、 颜色 、 中心 、 半径 * 和可选轮廓 * 宽度 。 中心 * 参数是具有2个组件(x,y)的元组:pygame.draw.polygon
绘制填充的多边形或轮廓。参数为目标 * 表面 (即显示)、 颜色 、 点 * 列表和可选轮廓 * 宽度 *。每个 * 点 * 都是具有2个组件(x,y)的元组:最小示例:repl.it/@Rabbid76/PyGame-Shapes
4urapxun5#
最低限度的工作是:
Source
ftf50wuq6#
使用
pygame.draw.rect()
有一种更简单的方法:然后记得更新显示。