笛卡尔坐标系
游戏离不开坐标,我们来康康pygame中坐标是如何设立的吧~
窗口左上角坐标(0,0),横轴正向向右,纵轴正向向下
实际效果
碰到边框就返回(其实是小球碰撞实验,我不爱用正经的小球,所以…)
代码
import pygame,sys
pygame.init()
size = width, height = 600, 400
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()
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()
代码说明
碰撞原理
方法说明
HdhCmsTestcppcns测试数据 方法 说明 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,heig 编程客栈 ht表示宽度、高度。
移动
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图像的基本使用内容请 http://HdhCmsTestcppcns测试数据 搜索我们以前的文章或继续浏览下面的相关文章希望大家 CQuXgYsV 以后多多支持我们!
查看更多关于浅谈Python Pygame图像的基本使用的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did124777