n "Zufalls"-Farben berechnen

JOat

kennt sich schon aus
Hallo,

ich suche dringend einen Lösung für folgendes Problem:

ich muss n Farben berechen (wobei n max 50 ist), dabei sollen aber keine grautöne, kein weiß und kein schwarz vorkommen und ausserdem muss zwischen jeder Farbe die größtmögliche Abstufung sein. Also sowas ähnliches wie eine Farbverlaufstabelle nur nicht als Verlauf sondern abwechselnd, etwa so:

hellrot
hellgrün
hellgelb
hellblau
rot
grün
gelb
blau
dunkelrot
dunkelgrün
dunkelgelb
dunkelblau
...

Sprache ist egal, das einzige was ich nicht zur verfügung hab ist rand(),

wäre spitze wenn jemand n Tip hätte
 
Spassig, Quick and Dirty? Dann probier mal das im Anhang.
Selbstverfreilich von .txt in .php umbenennen und auf php4-fähigem Space testen.


LG
 

Anhänge

  • test1.txt
    1,9 KB · Aufrufe: 324
Ohne Randomize also...

Also wenn ich RGB-Grundwissen vorraussetzen darf, ist ein Farbkreis ganz einfach:

Bei Schwarz/Weiss und Grautönen ist R=G=B

Abstufungen (gleichmässig) gibt es durch Stufenwerte.
zB ist 255/0/0= Rot, 128/0/0 ist braun

Wenn nun G und B gleichmässig von 0->255 wandern, wird aus Rot zunehmend hellrot, letztlich weiss.
Hellrot liegt entweder bei 255/128/128bzw 255/192/192.

Selbiges gilt auch für Grün und Blau.

R mit B gemischt ergibt Violet, 255/0/128 ist zB Pink
Wird grün dazu gegeben, tendiert es gegen Orange-Rot -> 255/128/128
Reines Orange ist 255/128/0, Gelb 255/255/0

Falls Intervalle Programmiert werden sollen, die einen deutlichen Farbunterschied
ergeben sollen, wäre 64 ideal (0/64/128/192/255).
Damit wäre es 5^3 Kombination =125, nimmt man die R=G=B-Farben raus, bleiben
125-(5*3) = 110 - sollte reichen.

128 als Intervall (0/128/255) ergibt 3^3 Farben = 27 - abzüglich Grau = 9 bleiben 18.
Das sind zwei mehr als die 16 Grundfarben, die aber schon 5 Grauwerte (inkl s/w)
enthalten.

Es gibt für das Web eine sogenannte websichere Farbtabelle mit 216 Farben.
http://www.lerneniminternet.de/htm/tip_farbtabelle.html

Es gibt auch Tabellen, die mit dem Abstand 33h arbeiten (dez=51 -> 5*51=255)
(0/55/110/165/210/255) = 6^3 = 216
Evtl ist das ja dasselbe. Ohne Grautöne wären es 198 echte Farben.
 
Huhu,

kommt da noch was nach? Interessantes Thema, aber keine Weiterführung oder wenigstens Erfolgs-/ Misserfolgsmeldung. Fänd ich schade.

LG
 
Sorry, aber ich hab momentan leider viel zu tun :)

Leider habe ich keinen Weg gefunden bzw. hat nichts so funktioniert wie ich es mir vorgestellt habe (bzw. wie ich es brauche) [liegt zum. teil auch an der limitation dieser Scriptsprache]

Ich hab jetzt einfach aus den 216 sicheren Farben soviele wie ich brauche rausgesucht und direkt im Code hinterlegt :)
 
Oben