IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Description of Objects in VPython

Spécification des couleurs

Dans le système de couleur RGB (RVB), vous spécifiez une couleur en terme d'une fraction de rouge, vert et bleu, correspondant à la luminance de chaque point rouge, vert, bleu de l'écran de l'ordinateur. Dans le schéma RGB, le blanc est la couleur avec le maximum de rouge, bleu et vert (1, 1, 1). Le noir en a une quantité minimale (0, 0, 0). Le rouge le plus vif est représenté par (1, 0, 0); Autrement dit, il a une quantité pleine de rouge, nulle en vert et en bleu.

Voici quelques exemples de couleurs RGB, avec les noms que vous pouvez utiliser dans Visual:

    (1,0,0) color.red (1,1,0) color.yellow (0,0,0) color.black
    (0,1,0) color.green (1,0.5,0) color.orange (1,1,1) color.white
    (0,0,1) color.blue (0,1,1) color.cyan  
     (1,0,1) color.magenta  

Vous pouvez aussi créer vos propres couleurs telles que celles-ci:

(0.5, 0.5, 0.5) un gris assez foncé

(1,0.7,0.2) une couleur cuivrée

Les couleurs peuvent apparaître différemment selon l'ordinateur, et sous différentes conditions d'éclairage 3D. Les couleurs nommées ci-dessus sont très problablement affichées convenablement, parce que les valeurs RGB de 0 ou 1 ne sont pas affectées par les différentes corrections sur la couleur (corrections "gamma").

Le programme de démo VPython colorsliders.py vous permet d'ajuster des glissières RGB pour visualiser des couleurs et afficher les triplets de couleur que vous pouvez copier dans votre programme. Il fournit également des glissières HSV pour ajuster la teinte, la saturation (la quantité de blanc ajoutée pour diluer la teinte), et la valeur (luminosité), qui est une autre façon de décrire une couleur.

Actuellement, Visual n'accepte que les descriptions de couleurs RGB, mais il existe des fonctions pour convertir un triplet de couleur de RGB en HSV:

c = (1,1,0)

c2 = color.rgb_to_hsv(c) # conversion de RGB en HSV

print hsv # (0.16667, 1, 1)

c3 = color.hsv_to_rgb(c2) # conversion retour en RGB

print c3 # (1, 1, 0)

Autre exemple: sphere(radius=2, color=hsv_to_rgb( (0.5,1,0.8) )

 


Copyright © 2006 Guillaume et Yoann Duriaud. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.