您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:浅谈Python Pygame图像的基本使用

51自学网 2021-10-30 22:28:56
  python
这篇教程浅谈Python Pygame图像的基本使用写得很实用,希望能帮到您。

笛卡尔坐标系

游戏离不开坐标,我们来康康pygame中坐标是如何设立的吧~

在这里插入图片描述

窗口左上角坐标(0,0),横轴正向向右,纵轴正向向下

实际效果

碰到边框就返回(其实是小球碰撞实验,我不爱用正经的小球,所以…)

在这里插入图片描述

代码

import pygame,syspygame.init()size = width, height = 600, 400speed = [1,1]BLACK = 0, 0, 0s = pygame.display.set_mode(size)pygame.display.set_caption("hi 滑稽")ball = pygame.image.load("img/361.png")ballrect = ball.get_rect()while True:    for event in pygame.event.get():        if event.type == pygame.QUIT:            sys.exit()    ballrect = ballrect.move(speed[0], speed[1])    if ballrect.left < 0 or ballrect.right > width:        speed[0] = - speed[0]    if ballrect.top < 0 or ballrect.bottom > height:        speed[1] = - speed[1]    s.fill(BLACK)    s.blit(ball, ballrect)    pygame.display.update()

代码说明

碰撞原理

在这里插入图片描述

方法说明

方法 说明
pygame.image.load(filename) 将filename路径下的图像载入游戏,支持JPG、PNG、GIF(非动画)等13种常用图片格式
get_rect() 返回一个覆盖图像的矩形Rect对象
move(x,y) 矩形移动一个偏移量(x,y),即在横轴方向移动x像素,纵轴方向移动y像素,xy为整数
fill(color) 显示窗口背景填充为color颜色,采用RGB色彩体系
blit(src, dest) 将一个图像绘制在另一个图像上,即将src绘制到dest位置上。

载入图片

pygame.init()size = width, height = 600, 400       #设置了宽高,也可以在pygame.display.set_mode()设置speed = [1,1]              #速度BLACK = 0, 0, 0            #颜色黑色s = pygame.display.set_mode(size)pygame.display.set_caption("hi 滑稽")ball = pygame.image.load("img/361.png")  #注意图片路径ballrect = ball.get_rect()

surface对象和Rect对象

在这里插入图片描述

Rect对象属性

Rect对象有一些重要属性,例如:top,bottom,left,right表示上下左右width,height表示宽度、高度。

在这里插入图片描述

移动

ballrect = ballrect.move(speed[0], speed[1])      #  x1    if ballrect.left < 0 or ballrect.right > width:    # x2        speed[0] = - speed[0]    if ballrect.top < 0 or ballrect.bottom > height:        speed[1] = - speed[1]

x1:矩形移动一个偏移量(x,y),即在横轴方向移动x像素,纵轴方向移动y像素,xy为整数x2:遇到左右两侧,横向速度取反;遇到上下两侧,纵向速度取反。

到此这篇关于浅谈Python Pygame图像的基本使用的文章就介绍到这了,更多相关Pygame图像的基本使用内容请搜索51zixue.net以前的文章或继续浏览下面的相关文章希望大家以后多多支持51zixue.net!


解析python高级异常和运算符重载
分析python并发网络通信模型
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。