跳转到内容

像计算机科学家一样思考:用 Python 学习 第 2 版/GASP

来自维基教科书,开放世界中的开放书籍

面向 Python 学生的图形 API:GASP

[编辑 | 编辑源代码]

在此处描述 gasp...

(0, 0) 位于窗口的左下角。窗口默认大小为 640 像素宽,480 像素高。(您可以根据需要调整大小。)坐标以像素为单位。

所有接收坐标的函数都将坐标作为元组 (x, y) 接收。

要访问 GASP 提供的颜色模块。请调用color.*其中*是您想要调用的颜色。例如:` color.BLACK `,表示黑色。查看 gasp 颜色参考图表,了解所有可用的颜色选项。

基本要素

[编辑 | 编辑源代码]

这些是基本要素。` from gasp import * ` 导入 gasp 模块,begin_graphics()启动图形窗口,以及end_graphics()退出图形窗口并结束程序。非常简单,但也十分必要。

图形函数

[编辑 | 编辑源代码]

begin_graphics()

[编辑 | 编辑源代码]

这将创建一个图形窗口,尺寸为 800x600,标题为 My Game,背景色为黄色。如果没有任何参数,您将获得一个名为 Gasp 的白色 640x480 图形窗口。

width
窗口的宽度,以像素为单位。
height
窗口的高度,以像素为单位。
title
一个字符串,将用作窗口的标题。
background
它是图形窗口的背景。它可以是颜色,也可以是图像

end_graphics()

[编辑 | 编辑源代码]

结束一个图形窗口。

clear_screen()

[编辑 | 编辑源代码]

清除图形窗口中的所有内容。它看起来就像一个新的图形窗口,就好像您刚刚调用 begin_graphics() 一样。

remove_from_screen()

[编辑 | 编辑源代码]

从屏幕中移除这些对象

obj
您想要从屏幕中移除的屏幕对象或屏幕对象列表

屏幕对象

[编辑 | 编辑源代码]

将在图形窗口中显示的对象。您可以使用屏幕对象方法来操作这些对象

它在屏幕上放置一个点。

pos
您想要绘制的屏幕上的坐标。
color
您希望点具有的颜色。
size
一个整数,确定点的尺寸

在屏幕上创建一条线。

start
线的起始坐标。
end
线将结束的坐标。
color
线的颜色

这将在屏幕上创建一个 Box。

center
Box 中心所在的坐标。
width
Box 的宽度,以像素为单位。
height
Box 的高度,以像素为单位。
filled
一个布尔值,确定 Box 是否填充
color
Box 的颜色。
thickness
Box 线条的厚度,以像素为单位。

在屏幕上创建一个多边形

points
一个坐标列表,表示多边形上的每个点。列表中必须有超过两个项目
filled
一个布尔值。如果为 False,则不会填充多边形。否则,不会填充多边形
color
多边形线条的颜色
thickness
确定线条粗细的整数。

绘制一个圆形,其center是一组坐标,并且半径以像素为单位。默认情况下,它不会被填充,颜色为黑色。

center
圆形的中心坐标。
width
表示圆形半径的整数
filled
一个布尔值,决定您的圆形是否将被填充
color
您的圆形颜色。
thickness
圆形线条的像素粗细。

在屏幕上创建一个圆弧。

center
作为圆弧中心的坐标。
半径
表示圆弧中心到外边缘的距离的整数。
起始角度
圆弧的起始角度,以度为单位
结束角度
您的圆弧的结束角度,以度为单位
filled
一个布尔值,如果为 True,则填充圆弧
color
圆弧的颜色
thickness
圆弧的像素粗细

在您想要的地方放置一个椭圆形。

center
椭圆的中心坐标
width
椭圆的像素宽度
height
椭圆的像素高度
filled
一个布尔值,决定椭圆是否被填充。
color
椭圆的颜色
thickness
椭圆线条的粗细

将图像加载到屏幕上。如果您只传递宽度,而不传递高度,它会自动将高度缩放以适合您传递的宽度。当您只传递高度时,它的行为类似。

文件路径
图像的路径
center
图像的中心坐标
width
图像的像素宽度。如果宽度为 None,则默认为图像文件的宽度
height
图像的像素高度。如果没有传递高度,则默认为图像文件的高度

屏幕对象方法

[编辑 | 编辑源代码]

操作屏幕对象的方法

move_to()

[编辑 | 编辑源代码]

将屏幕对象移动到一个位置

obj
您想要移动的屏幕对象。
pos
屏幕上对象将移动到的坐标

move_by()

[编辑 | 编辑源代码]

相对于对象的位置移动屏幕对象

obj
您想要移动的屏幕对象
dx
对象在 'x' 方向上的移动量。正数或负数。
dy
对象在 'y' 方向上的移动量。一个像素值。

rotate_to()

[编辑 | 编辑源代码]

将对象旋转到一个角度

obj
将要旋转的屏幕对象
角度
对象将旋转到的角度,以度为单位

rotate_by()

[编辑 | 编辑源代码]

将对象旋转一定的角度。

obj
您想要旋转的屏幕对象
角度
对象将旋转的角度。可以是正数或负数。

在屏幕上放置文本

文本
将要显示的文本字符串
pos
文本的中心坐标
color
文本的颜色
size
字体大小

mouse_position()

[编辑 | 编辑源代码]

返回当前鼠标坐标

mouse_buttons()

[编辑 | 编辑源代码]

返回一个包含按钮状态的字典。它有'left'、'middle'和'right'键。

keys_pressed()

[编辑 | 编辑源代码]

返回此时按下所有键的列表。

Gasp 工具

[编辑 | 编辑源代码]

screen_shot

[编辑 | 编辑源代码]

将当前图形屏幕的屏幕截图保存到 png 文件。

文件名
图像将写入到的相对于当前目录的文件路径。
华夏公益教科书