《Python游戏编程入门》注-第2章2

《Python游戏编程入门》的"2.2.5 绘制线条"中提到了通过pygame库绘制线条的方法。

1 相关函数介绍

通过pygame.draw模块中的line()函数来绘制线条,该函数的格式如下所示。

python 复制代码
line(surface, color, start_pos, end_pos, width=1) -> Rect

其中,第一个参数surface表示用来绘制线条的"表面",其类型是Surface类实例;参数color表示线条的颜色,其类型是表示RGB的元组;参数start_pos和end_pos表示线条的起点和终点;参数width表示线条的粗细,该参数的默认值是1。line()函数的返回值是Rect类的实例。

2 函数使用方法

使用《Pygame显示文字》中提到的pygame编程框架,在while True语句中,获取了按键信息之后,使用如图1所示的代码绘制线条。

图1 绘制线条代码

其中,第17-20行分别定义了绘制线条所需的颜色、宽度、起点和终点的变量;第21行代码抵用pygame.draw模块中的line()函数绘制线条,代码运行的效果如图2所示。

图2 代码运行效果

3 完整代码

绘制线条的完整代码如下所示。

python 复制代码
import pygame
import sys
from pygame.locals import *

pygame.init()
screen = pygame.display.set_mode((600,500))
pygame.display.set_caption('Drawing lines')

while True:
    for event in pygame.event.get():
        if event.type in (QUIT, KEYDOWN):
            pygame.quit()
            sys.exit()

    screen.fill((0, 80, 0))

    color = (100, 255, 200)
    width = 8
    start_pos = (100, 100)
    end_pos = (500, 400)
    pygame.draw.line(screen, color, start_pos, end_pos, width)

    pygame.display.update()

注意1 在程序运行后,按下任意按键程序退出。

相关推荐
傻啦嘿哟3 小时前
某短视频平台视频爬虫实战:抓取推荐流视频信息,绕过反爬的3种技巧
开发语言·爬虫·python
迷迭香yy4 小时前
集合竞价数据挖掘实战:用Python构建开盘信号识别系统
人工智能·python·数据挖掘
李昊哲小课6 小时前
fastapi sse websocket 奶茶店实时订单看板
人工智能·python·websocket·网络协议·fastapi·sse
humors2218 小时前
支付宝游戏频道《灵画师》体验
游戏·介绍·体验·攻略·灵画师·试玩
2401_844582958 小时前
工具包:软件架构设计的实用技巧与经验分享
python
RFID固定资产管理系统9 小时前
适配媒体行业的固定资产管理软件有哪些功能与核心优势
大数据·人工智能·python·媒体
SunnyDays10119 小时前
Python 为 PowerPoint 添加动画:进入、退出、动作路径与文本动画(详解)
python·powerpoint·动画·动画效果·文本动画
难以怀瑾10 小时前
pytest.param`与 allure.dynamic.title()全解析
python
月光船幽幽11 小时前
Pytest配置实战:高效管理测试标记与覆盖
python·科技
HMS Core11 小时前
基于人体骨骼点识别与跟踪,实现低时延体感游戏
游戏·华为·harmonyos