《Python和Pygame游戏开发指南》——2.13 Rect对象

简介:

本节书摘来自异步社区《Python和Pygame游戏开发指南》一书中的第2章,第2.13节,作者[美]Al Sweigart(斯维加特), 李强 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.13 Rect对象

Pygame有两种方法来表示矩形区域(就像有两种方法表示颜色一样)。第一种是4个整数的元组。

1.左上角的X 坐标。

2.左上角的Y 坐标。

3.矩形的宽度(以像素为单位)。

4.矩形的高度(以像素为单位)。

第二种方法是作为一个pygame.Rect对象,我们后面将其简称为Rect对象。例如,如下的代码创建了一个Rect对象,它的左上角位于(10, 20),宽度为200像素,高度为300像素。


screenshot

这种表示的方便之处在于Rect对象自动计算矩形的其他部分的坐标。例如,如果你需要知道变量spamRect中所存储的pygame.Rect对象的右边的X 坐标,只需要访问Rect对象的right属性。


screenshot

如果左边的X 坐标为10并且矩形的宽度为200像素,Rect对象的Pygame代码会自动计算出矩形的右边的X 坐标必须位于210。如果重新设置right属性,所有其他的属性也会自动计算求得。


screenshot

表2-2列出了pygame.Rect对象所提供的所有属性(在我们的示例中,Rect对象存储在名为myRect的一个变量中)。


screenshot


screenshot

相关文章
|
1天前
|
JSON 开发工具 git
基于Python和pygame的植物大战僵尸游戏设计源码
本项目是基于Python和pygame开发的植物大战僵尸游戏,包含125个文件,如PNG图像、Python源码等,提供丰富的游戏开发学习素材。游戏设计源码可从提供的链接下载。关键词:Python游戏开发、pygame、植物大战僵尸、源码分享。
|
1月前
|
存储 缓存 Java
深度解密 Python 虚拟机的执行环境:栈帧对象
深度解密 Python 虚拟机的执行环境:栈帧对象
62 13
|
1月前
|
IDE 开发工具 Python
Python扑克游戏编程---摸大点
Python扑克游戏编程---摸大点
|
1月前
|
索引 Python
Python 对象的行为是怎么区分的?
Python 对象的行为是怎么区分的?
26 3
|
1月前
|
存储 缓存 算法
详解 PyTypeObject,Python 类型对象的载体
详解 PyTypeObject,Python 类型对象的载体
34 3
|
1月前
|
Python
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
19 1
|
1月前
|
缓存 Java 程序员
一个 Python 对象会在何时被销毁?
一个 Python 对象会在何时被销毁?
41 2
|
1月前
|
API Python 容器
再探泛型 API,感受 Python 对象的设计哲学
再探泛型 API,感受 Python 对象的设计哲学
20 2
|
1月前
|
API Python
当调用一个 Python 对象时,背后都经历了哪些过程?
当调用一个 Python 对象时,背后都经历了哪些过程?
22 2
|
1月前
|
存储 API C语言
当创建一个 Python 对象时,背后都经历了哪些过程?
当创建一个 Python 对象时,背后都经历了哪些过程?
21 2
下一篇
无影云桌面