Reclasser des couleurs en selon leur longueur d'onde (arc en ciel) - PHP - Programmation
Marsh Posté le 08-02-2007 à 14:43:33
Pour ton tris, tu fais quoi un tri majeur sur la teinte et un tri mineur sur la saturation (on ne tri que les couleurs dont les teintes sont égales) ou bien tu fais un tri sur la teinte suivit d'un autre tri indépendant sur la saturation?
Marsh Posté le 08-02-2007 à 14:47:18
je calcule une valeur qui permet de trier mon tableau
val = teinte *100000+ luminosité
jai aussi essayé ca
val = teinte *100000+ luminosité*100+saturation
val = teinte *100000+ saturation*100+luminosité
val = teinte *100000+ (saturation+luminosité)
puis je fait un asort dessus....
Marsh Posté le 08-02-2007 à 15:18:41
De mémoire, il existe en php une fonction de tri qui prend comme paramettre un tableau et une fonction personelle.
La fonction personelle prend comme paramettre les deux valeurs à trier et donne en sortie -1, 0 ou 1 pour indiquer qu'elle est la plus petite des valeurs.
Si tu veux garder ton calcul, alors il faut multiplier au moins par 101 et 10201 vu que la luminosité et la saturation vont de 0 à 100 compris (donc 101 valeurs différentes)
A noter qu'avec asort, tu gardes les même index pour chaque case, (les index ne sont plus dans l'ordre de départ) peut être que ton probléme viens de la méthode de parcours du tableau.
PS : Pose ton code qu'on voye ça si ca ne marche toujours pas.
Marsh Posté le 08-02-2007 à 11:55:05
j'ai un tableau avec des couleurs en php , j'aimerais le reclasser suivant leur longeur d'onde (ex : rouge foncé rouge clair , orange, orange clair , jaune, vert citron ,vert etc....) , le classement doit etre dynamique je ne peut le faire avant , ni prevoir les couleurs qui vont etre dans le tableau (en le generant par exemple)
pour cela j'ai converti ma couleur RGB vers le format HSL (Teinte Saturation Luminosité)
et je les reclasse suivant la teinte, seulement voila , du rouge , du gris clair , et du gris foncé on tous la même teinte (zero), et se retrouve donc melangé entre eux.
Si je reclasse d'apres la teinte, puis la saturation (qui permet de distingué le rouge du gris) ca va mieux mais les gris clair sont tjs melangé avec les autres gris.... (et teinte , saturation , luminosité ne donne rien non plus)
bref ca marche pas tres fort
qqn aurait des idées????
Message édité par red faction le 08-02-2007 à 12:58:01