Difference between revisions of "ImageData:setPixel"

(Add an example)
(Updated for 11.0)
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
Sets the color of a pixel.
+
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.
 
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.
 
== Function ==
 
== Function ==
 
=== Synopsis ===
 
=== Synopsis ===
Line 10: Line 12:
 
{{param|number|x|The position of the pixel on the x-axis.}}
 
{{param|number|x|The position of the pixel on the x-axis.}}
 
{{param|number|y|The position of the pixel on the y-axis.}}
 
{{param|number|y|The position of the pixel on the y-axis.}}
{{param|number|r|The red component (0-255).}}
+
{{param|number|r|The red component (0-1).}}
{{param|number|g|The green component (0-255).}}
+
{{param|number|g|The green component (0-1).}}
{{param|number|b|The blue component (0-255).}}
+
{{param|number|b|The blue component (0-1).}}
{{param|number|a|The alpha component (0-255).}}
+
{{param|number|a|The alpha component (0-1).}}
 
=== Returns ===
 
=== Returns ===
 
Nothing.
 
Nothing.
Line 21: Line 23:
 
data = love.image.newImageData(32,1)
 
data = love.image.newImageData(32,1)
 
for i=0, 31 do  -- remember: start at 0
 
for i=0, 31 do  -- remember: start at 0
   data:setPixel(i, 1, 255, 255, 255, (i * 8))
+
   data:setPixel(i, 0, 1, 1, 1, i / 31)
 
end
 
end
 
img = love.graphics.newImage(data)
 
img = love.graphics.newImage(data)
Line 27: Line 29:
 
== See Also ==
 
== See Also ==
 
* [[parent::ImageData]]
 
* [[parent::ImageData]]
 +
* [[ImageData:getPixel]]
 
[[Category:Functions]]
 
[[Category:Functions]]
 
{{#set:Description=Sets the color of a pixel.}}
 
{{#set:Description=Sets the color of a pixel.}}

Revision as of 20:27, 1 April 2018

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.

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