Difference between revisions of "ImageData:setPixel"

(Updated for 11.0)
(Add sentence about thread safety.)
 
(One intermediate revision by one other user not shown)
Line 4: Line 4:
  
 
In versions prior to [[11.0]], color component values were within the range of 0 to 255 instead of 0 to 1.
 
In versions prior to [[11.0]], color component values were within the range of 0 to 255 instead of 0 to 1.
 +
 +
This function locks the ImageData until it is done, making it safe to use from multiple Threads, albeit without any performance gains.
 
== Function ==
 
== Function ==
 
=== Synopsis ===
 
=== Synopsis ===
Line 30: Line 32:
 
* [[parent::ImageData]]
 
* [[parent::ImageData]]
 
* [[ImageData:getPixel]]
 
* [[ImageData:getPixel]]
 +
* [[ImageData:mapPixel]]
 
[[Category:Functions]]
 
[[Category:Functions]]
 
{{#set:Description=Sets the color of a pixel.}}
 
{{#set:Description=Sets the color of a pixel.}}

Latest revision as of 16:23, 25 November 2023

Sets the color of a pixel at a specific position in the image.

Valid x and y values start at 0 and go up to image width and height minus 1.

In versions prior to 11.0, color component values were within the range of 0 to 255 instead of 0 to 1.

This function locks the ImageData until it is done, making it safe to use from multiple Threads, albeit without any performance gains.

Function

Synopsis

ImageData:setPixel( x, y, r, g, b, a )

Arguments

number x
The position of the pixel on the x-axis.
number y
The position of the pixel on the y-axis.
number r
The red component (0-1).
number g
The green component (0-1).
number b
The blue component (0-1).
number a
The alpha component (0-1).

Returns

Nothing.

Examples

Create a 32x1 pixel transparent-to-white gradient drawable image.

data = love.image.newImageData(32,1)
for i=0, 31 do   -- remember: start at 0
   data:setPixel(i, 0, 1, 1, 1, i / 31)
end
img = love.graphics.newImage(data)

See Also


Other Languages