当前位置: 首页 > 编程笔记 >

pygame学习笔记(1):矩形、圆型画图实例

万俟震博
2023-03-14
本文向大家介绍pygame学习笔记(1):矩形、圆型画图实例,包括了pygame学习笔记(1):矩形、圆型画图实例的使用技巧和注意事项,需要的朋友参考一下

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学习笔记(2):画点的三种方法和动画实例,包括了pygame学习笔记(2):画点的三种方法和动画实例的使用技巧和注意事项,需要的朋友参考一下 1、单个像素(画点) 利用pygame画点主要有三种方法: 方法一:画长宽为1个像素的正方形 方法二:画个直径为1的圆 方法三:这种方法并不是画上去的,而是改变了surface上某个点的颜色,这样看上去像是画了一个点screen.s

  • 本文向大家介绍pygame学习笔记(5):游戏精灵,包括了pygame学习笔记(5):游戏精灵的使用技巧和注意事项,需要的朋友参考一下 据说在任天堂FC时代,精灵的作用相当巨大,可是那时候只知道怎么玩超级玛丽、魂斗罗,却对精灵一点也不知。pygame.sprite.Sprite就是Pygame里面用来实现精灵的一个类,使用时,并不需要对它实例化,只需要继承他,然后按需写出自己的类就好了,因此非常简

  • 本文向大家介绍pygame学习笔记(4):声音控制,包括了pygame学习笔记(4):声音控制的使用技巧和注意事项,需要的朋友参考一下 pygame.mixer是一个用来处理声音的模块,其含义为“混音器”。游戏中对声音的处理一般包括制造声音和播放声音两部分,这里仅学习了播放声音部分。 1、pygame.mixer启动与初始化 pygame.mixer.init():mixer的初始化。程序中,使用

  • 本文向大家介绍Struts2学习笔记(1)-入门教程,包括了Struts2学习笔记(1)-入门教程的使用技巧和注意事项,需要的朋友参考一下   什么是Structs2?它就是在Struts1的基础上演化而来的,是一种MVC模式的框架,其实它的功能很简单,就是将View和逻辑处理层分开。本人才疏学浅,以前都是用Spring做项目,由于要毕业,所以需要进行转行(暂且这么说吧),公司都是用的Struct

  • 本文向大家介绍MongoDB 学习笔记,包括了MongoDB 学习笔记的使用技巧和注意事项,需要的朋友参考一下 1、配置:mongod --dbpath=D:\MongoDB\data mongo 2、基本的增删查改 find() update()-- 整体更新,局部更新。 修改器: $inc db.person.update({"age":23},{$inc:{"salary":1000}})

  • 本文向大家介绍cmake 学习笔记,包括了cmake 学习笔记的使用技巧和注意事项,需要的朋友参考一下 最近接触到一些工程上的代码,都是用cmake来编译的,每次看着CMakeLists.txt 就各种懵逼,决定从0 开始学习 1 set 输出 hello 其实并不是单单输出hello,还有很多其他信息,会生成很多文件 files 2 CMAKE_C(XX)_FLAGS 变量 CMAKE_C_FL