用于RGB控制的Lua脚本

问题描述 投票:1回答:1

我最近为计算机中的LED下载了an RGB program。该程序使您可以为照明创建脚本。我希望创建类似this (a colour fade cycle)的东西,但是由于我之前从未在Lua中进行编码,因此我要做的只是其他示例脚本。这是我目前拥有的:

`-- Variables

local delay = 10 -- this is the update rate, in milliseconds
local colour_step = 1.1

--
Lighting.SetStepDuration(200)
Lighting.SetFlashingSpeed(0)
Lighting.SetBreathingModeEnabled(false)

--local r = 15
--local g = 0
--local b = 0

local r, g, b = Lighting.ColourUtils.HSVtoRGB(0, 0.0933, 1)

while true do
    if r > 0 and b == 0 then
        r = r - 1
    g = g + 1
    end
    if g > 0 and r == 0 then
        g = g - 1
    b = b + 1
    end
    if b > 0 and g == 0 then
        b = b - 1
    r = r + 1
    end

    r = tonumber(("%x"):format(r * 15), 16)
    g = tonumber(("%x"):format(g * 15), 16)
    b = tonumber(("%x"):format(b * 15), 16)

    Lighting.BatchBegin()
    for i = 1, 8 do
        Lighting.SetColour(i, r, g, b)
    end
    Lighting.BatchEnd()
    os.sleep(delay)
end'

出现错误:

bad argument #2 to 'SetColour' (value is out of range (range is 0x0-0xF))

非常感谢您提供的帮助。预先感谢。

lua rgb
1个回答
2
投票

我认为错误非常清楚:可接受的颜色值范围是0-15,但是您传递的值超出该范围。似乎您可以简单地删除r = tonumber(("%x"):format(r * 15), 16)行,因为它与r = r * 15相同,在您的情况下可能不需要。

© www.soinside.com 2019 - 2024. All rights reserved.