Skip to main content

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 Variables de couleur La propriété element est utilisée pour l'animation des couleurs de l'élément. Lorsque vous transmettez des variables aux propriétés, vous pouvez programmer des changements de couleur dans le code de l'application ou configurer une entrée utilisateur qui entraîne un changement de couleur. Une constante de couleur ou une variable de couleur dans le code a le type de données 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.

<TT>

Octet pour la graduation transparente de 00-FF

<RR>

Octet pour la partie rouge de 00-FF

<GG>

Octet pour la partie verte de 00-FF

<BB>

Octet pour la partie bleue de 00-FF

Exemple 10. Exemple
Tableau 2. Couleur littérale

16#FF0000FF

Bleu, opaque

16#FF00FF00

Vert, opaque

16#FFFFFF00

Jaune. opaque

16#88888888

Gris, semi-transparent

16#88000000

Noir, semi-transparent

16#FFFF0000

Rouge, opaque





Exemple 11. Exemple

Déclaration globale des constantes de couleur



Animer un élément de visualisation en couleur

  1. Créer un projet standard dans CODESYS.

  2. 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                                
  3. 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                                
  4. Déclarez une variable de contrôle.

    bChangeColor : BOOL;
  5. Déclarer une variable d'entrée dans PLC_PRG.

    bInput : BOOL;
  6. Activez l'éditeur de visualisation.

  7. Faites glisser un Rectangle élément à l'éditeur de visualisation.

    le Propriétés La vue de l'élément s'ouvre.

  8. 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

  9. 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é de TRUE, 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.