# Temperaturverlauf in Farbe darstellen



## marco94 (18. Nov 2013)

Hey
Suche einen Algorithmus zur Berechnung des rgb für die farbliche Darstellung von Temperaturen (0 bis 100 Grad). 
kalt(blau) bis heiß(rot). 
Kann mir jemand dabei helfen oder hat jemand schon so etwas probiert?


----------



## eMmiE (18. Nov 2013)

In so nem Fall ist Anschauung wichtig
Ich habs zwar noch nicht gemacht, aber für Farben ist Paint immer ein treuer Freund für mich 
Farben -> Palette bearbeiten

Ich würde da einfach mal gucken, welche Linie ich von xRot,yRot nach xBlau,yBlau nehmen würde und das dann als lineare Funktion aufstellen und so, abhängig von der Temperatur die Farbenzusammensetzung berechnen


----------



## marco94 (18. Nov 2013)

Wie ich die Temperaturen darstelle weis ich eh. aber wie berechne ich den rgb-Code für die Temperaturen? Wenn ich zb 90 Grad eingeben soll eine roter rgb Wert rauskommen und wenn ich 10 Grad eingebe dann ein blauer Wert. Wie kann ich dies berechnen ?? Gibt es einen Algorithmus dafür, hab nämlich KA wie ich das berechnen soll?


----------



## NoXiD (18. Nov 2013)

der Farbverlauf in RGB Werten (Achtung 1-min-Selbstanalyse):
Blau: 0 0 255
"richtung" Grün: 0 255 255
Grün: 0 255 0
"richtung" Rot: 255 255 0
Rot: 255 0 0

Da lässt sich eine Struktur erkennen, glaub das das gar nicht so schwer wäre das in die jeweiligen Temperaturen umzurechnen...

alternativ könntest du auch eine statische List mit Wertepaaren anlegen in der du die einzelnen Schritte inkl. Farbe bestimmst zb. 0° = Blau, 10° wärmeres Blau, 20° leichtes Grün, ... . Da kannst du dann auch die Schritte so genau wählen wie du sie brauchst


----------



## marco94 (18. Nov 2013)

ja mit den rgb werten kenn ich mich eh aus , mein problem ist nur wie komme ich von der Temperatur auf diese 3 werte? ich weis nicht wie ich diese berechen soll. wie komme ich wenn ich zb 90 eingebe auf was rötliches? gibt es da keinen algorithmus dafür? :bahnhof:


----------



## NoXiD (18. Nov 2013)

Was mir noch einfällt wäre evntl den HSV zu verwenden...

da könntest du s und l auf 100% konstant lassen und mit h dann (skaliert auf die Temperatur) die Farbe berechnen. Hab das aber in Java noch nie verwendet


----------



## marco94 (18. Nov 2013)

schon mal dankeschön ich werde mich mal schlau machen über das hsv. wenn nicht bleibt mir eh nur das mit der statischen liste übrig.


----------



## eMmiE (18. Nov 2013)

@Richtung blau:

Color searched = new Color(255 * temperaturWert,255,0);
temperaturWert = aktuelleGradzahl / wieVielGradDuDrinHabenMöchtest;

Wenn du jetzt die Grad von 13 bis 100 drin haben möchtest, dann ist das:
temperaturWert = 87 / 25(aktuell) = 0.28;
255 * 0.28 = 71.4;

Einfach Prozentrechnung 

Gruß eMmiE


----------



## marco94 (18. Nov 2013)

Danke werd ich gleich mal versuchen


----------

