博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
pygame学习笔记(1)——安装及矩形、圆型画图
阅读量:7119 次
发布时间:2019-06-28

本文共 2167 字,大约阅读时间需要 7 分钟。

      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模块随机生成大小和位置在表面上绘画,具体代码如下:

#@小五义 http://www.cnblogs.com/xiaowuyiimport pygame,sysimport timeimport randompygame.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()

转载请注明:小五义 http://www.cnblogs.com/xiaowuyi

 

你可能感兴趣的文章
Gradle笔记——构建基础
查看>>
空间矢量数据(.shp文件)之JAVA操作
查看>>
Spring 学习 3- AOP
查看>>
Android 音频 OpenSL ES 录音 采集
查看>>
[Node.js] Provide req.locals data though middleware
查看>>
ASP.NET MVC Model绑定(五)
查看>>
Vijos P1448 校门外的树【多解,线段树,树状数组,括号序列法+暴力优化】
查看>>
宿主机mac os无法连接到虚拟机centos
查看>>
PHP中输出本地时间
查看>>
Android 性能优化探究
查看>>
C和C++格式转换
查看>>
[小技巧]diff的文件夹忽略使用方式
查看>>
ABP从入门到精通(1):aspnet-zero-core项目启动及各项目源码说明
查看>>
angularjs1-8,cacheFactory,sce
查看>>
MySQL的初次见面礼基础实战篇
查看>>
一学就会之ado.net(一)
查看>>
一朵落地中国的“智能云”是如何飘到你身边的!
查看>>
强者联盟——Python语言结合Spark框架
查看>>
我学习图像处理的小结
查看>>
条件触发和边缘触发 及 epoll 的长处
查看>>