Spec-Zone.ru › LÖVE

love.math.colorToBytes

Доступно начиная с LÖVE 11.3
Эта функция не поддерживается в более ранних версиях.

Преобразует цвет из диапазона 0..1 в диапазон 0..255.

Функция

Синопсис

rb, gb, bb, ab = love.math.colorToBytes( r, g, b, a )

Аргументы

number r
Красная составляющая цвета.
number g
Зелёная составляющая цвета.
number b
Синяя составляющая цвета.
number a (nil)
Альфа-составляющая цвета.

Возвращает

number rb
Красная составляющая цвета в диапазоне 0..255.
number gb
Зелёная составляющая цвета в диапазоне 0..255.
number bb
Синяя составляющая цвета в диапазоне 0..255.
number ab (nil)
Альфа-составляющая цвета в диапазоне 0..255 или nil, если альфа не указана.

Примечания

Вот реализация для 11.2 и более ранних версий.

function love.math.colorToBytes(r, g, b, a)
	if type(r) == "table" then
		r, g, b, a = r[1], r[2], r[3], r[4]
	end
	r = floor(clamp01(r) * 255 + 0.5)
	g = floor(clamp01(g) * 255 + 0.5)
	b = floor(clamp01(b) * 255 + 0.5)
	a = a ~= nil and floor(clamp01(a) * 255 + 0.5) or nil
	return r, g, b, a
end

Где clamp01 определено следующим образом

local function clamp01(x)
	return math.min(math.max(x, 0), 1)
end

См. также

  • love.math
  • love.math.colorFromBytes


© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.math.colorToBytes

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API