Temperatura Cob Led
Enviado: 19 Fev 2025, 22:34
Tem como criar um fader apenas, na janela personalizada para controlar a temperatura dos Cobs leds, quente e frio, tipo subindo esfria e descendo esquenta ou ao contrário??
Interfaces, placas e software para controlar sua iluminação!
https://www.lumikit.com.br/forum/
Código: Selecionar todos
{ Um numero qualquer para definir essa constante,
"1" será o numero do campo onde será informado o canal DMX usado para o outro script que controlara as cores e os dimmers,
"2" será a lista com os grupos}
const
UI_CHANNEL = 1; // canal DMX que vamos ler com a informação de "cor" que vem do outro fader
UI_GROUP = 2; // grupos se wizard que vamos aplicar as cores
procedure OnRegister;
begin
RegisterUIGroupBox(UI_GROUP, 'Grupos');
RegisterUIValue(UI_CHANNEL, 'Canal DMX', 1, 1, 512);
end;
{ Nada aqui, apenas para compilar }
procedure OnStart;
begin
end;
procedure OnExecute;
var
i: integer;
idGroup: integer;
temperaturaDeCor: integer; // vai de 0 a 255
dimmer, ambar, white: integer;
begin
temperaturaDeCor := GetChannel(GetUIValue(UI_CHANNEL));
dimmer := GetDimmer();
// esse valor de ambar e white vai variar entre 0 e 255
// se temperatura de cor for 0, ambar estara no maximo e white no minimo
// se temperatura de cor for 255, ambar estara no minimo e white no maximo
ambar := 255 - temperaturaDeCor;
white := 255 - ambar;
// fazer as cores proporcionais ao dimmer
ambar := trunc((ambar*dimmer)/255);
white := trunc((white*dimmer)/255);
// comecar a ler os grupos que foram selecionados
IteratorUIReset(UI_GROUP);
while IteratorUIRead(UI_GROUP, idGroup) do
begin
// verificar se o aparelho faz parte do grupo marcado fazendo um loop e uma comparacao
for i:=0 to GetFixCount-1 do
begin
if GetFixGroup(i) = idGroup then
begin
SetFixParam(i {id do aparelho DMX},
CT_WHITE {canal},
white {valor});
SetFixParam(i {id do aparelho DMX},
CT_AMBAR {canal},
ambar {valor});
end;
end;
end;
end;
{ "DoTerminate" para desligar o script }
procedure OnTerminate;
begin
DoTerminate;
end;