02.01.2019, 13:05
Hi
Here is a script which should convert color temperature to RGB. Never tested on real light but check if it will work.
BR
Here is a script which should convert color temperature to RGB. Never tested on real light but check if it will work.
Code:
Temperature = event.getvalue()
Temperature = Temperature / 100
-- Calculate Red:
if Temperature <= 66 then
Red = 255
else
Red = Temperature - 60
Red = 329.698727446 * math.pow(Red, -0.1332047592)
if Red < 0 then
Red = 0
end
if Red > 255 then
Red = 255
end
end
--Calculate Green:
if Temperature <= 66 then
Green = Temperature
Green = 99.4708025861 * math.log(Green) - 161.1195681661
if Green < 0 then
Green = 0
end
if Green > 255 then
Green = 255
end
else
Green = Temperature - 60
Green = 288.1221695283 * math.pow(Green, -0.0755148492)
if Green < 0 then
Green = 0
end
if Green > 255 then
Green = 255
end
end
--Calculate Blue:
if Temperature >= 66 then
Blue = 255
else
if Temperature <= 19 then
Blue = 0
else
Blue = Temperature - 10
Blue = 138.5177312231 * math.log(Blue) - 305.0447927307
if Blue < 0 then
Blue = 0
end
if Blue > 255 then
Blue = 255
end
end
end
Red = math.floor(Red + 0.5)
Green = math.floor(Green + 0.5)
Blue = math.floor(Blue + 0.5)
Red = lmcore.inttohex(Red, 1)
Green = lmcore.inttohex(Green, 1)
Blue = lmcore.inttohex(Blue, 1)
RGB = lmcore.hextoint(Red..Green..Blue)
grp.update('RGB temp', RGB)
BR
------------------------------
Ctrl+F5
Ctrl+F5