pyglet.canvas

显示和屏幕管理。

呈现是在一个 Canvas ,它在概念上可以是一个屏幕外缓冲区, pyglet.window.Window ,或整个屏幕。目前,画布只能用窗口创建(尽管窗口可以设置为全屏)。

窗口和画布必须属于 Display 。在Windows和Mac OS X上只有一个显示屏,可以通过以下方式获得 get_display() 。Linux支持多个显示器,对应于离散的X11显示器连接和屏幕。 get_display() 在Linux上返回默认显示和屏幕0 (localhost:0.0 );如果需要特定屏幕或显示器,则 Display 可以直接实例化。

在显示器内连接了一个或多个屏幕。一个 Screen 通常对应于物理连接的显示器,但不会列出为复制另一个屏幕而设置的显示器或投影仪。使用 Display.get_screens() 以获取附加屏幕的列表;然后可以查询这些屏幕的大小和在桌面上的虚拟位置。

屏幕的大小由其当前模式决定,该模式可由应用程序更改;请参阅 Screen

Added in version 1.2.

class Canvas

抽象绘图区域。

画布由pyglet在内部使用来表示绘图区域--无论是在窗口中还是在全屏中。

Added in version 1.2.

__init__(display: Display) None
display

显示此画布的创建日期。

class Display

一种支持一个或多个屏幕的显示设备。

Added in version 1.2.

__init__(name: str = None, x_screen: int = None) None

为给定名称和屏幕创建显示连接。

在X11上, name 是以下形式的 "hostname:display" ,默认值通常是 ":1" . 在X11上, x_screen 给出此显示器使用的X屏幕号。 pyglet显示只能与一个X屏幕一起使用;打开多个显示连接以访问多个X屏幕。

请注意,TwinView、Xinerama、xrandr和其他扩展在单个X屏幕上提供多个显示器;这通常是X11下使用多个显示器的首选机制,并且允许通过单个pyglet '~pyglet.canvas.Display '

在X11以外的平台上, namex_screen 被忽略;这些系统上只有一个显示设备。

get_default_screen() Screen

获取由用户的操作系统首选项指定的默认(主)屏幕。

返回类型:

Screen

get_screens() list[Screen]

获取可用的屏幕。

典型的多监视器工作站包括一个 Display 具有多个 Screen S。此方法返回一个屏幕列表,可以枚举这些屏幕以选择一个屏幕进行全屏显示。

为了创建OpenGL配置,默认屏幕就足够了。

返回类型:

清单 Screen

get_windows() list[Window]

获取当前连接到此显示器的窗口。

返回类型:

list[Window]

name: str = None

此显示的名称(如果适用)。

x_screen: int = None

此显示屏的X11屏幕编号(如果适用)。

class Screen

支持全屏窗口的虚拟监视器。

屏幕通常映射到显示器、电视或投影仪等物理显示器上。为窗口选择屏幕没有任何效果,除非该窗口被设置为全屏显示,在这种情况下,该窗口将仅填充该特定的虚拟屏幕。

这个 widthheight 屏幕的属性提供屏幕的当前分辨率。这个 xy 属性提供屏幕左上角的全局位置。这对于确定屏幕是排列在彼此上方还是相邻很有用。

使用 get_screens()get_default_screen() 若要获取此类的实例,请执行以下操作。

__init__(
display: Display,
x: int,
y: int,
width: int,
height: int,
)
get_best_config(
template: Config = None,
) Config

获取最佳可用的GL配置。

任何必需的属性都可以在 template 。如果没有与模板匹配的配置, NoSuchConfigException 将被提出。平台支持的最能满足模板描述的需求的配置。

弃用:

使用 pyglet.gl.Config.match()

参数:

template (Config) -- 填写了所需属性的配置。

返回类型:

Config

get_closest_mode(width: int, height: int) ScreenMode

获取与给定大小最匹配的屏幕模式。

If no supported mode exactly equals the requested size, a larger one is returned; or None if no mode is large enough. :rtype: ScreenMode

Added in version 1.2.

get_matching_configs(
template: Config,
) list[Config]

获取与规范匹配的配置列表。

中指定的任何属性 template 将在每个返回的配置中具有等于或更大的值。如果没有配置满足模板,则返回空列表。

弃用:

使用 pyglet.gl.Config.match()

参数:

template (Config) -- 填写了所需属性的配置。

返回类型:

list[Config]

get_mode() ScreenMode

Get the current display mode for this screen. :rtype: ScreenMode

Added in version 1.2.

get_modes() list[ScreenMode]

Get a list of screen modes supported by this screen. :rtype: list[ScreenMode]

Added in version 1.2.

restore_mode() None

将屏幕模式恢复为用户的默认模式。

返回类型:

None

set_mode(mode: ScreenMode) None

设置此屏幕的显示模式。

模式必须是以前由返回的模式 get_mode()get_modes()

返回类型:

None

display

显示此屏幕所属的。

height

屏幕高度,以像素为单位。

width

屏幕的宽度,以像素为单位。

x

虚拟桌面上屏幕的左边缘。

y

虚拟桌面上屏幕的顶部边缘。

class ScreenMode

屏幕分辨率和显示设置。

应用程序不应构建 ScreenMode 实例本身;参见 Screen.get_modes()

这个 depthrate 变量可以 None 如果操作系统未提供相关数据。

Added in version 1.2.

__init__(screen: Screen) None
depth: int = None

像素颜色深度,单位为每像素的位数。

height: int = None

屏幕高度,以像素为单位。

rate: int = None

屏幕刷新率(单位:Hz)。

width: int = None

屏幕宽度,以像素为单位。

get_display() Display

获取默认显示设备。

If there is already a Display connection, that display will be returned. Otherwise, a default Display is created and returned. If multiple display connections are active, an arbitrary one is returned. :rtype: Display

Added in version 1.2.

class Display

一种支持一个或多个屏幕的显示设备。

Added in version 1.2.

__init__(name: str = None, x_screen: int = None) None

为给定名称和屏幕创建显示连接。

在X11上, name 是以下形式的 "hostname:display" ,默认值通常是 ":1" . 在X11上, x_screen 给出此显示器使用的X屏幕号。 pyglet显示只能与一个X屏幕一起使用;打开多个显示连接以访问多个X屏幕。

请注意,TwinView、Xinerama、xrandr和其他扩展在单个X屏幕上提供多个显示器;这通常是X11下使用多个显示器的首选机制,并且允许通过单个pyglet '~pyglet.canvas.Display '

在X11以外的平台上, namex_screen 被忽略;这些系统上只有一个显示设备。

get_default_screen() Screen

获取由用户的操作系统首选项指定的默认(主)屏幕。

返回类型:

Screen

get_screens() list[Screen]

获取可用的屏幕。

典型的多监视器工作站包括一个 Display 具有多个 Screen S。此方法返回一个屏幕列表,可以枚举这些屏幕以选择一个屏幕进行全屏显示。

为了创建OpenGL配置,默认屏幕就足够了。

返回类型:

清单 Screen

get_windows() list[Window]

获取当前连接到此显示器的窗口。

返回类型:

list[Window]

name: str = None

此显示的名称(如果适用)。

x_screen: int = None

此显示屏的X11屏幕编号(如果适用)。

class Screen

支持全屏窗口的虚拟监视器。

屏幕通常映射到显示器、电视或投影仪等物理显示器上。为窗口选择屏幕没有任何效果,除非该窗口被设置为全屏显示,在这种情况下,该窗口将仅填充该特定的虚拟屏幕。

这个 widthheight 屏幕的属性提供屏幕的当前分辨率。这个 xy 属性提供屏幕左上角的全局位置。这对于确定屏幕是排列在彼此上方还是相邻很有用。

使用 get_screens()get_default_screen() 若要获取此类的实例,请执行以下操作。

__init__(
display: Display,
x: int,
y: int,
width: int,
height: int,
)
get_best_config(
template: Config = None,
) Config

获取最佳可用的GL配置。

任何必需的属性都可以在 template 。如果没有与模板匹配的配置, NoSuchConfigException 将被提出。平台支持的最能满足模板描述的需求的配置。

弃用:

使用 pyglet.gl.Config.match()

参数:

template (Config) -- 填写了所需属性的配置。

返回类型:

Config

get_closest_mode(width: int, height: int) ScreenMode

获取与给定大小最匹配的屏幕模式。

If no supported mode exactly equals the requested size, a larger one is returned; or None if no mode is large enough. :rtype: ScreenMode

Added in version 1.2.

get_matching_configs(
template: Config,
) list[Config]

获取与规范匹配的配置列表。

中指定的任何属性 template 将在每个返回的配置中具有等于或更大的值。如果没有配置满足模板,则返回空列表。

弃用:

使用 pyglet.gl.Config.match()

参数:

template (Config) -- 填写了所需属性的配置。

返回类型:

list[Config]

get_mode() ScreenMode

Get the current display mode for this screen. :rtype: ScreenMode

Added in version 1.2.

get_modes() list[ScreenMode]

Get a list of screen modes supported by this screen. :rtype: list[ScreenMode]

Added in version 1.2.

restore_mode() None

将屏幕模式恢复为用户的默认模式。

返回类型:

None

set_mode(mode: ScreenMode) None

设置此屏幕的显示模式。

模式必须是以前由返回的模式 get_mode()get_modes()

返回类型:

None

display

显示此屏幕所属的。

height

屏幕高度,以像素为单位。

width

屏幕的宽度,以像素为单位。

x

虚拟桌面上屏幕的左边缘。

y

虚拟桌面上屏幕的顶部边缘。

class Canvas

抽象绘图区域。

画布由pyglet在内部使用来表示绘图区域--无论是在窗口中还是在全屏中。

Added in version 1.2.

__init__(display: Display) None
display

显示此画布的创建日期。