![]() |
|
Dali interface scenes - Printable Version +- LogicMachine Forum (https://forum.logicmachine.net) +-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1) +--- Forum: Gateway (https://forum.logicmachine.net/forumdisplay.php?fid=10) +--- Thread: Dali interface scenes (/showthread.php?tid=111) |
Dali interface scenes - gjniewenhuijse - 20.10.2015 How to use scenes with the dali interface? Is there a kind of "software scene" object? RE: Dali interface scenes - admin - 21.10.2015 You can create simple scenes by making a script that writes the required values one by one. RE: Dali interface scenes - gjniewenhuijse - 11.11.2015 (21.10.2015, 13:26)admin Wrote: You can create simple scenes by making a script that writes the required values one by one. And saving a scene? Do you have a short example? RE: Dali interface scenes - admin - 12.11.2015 Short example which can be used for any kind of scenes, not only for DALI. First, you have to define each scene via a Lua table where each item is a table with two items: group address and value. Each scene has a unique id which can be a number or a string. callscene(id) sets all objects in given scene to their specified value. First it looks for a saved scene in storage and uses default values if storage is empty. savescene(id) gets current values of all objects from given scene and saves the whole scene in storage. Code: scenes = {}
scenes[1] = {
{ '15/1/1', 50 },
{ '15/1/2', 75 },
{ '15/1/3', 90 },
}
function callscene(id)
local key, scene
key = 'scene_' .. id
scene = storage.get(key, scenes[ id ])
if type(scene) ~= 'table' then
alert('Scene ' .. id .. ' not found')
return
end
for _, item in ipairs(scene) do
grp.write(item[ 1 ], item[ 2 ])
end
end
function savescene(id)
local key, scene
scene = scenes[ id ]
if type(scene) ~= 'table' then
alert('Scene ' .. id .. ' not found')
return
end
for i, item in ipairs(scene) do
scene[ i ][ 2 ] = grp.getvalue(item[ 1 ])
end
key = 'scene_' .. id
storage.set(key, scene)
endRE: Dali interface scenes - gjniewenhuijse - 12.11.2015 many thanks |