Programmation Python : convertisseur RGB hexadécimal avec affichage des couleurs
Les couleurs en décimales
En informatique, on utilise souvent le système RGB pour coder les couleurs qui doivent apparaître à l'écran. RGB est l'abréviation de Red Green Blue (on dit aussi RVB en français). Chaque point de couleur à l'écran est formé de l'addition de trois couleurs fondamentales: une lumière rouge, une lumière verte et une lumière bleue. La synthèse additive est la composition d'une couleur par addition de lumière. Les trois couleurs primaires choisies sont le bleu, le rouge, le vert. Ce phénomène de la synthèse additive peut être observé dans une pièce plongée dans le noir, en projetant des spots des trois couleurs primaires sur un mur blanc. Voici les principales couleurs obtenues.
Les quantités de chaque lumière varient entre la valeur 0 et la valeur 255.
Voici un tableau représentant les codes en décimal de certaines couleurs qu'on va obtenir à partir des 3 couleurs primaires.
Les couleurs en hexadécimales
Voici un tableau représentant les codes en hexadécimal de certaines couleurs qu'on va obtenir à partir des trois couleurs primaires.
Conversion du décimal en hexadécimal et inversement
Schéma qui représente une division euclidienne.
Légende : a= dividende; b= diviseur; r= reste; q= quotient
Pour les couleurs, le dividende peut varier de 0 à 255. Le diviseur est 16 puisqu'on veut obtenir du hexadécimal (base 16).
Pour obtenir un nombre en héxadécimal on a besoin du quotient et le reste de ce nombre. Pour le quotient il faut seulement prendre sa partie entière.
Pour obtenir le quotient il suffit d'utiliser la formule suivante :
q= a/ 16
Pour obtenir le reste il suffit d'utiliser cette formule :
r= a- q* 16
Une fois qu'on a trouvé le quotient et le reste il faut savoir à quoi correspondent ces chiffres en hexadécimal (voir le tableau ci-dessous)
127 en hexadécimal
a= 127
b= 16
q= 127/ 16 (prendre seulement la partie entière )
q= 7.9375
r= 127-7 * 16
r= 15
127 en hexadécimal = q,r
127 = 7F
Le système hexadécimal est un système de numérisation en base 16. Il utilise donc les 16 symboles. Les chiffres arabes pour les 10 premiers chiffres (de 0 à 9) et pour les 6 chiffres suivants on utilise des lettres de A à F. Pour la couleur le système hexadécimal est de 00 à FF.
8F en décimal
8 en hexadécimal correspond à 8 en décimal
F en hexadécimal correspond à 15 en décimal
Il suffit d'appliquer la formule :
8F = 8*16^1+ 15*16^0
= 143
Le tableau suivant représente la correspondance des 16 chiffres décimal en hexadécimal