Auftrennen eines Farbwertes auf RGB

Hallo Community,

in den letzten Monaten habe ich meine Visualisierung (LCN-basiert) sukzessive von Domiq auf IPS mit IPSView umgestellt.

Jetzt bleibt noch die Umstellung des DMX-Busses.

Ich habe für die Einstellung der Farbe in der Visualisierung (IPSView) sowohl mit der RGBBox, als auch mit dem WidgetColor gespielt. Beide legen den Farbwert in einer Integer Variablen ab.

Für die Ansteuerung der diversen RGB-Stripes und RGB-Lampen im DMX-Bus benötige ich aber die drei Werte für R, G und B getrennt.

Im Forum gibt es einen Beitrag von meike0_0 in dem das Problem gelöst ist:

$Color = GetValueInteger(17727);
$rot = floor($Color/65536);
$blau = floor(($Color-($rot65536))/256);
$gruen = $Color-($blau
256)-($rot65536);
DMX_SetValue(51878 /[DMX\DMX Output Devices Wohnzimmer]
/* , 1, $rot);
DMX_SetValue(51878 /[DMX\DMX Output Devices Wohnzimmer]/ , 2, $blau);
DMX_SetValue(51878 /[DMX\DMX Output Devices Wohnzimmer]/ , 3, $gruen);

Kann man das auch als Modul für Workflows bekommen.

Eine Workflow-Lösung würde ich bevorzugen, weil man bei komplexen Funktionen diese wesentlich besser übersehen kann und keine separate Dokumentation erforderlich ist.

Viele Grüße aus Berlin, Dirk

Wenn Du nur die Aufsplittung auf RGB machen willst, dann erstelle ein Formula Modul mit:
1 Eingang
3 Ausgänge
und folgendem PHP Code:

$rot = floor($value1/65536);
$blau = floor(($value1-($rot*65536))/256);
$gruen = $value1-($blau*256)-($rot*65536);

$result1 = $rot;
$result2 = $blau;
$result3 = $gruen;

Hier auch noch ein SubModul für den Workflow dem Du Farbe und ID übergeben kannst:

Color_2_DMX.zip (796 Bytes)

Danker für die Hilfe, ich hatte mir mit dieser Lösung geholfen, die ist aber sehr umständlich.

Morgen werde ich versuchen deinen Vorschlag umzusetzen, der ist sicher eleganter.

Hallo Brownson,
danke für die Hilfe!
Das Formular Modul ist ja wirklich toll, das werde ich sicher öfter nutzen.
Viele Grüße Dirk