Mam grupę kolorów i chcę znaleźć ich względną colorfulness. Czy ktoś może pokazać mi przykład w javascript? Wielkie dzięki!Wybierając najbardziej kolorowy kolor w javascript
Odpowiedz
// Można porównać kolory i ich nasycenie brightness-
function rgbtoHsv(rgb){
var c= rgb.match(/\d+/g),
r= c[0]/255, g= c[1]/255, b= c[2]/255,
max= Math.max(r, g, b), min= Math.min(r, g, b),
h= 0, s= 0, v= max;
if(max!= min){
var d= max-min;
s= d/max;
switch(max){
case r: h= (g-b)/d +(g< b? 6: 0);
break;
case g: h= (b-r)/d + 2;
break;
case b: h= (r-g)/d + 4;
break;
}
}
return [Math.round(h*60), Math.round(s*100), Math.round(v*100)];
}
function sortColors(a, b){
var a1= rgbtoHsv(a), b1= rgbtoHsv(b);
return (b1[1]+b1[2])- (a1[1]+a1[2]);
}
var colors = [ 'RGB (255,0,0) "," rgb (150,150,150) "," rgb (0,200,100) "," rgb (0,255,255) "]; // colors.sort (sortColors) .join ('\ n')
/* returned value: (most to least 'colorful')
rgb(255,0,0)
rgb(0,255,255)
rgb(0,200,100)
rgb(150,150,150)
*/
Fantastyczne! połączenie zarówno jasności, jak i nasycenia było tym, czego szukałem. Wielkie dzięki – MachineElf
Funkcja ta zwraca nasycenia (od 0.0 do 1.0) podane wartości RGB:
function saturation(r,g,b) {
var minVal = Math.min(r, g, b);
var maxVal = Math.max(r, g, b);
var delta = maxVal - minVal;
if (maxVal === 0) {
return 0;
} else {
return (delta/maxVal);
}
}
wiem, że poprosił o barwność, ale może to być dobry punkt stwierdzając. (I rzeczywiście nie znał różnicę, dzięki za wskazanie, że strona wikipedia)
Zapomniałeś zadeklarować 's'' –
Również nie potrzebujesz tego, jeśli instrukcja. Jeśli delta wynosi zero, wówczas delta/maxVal będzie równa zero. –
To powinno być w porządku: 'var max = ...; var min = ...; return (max - min)/max; ' –
- 1. Jak uzyskać kolorowy kolor na obrazie?
- 2. Jak ustawić kolor etykiety (kolorowy tekst) w Javie?
- 3. Konwertuj kolor Podstawowy na kolorowy Podstawowy (o ile ciemniejszy)
- 4. JavaScript wybierając obraz do znacznika img
- 5. Notepad ++ druk kolorowy lub alternatywy
- 6. Kolor tła CSS w JavaScript
- 7. kolorowy wykres krawędziowy w matplotlib
- 8. Jak utworzyć kolorowy tekst?
- 9. qt narysuj kolorowy tekst
- 10. Najbardziej szalone zachowanie JavaScript Widziałem kiedyś:
- 11. przezroczysty kolor w javascript D3.js
- 12. GTK: utwórz kolorowy zwykły przycisk.
- 13. Jak uzyskać kolorowy obraz w iPhone SDK
- 14. XPATH wybierając element główny
- 15. Bash: Kolorowy Wyjście z Variable
- 16. Niestandardowy kolor mój UIActivityIndicatorView
- 17. Najbardziej elegancki sposób tworzenia struktury typu Namespace/Class w JavaScript
- 18. wybierając prawdziwą wysokość DIV w jQuery
- 19. Wybierając piksele o największej intensywności w OpenCV
- 20. Dynamicznie wybierając klasę dziedziczącą po
- 21. jQuery - regexp wybierając i removeClass()?
- 22. Wybierając kolor RGB i normalizując go za pomocą UIColor na iPhonie
- 23. wybierając unikatowe wartości z kolumny
- 24. Wykres rozrzutu 3D kolorowy według wartości Z
- 25. FlashWindowEx FLASHW_STOP nadal utrzymuje kolorowy pasek zadań
- 26. Jak zmienić kolor tła za pomocą JavaScript?
- 27. Javascript, zmień kolor znacznika mapy google
- 28. Czy istnieje kolorowy REPL dla Clojure?
- 29. Najbardziej skuteczny sposób ustawiania stylu za pomocą czystego javascript?
- 30. kolor bg, hover,! Important i .css w javascript
Wiesz równanie barwność oparciu o R, G, B o wartości koloru? –
Założę się, że równanie dla barwności jest podobne do x = min (R, G, B); barwność = (R - x + G - x + B - x)/2,0. Ale do czego przydatna jest kolorystyka? Widzę nasycenie lub chromos. – TamusJRoyce
@ Šime, Czy odpowiadasz na wszystkie pytania z pytaniem? @Tamus, dzięki, spróbuję. Kolorowość jest przydatna, jeśli chcesz uniknąć szarych kolorów na palecie. – MachineElf