Py5Shape.set_texture_mode()#

Sets a Py5Shape object’s coordinate space for texture mapping.

Examples#

example picture for set_texture_mode()
 1def setup():
 2    py5.size(100, 100, py5.P2D)
 3    img = py5.load_image("tower.jpg")
 4    s = py5.create_shape()
 5    s.begin_shape()
 6    s.vertex(20, 20)
 7    s.vertex(20, 80)
 8    s.vertex(80, 80)
 9    s.vertex(80, 20)
10    s.end_shape(py5.CLOSE)
11
12    s.set_texture(img)
13    s.set_texture_mode(py5.NORMAL)
14    s.set_texture_uv(0, 0, 0)
15    s.set_texture_uv(1, 0, 1)
16    s.set_texture_uv(2, 1, 1)
17    s.set_texture_uv(3, 1, 0)
18
19    py5.shape(s)

Description#

Sets a Py5Shape object’s coordinate space for texture mapping. This method differs from Py5Shape.texture_mode() in that it is only to be used outside the Py5Shape.begin_shape() and Py5Shape.end_shape() methods. Use of this method should be followed by calls to Py5Shape.set_texture_uv() to set the mapping coordinates using the new mode.

The default mode is IMAGE, which refers to the actual pixel coordinates of the image. NORMAL refers to a normalized space of values ranging from 0 to 1. This function only works with the P2D and P3D renderers.

With IMAGE, if an image is 100 x 200 pixels, mapping the image onto the entire size of a quad would require the points (0,0) (100,0) (100,200) (0,200). The same mapping in NORMAL is (0,0) (1,0) (1,1) (0,1).

Underlying Processing method: PShape.setTextureMode

Syntax#

set_texture_mode(mode: int, /) -> None

Parameters#

  • mode: int - either IMAGE or NORMAL

Updated on November 12, 2021 11:30:58am UTC