r、g、b値をどのようにしてウェブセーフカラーパレットと比較して、r、g、b値に最適なものを見つけるか? What is the best algorithm for finding the closest color in an array to another color?私はパレットを持っている場合に最も近いウェブセーフカラーを見つける
しかし、私はそれは私が必要なものだとは思わない:
あり、この一つです。私は、r、g、bをwebsafeカラーと比較し、websafeカラーが最良の選択であるかどうかを調べるだけです。
EDIT1:これは私がこれまで持っているものです :EDIT2
を削除しました。
local r, g, b = HSV2RGB(h, s, v)
local dither = copy(WEB_SAFE)
local lmod
for i, v in ipairs(dither) do
local r2, g2, b2 = Color2RGBA(v)
local hh, ss, vv = RGB2HSV(r2, g2, b2)
local a = hh - h
local b = ss - s
local c = vv - v
local mod = a*a + b*b + c*c
if not lmod or mod < lmod then
lmod = mod
r, g, b = r2, g2,b2
end
end
texture:SetBackgroundColor(r, g, b)
編集3: これはどのように見えるのですか?
時間= 1 5つのPTの段階で360を通じて、S = 1〜100、V = 89
これはまさに必要なものです。すべてのWebセーフカラーを1つの配列に配置し、配列内の各色と1つずつ色を比較し、最も差が小さい色を取得します。私はあなたが好きなら、サンプルコードを投稿することができます。 –
各r、g、b値、またはh、s、v、または32ビット数の違いを取る必要はありますか? – Scott
何が起きているの? – Scott