Class Texture
source code
object --+
|
Texture
A 2 dimensional texture.
The pixel data can come from an image file, an image file stream,
an instance of Image from the Python Imaging Library, a numpy
array, or None.
If the data is a numpy array, floating point numbers are assumed
to be in the range 0.0 to 1.0, and integers are assumed to be in
the range 0 to 255. The first index is the row (y position), the
second index is the column (x position), and if it's RGB or RGBA
data, the third index specifies the color band. Thus, if the
texel data was 640 pixels wide by 480 pixels tall, the array would
have shape (480,640) for luminance information, (480,640,3) for
RGB information, and (480,640,4) for RGBA information.
The 2D texture data is not sent to OpenGL (video texture memory)
until the load() method is called. The unload() method may be
used to remove the data from OpenGL.
A reference to the original image data is maintained.
|
|
|
update(self)
Update texture data
This method does nothing, but may be overriden in classes that
need to update their texture data whenever drawn. |
source code
|
|
|
|
|
|
|
get_texels_as_image(self)
Return texel data as PIL image |
source code
|
|
|
|
|
load(self,
texture_object,
build_mipmaps=True,
rescale_original_to_fill_texture_object=False,
internal_format=gl.GL_RGB)
Load texture data to video texture memory. |
source code
|
|
|
|
Inherited from object :
__delattr__ ,
__getattribute__ ,
__hash__ ,
__new__ ,
__reduce__ ,
__reduce_ex__ ,
__repr__ ,
__setattr__ ,
__str__
|
Inherited from object :
__class__
|
__init__(self,
texels=None,
size=None)
(Constructor)
| source code
|
Creates instance of Texture object.
texels -- Texture data. If not specified, a blank white
texture is created.
size -- If a tuple, force size of texture data if possible,
raising an exception if not. If None, has no effect.
- Overrides:
object.__init__
|
Update texture data
This method does nothing, but may be overriden in classes that
need to update their texture data whenever drawn.
It it called by the draw() method of any stimuli using
textures when its texture object is active, so it can safely
use put_sub_image() to manipulate its own texture data.
|
Unload texture data from video texture memory.
This only removes data from the video texture memory if there
are no other references to the TextureObject instance. To
ensure this, all references to the texture_object argument
passed to the load() method should be deleted.
|
load(self,
texture_object,
build_mipmaps=True,
rescale_original_to_fill_texture_object=False,
internal_format=gl.GL_RGB)
| source code
|
Load texture data to video texture memory.
This will cause the texture data to become resident in OpenGL
video texture memory, enabling fast drawing.
The texture_object argument is used to specify an instance of
the TextureObject class, which is a wrapper for the OpenGL
texture object holding the resident texture.
To remove a texture from OpenGL's resident textures: TextureObject passed as the texture_object argument and 2)
call the unload() method
|