pygame.surfarray
pygame module for accessing surface pixel data using array interfaces
Copy pixels into a 2d array
Reference pixels into a 2d array
Copy pixels into a 3d array
Reference pixels into a 3d array
Copy pixel alphas into a 2d array
Reference pixel alphas into a 2d array
Copy red pixels into a 2d array
Reference pixel red into a 2d array.
Copy green pixels into a 2d array
Reference pixel green into a 2d array.
Copy blue pixels into a 2d array
Reference pixel blue into a 2d array.
Copy the colorkey values into a 2d array
Copy an array to a new surface
Blit directly from a array values
Map a 3d array into a 2d array
Sets the array system to be used for surface arrays
Gets the currently active array type.
Gets the array system types currently supported.

用于在NumPy数组和Surface对象之间进行转换的函数。这个模块只有在PYGAME可以使用外部NumPy包的情况下才能使用。如果无法导入NumPy, surfarray 成为一名 MissingModule 对象。

每个像素都存储为表示红色、绿色和蓝色的单个整数值。8位图像使用一个可以查看色彩映射表的值。深度较高的像素使用位打包过程将三个或四个值放入单个数字中。

这些数组由 X 首先是轴,然后是 Y 轴心。将像素视为单个整数的数组称为二维数组。此模块还可以将红色、绿色和蓝色的颜色值分离为单独的索引。这些类型的数组称为3D数组,最后一个索引为0表示红色,1表示绿色,2表示蓝色。

返回的二维数组的像素 array2d()pixels2d() 被映射到特定的表面。使用 pygame.Surface.unmap_rgb()convert a mapped integer color value into a Color 要转换为颜色,请使用 pygame.Surface.map_rgb()convert a color into a mapped color value 以获取颜色的曲面特定像素值。整型像素值只能在具有匹配像素布局的表面之间直接使用(请参见 pygame.Surfacepygame object for representing images )。

所有引用数组的函数都会将曲面信息复制到新的NumPy数组中。引用“像素”的所有函数将直接引用曲面中的像素,对数组执行的任何更改都将在曲面中进行更改。由于最后一个函数与Surface共享内存,因此此函数将在数组的生命周期内被锁定。

pygame.surfarray.array2d()
Copy pixels into a 2d array
array2d(Surface) -> array

复制 mapped (原始)从曲面到2D数组的像素。曲面的位深度将控制整数值的大小,并适用于任何类型的像素格式。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

pygame.surfarray.pixels2d()
Reference pixels into a 2d array
pixels2d(Surface) -> array

创建直接参照曲面中的像素值的新的二维数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

不能引用来自24位Surface的像素,但可以引用所有其他Surface位深度。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array3d()
Copy pixels into a 3d array
array3d(Surface) -> array

将像素从Surface复制到3D数组中。曲面的位深度将控制整数值的大小,并适用于任何类型的像素格式。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

pygame.surfarray.pixels3d()
Reference pixels into a 3d array
pixels3d(Surface) -> array

创建直接引用Surface中的像素值的新3D数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

这将仅适用于具有24位或32位格式的曲面。不能引用较低的像素格式。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array_alpha()
Copy pixel alphas into a 2d array
array_alpha(Surface) -> array

将像素Alpha值(透明度)从曲面复制到2D数组中。这将适用于任何类型的曲面格式。没有像素Alpha的曲面将返回一个具有所有不透明值的数组。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

pygame.surfarray.pixels_alpha()
Reference pixel alphas into a 2d array
pixels_alpha(Surface) -> array

创建直接参照曲面中的Alpha值(透明度)的新2D数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

这仅适用于具有每像素Alpha值的32位曲面。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array_red()
Copy red pixels into a 2d array
array_red(Surface) -> array

将像素红色值从曲面复制到2D数组中。这将适用于任何类型的曲面格式。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

New in pygame 2.0.2.

pygame.surfarray.pixels_red()
Reference pixel red into a 2d array.
pixels_red (Surface) -> array

创建直接参照曲面中的红色值的新二维数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

这仅适用于24位或32位曲面。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array_green()
Copy green pixels into a 2d array
array_green(Surface) -> array

将像素绿色值从曲面复制到2D数组中。这将适用于任何类型的曲面格式。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

New in pygame 2.0.2.

pygame.surfarray.pixels_green()
Reference pixel green into a 2d array.
pixels_green (Surface) -> array

创建直接参照曲面中的绿色值的新二维数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

这仅适用于24位或32位曲面。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array_blue()
Copy blue pixels into a 2d array
array_blue(Surface) -> array

将像素蓝值从曲面复制到2D数组中。这将适用于任何类型的曲面格式。

此功能将在复制像素时临时锁定Surface(请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -针对像素访问方法锁定Surface Memory)。

New in pygame 2.0.2.

pygame.surfarray.pixels_blue()
Reference pixel blue into a 2d array.
pixels_blue (Surface) -> array

创建直接参照曲面中的蓝色值的新二维数组。对数组的任何更改都会影响Surface中的像素。这是一个快速操作,因为不复制任何数据。

这仅适用于24位或32位曲面。

此引用的Surface在数组的生存期内将保持锁定,因为此函数生成的数组与Surface共享内存。请参阅 pygame.Surface.lock()lock the Surface memory for pixel access -锁定像素访问方法的表面内存。

pygame.surfarray.array_colorkey()
Copy the colorkey values into a 2d array
array_colorkey(Surface) -> array

使用每个像素的Colorkey透明度值创建一个新数组。如果像素与Colorkey匹配,则它将是完全透明的;否则将是完全不透明的。

这将适用于任何类型的Surface格式。如果图像没有Colorkey,则返回纯色不透明数组。

此功能将在复制像素时临时锁定曲面。

pygame.surfarray.make_surface()
Copy an array to a new surface
make_surface(array) -> Surface

创建与阵列上的数据和格式最相似的新曲面。该数组可以是具有任意大小整数值的2D或3D。函数Make_Surface使用数组结构接口来获取数组属性,因此不仅限于NumPy数组。看见 pygame.pixelcopypygame module for general pixel array copying

PYGAME 1.9.2的新特性:数组结构接口支持。

pygame.surfarray.blit_array()
Blit directly from a array values
blit_array(Surface, array) -> None

将数组中的值直接复制到曲面中。这比将数组转换为曲面并进行点阵处理更快。该数组的维度必须与Surface相同,并且将完全替换所有像素值。仅接受整数、ASCII字符和记录数组。

此功能将在复制新值时临时锁定曲面。

pygame.surfarray.map_array()
Map a 3d array into a 2d array
map_array(Surface, array3d) -> array2d

将3D数组转换为2D数组。这将使用给定的Surface格式来控制转换。NumPy数组支持调色板表面格式。

pygame.surfarray.use_arraytype()
Sets the array system to be used for surface arrays
use_arraytype (arraytype) -> None

已弃用:对模块函数使用请求的数组类型。唯一受支持的数组类型是 'numpy' 。其他值将引发ValueError。使用此函数将引发 DeprecationWarning

pygame.surfarray.get_arraytype()
Gets the currently active array type.
get_arraytype () -> str

已弃用:返回当前活动的数组类型。这将是 get_arraytypes() 元组,并指示使用哪种类型的数组模块创建数组。使用此函数将引发 DeprecationWarning

New in pygame 1.8.

pygame.surfarray.get_arraytypes()
Gets the array system types currently supported.
get_arraytypes () -> tuple

已弃用:检查可用的数组系统,并将它们作为字符串元组返回。元组的值可以直接在 pygame.surfarray.use_arraytype()Sets the array system to be used for surface arrays ()方法。如果找不到支持的阵列系统,则不会返回任何内容。使用此函数将引发 DeprecationWarning

New in pygame 1.8.




Edit on GitHub