ImageData:getPixel (Українська)

Отримує колір пікселя в певному місці зображення.

Доступні значення аргументів x та y починаються від 0 і закінчуються на висоті або ширині мінус 1. Дробова частка у нецілих значень відкидається.

В версіях до 11.0 діапазон кольорових компонентів був від 0 до 255, а не від 0 до 1.

O.png В версіях до 0.10.2 ця функція неправильно працювала з дробовими координатами, і могла повернути неправильний результат, коли їй передавалися нецілі значення.  

Функція

Вигляд

r, g, b, a = ImageData:getPixel( x, y )

Аргументи

number x
Позиція пікселя на осі X.
number y
Позиція пікселя на осі Y.

Повертає

number r
Червоний компонент (0-1).
number g
Зелений компонент (0-1).
number b
Синій компонент (0-1).
number a
Альфа-компонент (непрозорість, 0-1).

Приклади

При натисканні кнопки миші використати значення червоного, зеленого та синього компонентів пікселя під мишкою як колір фону.

local imagedata = love.image.newImageData('path/to/Image.png')
local image     = love.graphics.newImage(imagedata)
 
function love.mousepressed(mx, my)
    if  0 <= mx and mx < image:getWidth()
    and 0 <= my and my < image:getHeight() then
        local r, g, b = imagedata:getPixel(mx, my)
        love.graphics.setBackgroundColor(r, g, b)
    end
end
 
function love.draw()
    love.graphics.draw(image, 0, 0)
end

Див. також


Іншими мовами

Dansk – Deutsch – English – Español – Français – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Polski – Português – Română – Slovenský – Suomi – Svenska – Türkçe – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – ไทย – 日本語 – 正體中文 – 简体中文 – Tiếng Việt – 한국어
More info