Difference between revisions of "love.math.colorToBytes (日本語)"

(Created page with "{{newin (日本語)|11.0|113|type=関数}} 色の範囲を 0..1 から 0..255 へ変換します。 == 関数 == === 概要 === <source lang="lua"> rb, g...")
 
m
Line 43: Line 43:
 
* [[love.math.colorFromBytes (日本語)]]
 
* [[love.math.colorFromBytes (日本語)]]
 
[[Category:Functions]]
 
[[Category:Functions]]
{{#set:Since=110}}
+
{{#set:Since=113}}
{{#set:PrettySince=11.0}}
+
{{#set:PrettySince=11.3}}
 
{{#set:Description=色の範囲を 0..1 から 0..255 へ変換します。}}
 
{{#set:Description=色の範囲を 0..1 から 0..255 へ変換します。}}
  
 
== そのほかの言語 ==
 
== そのほかの言語 ==
 
{{i18n (日本語)|love.math.colorToBytes}}
 
{{i18n (日本語)|love.math.colorToBytes}}

Revision as of 22:21, 8 December 2019

LÖVE 11.0 から使用可能
この関数は以前のバージョンでは非対応です。

色の範囲を 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

関連



そのほかの言語