Animer un écran couleur
Les couleurs d'un élément sont spécifiées dans le Couleurs propriétés des propriétés de l'élément. Là, vous pouvez sélectionner soit une couleur de style prédéfinie dans la zone de liste, soit une couleur dans la boîte de dialogue des couleurs.
le DWORD
et est encodé selon l'espace colorimétrique RVB ou l'extension RGBA.
Définition des couleurs dans l'espace colorimétrique RGBA
Important
le Activer le dessin semi-transparent l'option est fournie dans le Gestionnaire de visualisation. Cette option est activée par défaut afin que le Transparence La propriété est disponible pour toutes les définitions de couleur. Avec une définition de couleur par programmation, l'octet de tête est interprété comme un canal alpha et donc utilisé comme valeur de transparence de la couleur. Lorsque l'option est décochée, le Transparence La propriété n'est pas disponible et l'octet de tête est ignoré dans les littéraux de couleur.
Les informations de couleur dans le code sont spécifiées comme DWORD
littéraux. La valeur est dans l'espace colorimétrique RVBA et est généralement affichée sous la forme d'un nombre hexadécimal. La valeur est codée avec des portions additives de rouge, de vert et de bleu. Il est complété par le canal alpha qui détermine la transparence de la couleur.
Ordre des octets d'un littéral de couleur
16#<TT><RR><GG><BB> <TT> : 00 - FF // Transparency in 256 levels <RR> : 00 - FF // Red in 256 levels <GG> : 00 - FF // Green in 256 levels <BB> : 00 - FF // Blue in 256 levels
La valeur de graduation pour la transparence est 16#FF
pour opaque et 16#00
pour transparent. Pour chaque portion de couleur, un octet est réservé pour 256 graduations de couleur 16#FF
pour 16#00
. 16#FF
signifie 100 % de couleur et 16#00
signifie 0% de portion de couleur.
| Octet pour la graduation transparente de |
| Octet pour la partie rouge de |
| Octet pour la partie verte de |
| Octet pour la partie bleue de |
| Bleu, opaque |
| Vert, opaque |
| Jaune. opaque |
| Gris, semi-transparent |
| Noir, semi-transparent |
| Rouge, opaque |
Déclaration globale des constantes de couleur
Animer un élément de visualisation en couleur
Créer un projet standard dans CODESYS.
Déclarez des constantes de couleur globales dans l'arborescence POU.
{attribute 'qualified_only'} VAR_GLOBAL CONSTANT gc_dwRed : DWORD := 16#FFFF0000; gc_dwGreen: DWORD := 16#FF00FF00; gc_dwYellow: DWORD := 16#FFFFFF00; gc_dwBlue: DWORD := 16#FF0000FF; // Highly opaque gc_dwBlack : DWORD := 16#88000000; // Semitransparent END_VAR
Dans l'arborescence des périphériques, déclarez les variables de couleur locales dans
PLC_PRG
.VAR dwFillColor: DWORD := GVL.gc_dwGreen; dwFrameColor : DWORD := GVL.gc_dwBlack; dwAlarmColor : DWORD := GVL.gc_dwRed; END_VAR
Déclarez une variable de contrôle.
bChangeColor : BOOL;
Déclarer une variable d'entrée dans
PLC_PRG
.bInput : BOOL;
Activez l'éditeur de visualisation.
Faites glisser un Rectangle élément à l'éditeur de visualisation.
le Propriétés La vue de l'élément s'ouvre.
Configurez les propriétés du rectangle comme suit :
Variables de couleur, État normal, Couleur de remplissage biens:
PLC_PRG.dwFillColor
Variables de couleur, État normal, Couleur du cadre biens:
PLC_PRG.dwFrameColor
Variables de couleur, État d'alarme, Couleur de remplissage biens:
PLC_PRG.dwAlarmColor
Variables de couleur, Basculer la couleur biens:
<toggle/tap variable>
Configuration d'entrée, Basculer, Variable biens:
PLC_PRG.bInput
Programmez les variables comme suit :
PROGRAM PLC_PRG VAR dwFillColor: DWORD := GVL.gc_dwGreen; dwFrameColor : DWORD := GVL.gc_dwBlack; dwAlarmColor : DWORD := GVL.gc_dwRed; bChangeColor : BOOL; bInput : BOOL; END_VAR IF bChangeColor = TRUE THEN dwFillColor := GVL.gc_dwYellow; dwFrameColor := GVL.gc_dwBlue; ELSE dwFillColor:= GVL.gc_dwGreen; dwFrameColor := GVL.gc_dwBlack; END_IF
Les couleurs sont initialisées à l'exécution. Si la variable
bChangeColor
est alors obligé deTRUE
, l'affichage des couleurs du rectangle change. Lorsque vous cliquez sur le rectangle dans la visualisation, le rectangle s'affiche dans les couleurs d'alarme.