pygame是一个设计用来开发游戏的python模块,其实说白了和time、os、sys都是一样的东东。今天开始正式学习pygame,下载地址:www.pygame.org。下载后安装完成即可,在pygame的学习中,我使用了spe编辑器,感觉还不错。
1、pygame窗口
pygame绘制图形前,首先需要建立一个窗口,说来很简单,请看下面的代码,怎么样,是不是很简单。
复制代码 代码如下:
import pygame #这句不用注释了吧,呵呵
pygame.init() #模块初始化,任何pygame程序均需要执行此句
screencaption=pygame.display.set_caption('hello world')#定义窗口的标题为'hello world'
screen=pygame.display.set_mode([640,480]) #定义窗口大小为640*480
screen.fill([255,255,255])#用白色填充窗口
2、窗口退出
pygame有一个事件循环,不断检查用户在做什么。事件循环中,如何让循环中断下来(pygame形成的窗口中右边的插号在未定义前是不起作用的),常用的代码如下:
复制代码 代码如下:
while True:
for event in pygame.event.get():
if event.type==pygame.QUIT:
sys.exit()
3、pygame中的颜色
在screen.fill([255,255,255])这一语句中,已经看出,pygame使用的是RGB系统。纯绿色用[0,255,0],纯蓝色用[0,0,255],纯红色用[255,0,0]。如果不使用RGB记法,pygame还提供了一个命名颜色列表,也可以直接使用这些命名颜色。定义好的颜色句有600多个,可以在colordict.py文件中查看具体名称。使用命名列表时,首先要在程序最前面导入THECOLORS。
from pygame.color import THECOLORS
然后使用某个命名颜色:
复制代码 代码如下:
pygame.draw.circle(screen,THECOLORS["red"],[100,100],30,0)
4、圆形
pygame.draw.circle()用来画圆形,具体包括五个参数:(1)画圆的表面,在本例中用screen创建了一个窗口,所以是画在screen表面上。(2)用什么颜色来画,如用红色[255,0,0]。(3)在什么位置画,[top,left]。(4)直径。(5)线宽,其中0表示完成填充。
复制代码 代码如下:
pygame.draw.circle(screen,[255,0,0],[100,100],30,0)
5、矩形
pygame.draw.rect()用来创建一个矩形。Rect(left,top,width,height)用来定义位置和宽高,具体代码如下:
复制代码 代码如下:
pygame.draw.rect(screen,[255,0,0],[250,150,300,200],0)
也可以用下面的定义方法
复制代码 代码如下:
rect_list=[250,150,300,200]
pygame.draw.rect(screen,[255,0,0],rect_list,0)
或者
复制代码 代码如下:
my_rect=pygame.Rect(250,150,300,200)
pygame.draw.rect(screen,[255,0,0],my_rect,0)
6、实例
利用random模块随机生成大小和位置在表面上绘画,具体代码如下:
复制代码 代码如下:
import pygame,sys
import time
import random
pygame.init()
screencaption=pygame.display.set_caption('hello world')
screen=pygame.display.set_mode([640,480])
screen.fill([255,255,255])
for i in range(10):
zhijing=random.randint(0,100)
width=random.randint(0,255)
height=random.randint(0,100)
top=random.randint(0,400)
left=random.randint(0,500)
pygame.draw.circle(screen,[0,0,0],[top,left],zhijing,1)
pygame.draw.rect(screen,[255,0,0],[left,top,width,height],3)
pygame.display.flip()
while True:
for event in pygame.event.get():
if event.type==pygame.QUIT:
sys.exit()
效果图:
pygame,矩形,圆型,画图
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]