主页 > 知识库 > 浅谈Python Pygame图像的基本使用

浅谈Python Pygame图像的基本使用

热门标签:检查注册表项 智能手机 铁路电话系统 网站文章发布 银行业务 美图手机 呼叫中心市场需求 服务器配置

笛卡尔坐标系

游戏离不开坐标,我们来康康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()

代码说明

碰撞原理

方法说明

方法 说明
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图像的基本使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • python使用PyGame绘制图像并保存为图片文件的方法
  • python使用pygame创建精灵Sprite
  • Python使用Pygame绘制时钟
  • 使用Python第三方库pygame写个贪吃蛇小游戏
  • 使用python和pygame制作挡板弹球游戏
  • python使用pygame实现笑脸乒乓球弹珠球游戏

标签:新疆 河南 红河 沈阳 沧州 上海 长治 乐山

巨人网络通讯声明:本文标题《浅谈Python Pygame图像的基本使用》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266