UmwandelnJavaScript

Javascript-Forum
Anonymous
 Umwandeln

Post by Anonymous »

Ich möchte ein Array von Floats in RBG -Werte konvertieren. Die Schwimmer reichen von 0,0-1,0. Diese Schwimmer repräsentieren Pixel. Einige Pseudocode veranschaulichen: < /p>
image_data = Pillow_package('image') = [12, 235, 63, r2, g2, b2, r3, ...]
for dta in image_data:
decimal_data = (r*256*256 + g*256 + b) / (256**3 + 256**2 + 256) = [0.XX, 0.YY, ...]
< /code>
Ich verwende den folgenden Code (JS), um die RGB -Werte wiederherzustellen: < /p>
val = val * (256*256*256 + 256*256 + 256)
r = Math.floor(val / (256 * 256))
g = Math.floor((val / 256)) % 256
b = val % 256
< /code>
Und das ergibt Folgendes:
Initiale Pixeldaten < /p>
Das Problem ist, wenn ich mit der Simulation beginne. Siehe hier:
Simulation initiiert < /p>
Ich habe die 10 -minütige Physik -Github von Matthias Müller von GetCicolor () verwendet und das beabsichtigte Ergebnis erhalten, aber seine Funktion 'Bins' verwendete FEA -Färbung. Siehe vor und bei Initiierung. < /P>
const min = 0.0
const max = 1.0
val = Math.min(Math.max(val, min), max - .0001)
let d = max - min
val = d == 0.0 ? 0.5 : (val - min) / d
let m = .25
let num = Math.floor(val / m)
let s = (val - num * m) / m

switch (num) {
case 0 : r = 0.0; g = s; b = 1.0; break;
case 1 : r = 0.0; g = 1.0; b = 1.0-s; break;
case 2 : r = s; g = 1.0; b = 0.0; break;
case 3 : r = 1.0; g = 1.0 - s; b = 0.0; break;
}
< /code>
Ich glaube, ich muss seine 'Bins' aus der Switch -Funktion auf meine beabsichtigte Farbskala in Verbindung bringen, aber ich 1) verstehe nicht, was sie tun und 2) nicht, ob das möglich ist. Ich denke, das würde-was scheint-ein Mischproblem zu lösen, auf das ich stieß. Könnte jemand erklären 1) und mich vielleicht runter starten 2) unter der Annahme, dass es möglich ist? Danke.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post