Colormanager as3

Soyez le premier à donner votre avis sur cette source.

Vue 5 605 fois - Téléchargée 395 fois

Description

Je partage cette classe que j'ai créée pour m'aider dans des projets nécessitant de travailler avec différents formats de couleur (RVB, hexadecimal, TSL).

Pour l'instant, le ColorManager permet de :
- convertir du RVB en hexadécimal (Number ou String) et vice versa
- convertir du ARVB en hexadécimal (Number ou String) et vice versa
- convertir du RVB en TSL (Teinte, Saturation, Luminosité) et vice versa
(ce qui permet bien sur de convertir aussi de l'hexadécimal en TSL, et vice versa)
- désaturer une couleur
- générer une couleur aléatoire

Il y assez peu de commentaires dans mon code, pour la simple raison que la plupart des fonctions sont des applications de formules mathématiques, il n'y a donc pas de logique particulière, ce ne sont que des calculs.

Vous retrouverez ces formules ainsi que beaucoup d'autres sur cette page qui m'a bien dépanné :
http://www.easyrgb.com/index.php?X=MATH

Source / Exemple :


// Exemple d'utilisation :

// Importer la classe

import com.m.ColorManager;

// Générer une couleur aléatoire

var myRandomColor:Number = ColorManager.getRandomColor();

// Récupérer les valeurs RVB de cette couleur (sous la forme d'un objet)

var myRandomRGB:Object = ColorManager.getRGBFromHex( myRandomColor );

// Afficher chaque valeur

trace( "R: " + myRandomRGB.r + ", G: " + myRandomRGB.g + ", B: " + myRandomRGB.b );

Conclusion :


Si vous trouvez des erreurs dans ce code,
si vous pensez à quelque chose d'utile à rajouter,
si vous faites vous-même des modifications que vous voulez partager,
contactez-moi !

Par exemple, toutes les fonctions sont en "public static" afin d'être utilisées sans créer d'instance du ColorManager, même la fonction "getColorValueFromPQH", qui est une sous-fonction de "getRGBfromHSL" et qui n'est pas destinée à être appelée de l'extérieur...
Y'a t'il un moyen de la rendre privée ? Pour l'instant je bloque là-dessus.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_mouahaha
Messages postés
209
Date d'inscription
mercredi 4 août 2004
Statut
Membre
Dernière intervention
6 avril 2009
1
@Top30 : Merci pour le getRandomColor, c'est nettement plus clean comme ça. Je viens de faire la mise à jour. :)
Sinon oui cette classe est bien de moi. Comme je le dis dans la description, ce n'est cependant qu'on regroupement de calculs mathématiques, ce qui fait que les mêmes formules sont utilisées dans la plupart des codes de ce genre, d'où ta question j'imagine... Le plus gros de mon travail a juste été de les traduire en AS3. D'ailleurs j'ai dès le début remercié et mis en lien la page qui m'a servi à trouver ces formules.
Et moi non plus je ne savais pas qu'on pouvait utiliser plus de deux paramètres dans les Math.min et max, c'est justement en faisant cette source que je m'en suis rendu compte... ;)
Merci pour ton commentaire !
top30
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010

getRandomColor():Number{
return Math.random()*0xFFFFFF ;
}
En tout cas merci, car grace à toi j'ai découvert que Math.max et Math.min acceptaient plus de deux arguments !!!! J'ai un petit doute sur le fait que la source soit de toi. Tu confirmes ? C'est juste que si tu te base sur le code quelqu'un c'est bien de le signaler et le remercier...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.