public static class GRobot.Farba extends Color implements Comparable<Color>
Trieda obaľuje triedu Javy Color
. Mierne
rozširuje a upravuje jej správanie, najmä v súvislosti so získavaním
farieb so svetlejším alebo tmavším odtieňom, kde sa berie do úvahy aj úroveň
priehľadnosti, ktorú zachováva. Ďalšie vybrané metódy sú k dispozícii
s názvami preloženými do slovenského jazyka. Neceločíselné rozsahy
(0.0
– 1.0
) typu float
umožňuje
zadávať ako údajový typ double
, pretože tento údajový typ
je široko používaný grafickým robotom a nevyžaduje špeciálnu syntax pri
vkladaní hodnôt. (Konkrétne tým trieda programátora oslobodzuje od
nevyhnutnosti používania operátora pretypovania: (
float
)
.)
Rovnako ako originálna trieda Color
i trieda Farba
pracuje buď v predvolenom sRGB farebnom priestore,
alebo vo farebnom priestore definovanom pomocou triedy ColorSpace
. Každá farba má vlastnú úroveň
(ne)priehľadnosti, ktorá je predvolene nastavená na „nepriehľadnú“
alebo môže byť určená v rámci povoleného rozsahu (pozri konštruktory
nižšie). V súlade s konvenciou triedy Color
znamená
najvyššia hodnota atribútu „priehľadnosti“ (Color.getAlpha()
)
úplne nepriehľadný bod a naopak.
Množstvo predvolených farebných inštancií je definovaných v rozhraní
Farebnosť
. Nasledujúci príklad ukazuje ich využitie
pri kreslení kruhov vyplnených náhodnou farbou:
// Zoznam farieb
final
Farba
[] farby = {svetločervená
,červená
,tmavočervená
,svetlozelená
,zelená
,tmavozelená
,svetlomodrá
,modrá
,tmavomodrá
,svetlotyrkysová
,tyrkysová
,tmavotyrkysová
,svetlopurpurová
,purpurová
,tmavopurpurová
,svetložltá
,žltá
,tmavožltá
,čierna
,tmavošedá
,šedá
,svetlošedá
,biela
,svetlohnedá
,hnedá
,tmavohnedá
,svetlooranžová
,oranžová
,tmavooranžová
,svetloružová
,ružová
,tmavoružová
, };skry
();Svet
.nekresli
();for
(int
i =0
; i <1000
; ++i) {// Náhodná poloha kruhu
double
skočNaX =Svet
.náhodnéReálneČíslo
(Svet
.najmenšieX
(),Svet
.najväčšieX
());double
skočNaY =Svet
.náhodnéReálneČíslo
(Svet
.najmenšieY
(),Svet
.najväčšieY
());// Náhodná farba a veľkosť kruhu
int
ktoráFarba = (int
)Svet
.náhodnéCeléČíslo
(farby.length -1
);double
akáVeľkosť =Svet
.náhodnéCeléČíslo
(25
,50
);// Nakreslenie farebného kruhu
skočNa
(skočNaX, skočNaY);farba
(farby[ktoráFarba]);kruh
(akáVeľkosť);// Prekreslenie každú 10-tu iteráciu
if
(i %10
==0
) {Svet
.prekresli
();Svet
.čakaj
(0.050
); } }Svet
.kresli
();
V príklade je najprv definovaný zoznam farieb v poli, z ktorého sa
neskôr vyberá náhodná farba. Skryje sa
aktuálny kresliaci robot a vypne sa
automatické prekresľovanie (aby bolo vykonanie príkladu rýchlejšie).
Potom sa tisíc ráz opakuje sekvencia príkazov na kreslenie kruhu
(for
(i =
… 1000
…). Kruh
sa má nakresliť na náhodnej pozícii, má byť
vyplnený náhodnou farbou (v rámci spomenutého zoznamu farieb) a má
mať náhodnú veľkosť (s polomerom medzi 25 až 50 bodov) – generovanie
náhodných súradníc, veľkosti a výber náhodnej farby sú kvôli
prehľadnosti oddelené od časti samotného kreslenia kruhu. V cykle sa
nachádza blok príkazov na prekreslenie
s podmienkou určujúcou, že (exaktne povedané) prekreslenie sa má
vykonať vždy, keď je riadiaca premenná cyklu i
deliteľná
desiatimi bezo zvyšku (i %
10
) – to znamená, že sa
vykoná každý desiaty raz. Pri prekreslení je program zároveň
pozdržaný o 50 milisekúnd – to by
znamenalo, že ak by prekreslenie nezaberalo určitý čas, tak by sa celý
program stihol vykonať za asi 5 sekúnd; v skutočnosti je to viac,
pretože prekresľovanie trvá postrehnuteľne dlhší čas. Nakoniec je
opätovne zapnuté automatické prekresľovanie.
S novšími príkazmi triedy GRobot
sa dá predchádzajúci
príklad skrátiť takto:
skry
();Svet
.nekresli
();for
(int
i =0
; i <1000
; ++i) {// Voľba náhodnej veľkosti kruhu
double
polomer =Svet
.náhodnéCeléČíslo
(25
,50
);// Nakreslenie farebného kruhu
náhodnáPoloha
();náhodnáFarba
();kruh
(polomer);// Prekreslenie každú 10-tu iteráciu
if
(i %10
==0
) {Svet
.prekresli
();Svet
.čakaj
(0.050
); } }Svet
.kresli
();
Farebnosť
,
Color
,
ColorSpace
,
Serializovateľnosťblack, BLACK, blue, BLUE, cyan, CYAN, DARK_GRAY, darkGray, gray, GRAY, green, GREEN, LIGHT_GRAY, lightGray, magenta, MAGENTA, orange, ORANGE, pink, PINK, red, RED, white, WHITE, yellow, YELLOW
BITMASK, OPAQUE, TRANSLUCENT
Konštruktor a opis |
---|
Farba(Color c)
Vytvorí inštanciu farby z jestvujúcej inštancie triedy
Color . |
Farba(ColorSpace cspace,
float[] components,
float alpha)
Vytvorí inštanciu farby v určenom farebnom priestore (
ColorSpace ). |
Farba(double r,
double g,
double b)
Vytvorí nepriehľadnú farbu zo zložiek červená (r), zelená (g)
a modrá (b) v rozsahu (0.0 – 1.0).
|
Farba(double r,
double g,
double b,
double a)
Vytvorí farbu zo zložiek červená (r), zelená (g), modrá (b)
a priehľadnosť (a) v rozsahu (0.0 – 1.0).
|
Farba(Farebnosť o)
Vytvorí novú inštanciu farby podľa farby zadaného objektu.
|
Farba(int rgb)
Vytvorí nepriehľadnú farbu vo farebnom priestore sRGB, pričom
jednotlivé farebné zložky tvoria skupiny bitov: červená bity 16 –
23, zelená 8 – 15 a modrá 0 – 7.
|
Farba(int rgba,
boolean hasalpha)
Vytvorí farbu vo farebnom priestore sRGB, pričom jednotlivé
farebné zložky a priehľadnosť tvoria skupiny bitov: červená bity
16 – 23, zelená 8 – 15, modrá 0 – 7 a priehľadnosť 24 – 31.
|
Farba(int r,
int g,
int b)
Vytvorí nepriehľadnú farbu vo farebnom priestore sRGB zo zložiek
červená (r), zelená (g) a modrá (b) v rozsahu (0 – 255).
|
Farba(int r,
int g,
int b,
int a)
Vytvorí farbu vo farebnom priestore sRGB zo zložiek červená (r),
zelená (g), modrá (b) a priehľadnosť (a) v rozsahu (0 – 255).
|
Modifikátor a typ | Metóda a opis |
---|---|
GRobot.Farba |
bledsia()
Alias pre
svetlejšia . |
GRobot.Farba |
bledsia(double faktor)
Alias pre
svetlejšia . |
GRobot.Farba |
bledšia()
Alias pre
svetlejšia . |
GRobot.Farba |
bledšia(double faktor)
Alias pre
svetlejšia . |
int |
cervena()
Alias pre
červená . |
int |
compareTo(Color ináFarba)
Táto metóda je súčasťou implementácie rozhrania
Comparable . |
int |
červená()
|
static GRobot.Farba |
dialogVolbaFarby()
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialógVoľbaFarby()
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialogVolbaFarby(GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialógVoľbaFarby(GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialogVolbaFarby(String titulok)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialógVoľbaFarby(String titulok)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialogVolbaFarby(String titulok,
GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialógVoľbaFarby(String titulok,
GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
dialogVyberFarby()
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialógVýberFarby()
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialogVyberFarby(GRobot.Farba počiatočnáFarba)
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialógVýberFarby(GRobot.Farba počiatočnáFarba)
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialogVyberFarby(String titulok)
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialógVýberFarby(String titulok)
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialogVyberFarby(String titulok,
GRobot.Farba počiatočnáFarba)
Alias pre
vyberFarbu . |
static GRobot.Farba |
dialógVýberFarby(String titulok,
GRobot.Farba počiatočnáFarba)
Alias pre
vyberFarbu . |
static String |
farbaNaRetazec(Color farba)
Alias pre
farbaNaReťazec . |
static String |
farbaNaReťazec(Color farba)
Prevedie zadanú inštanciu farby do textovej podoby.
|
static String |
farbaNaRetazec(Farebnosť farba)
Alias pre
farbaNaReťazec . |
static String |
farbaNaReťazec(Farebnosť farba)
Prevedie zadanú implementáciu farebnosti do textovej podoby.
|
static int |
HSBtoRGB(double h,
double s,
double b)
Vykoná konverziu z farebnej reprezentácie HSB do RGB.
|
static int |
HSVtoRGB(double h,
double s,
double v)
Vykoná konverziu z farebnej reprezentácie HSV do RGB.
|
GRobot.Farba |
menejPriehladna()
Alias pre
nepriehľadnejšia . |
GRobot.Farba |
menejPriehľadná()
Alias pre
nepriehľadnejšia . |
GRobot.Farba |
menejPriehladna(double faktor)
Alias pre
nepriehľadnejšia . |
GRobot.Farba |
menejPriehľadná(double faktor)
Alias pre
nepriehľadnejšia . |
int |
modra()
Alias pre
modrá . |
int |
modrá()
|
GRobot.Farba |
nepriehladnejsia()
Alias pre
nepriehľadnejšia . |
GRobot.Farba |
nepriehladnejsia(double faktor)
Alias pre
nepriehľadnejšia . |
GRobot.Farba |
nepriehľadnejšia()
Vytvorí menej priehľadnú verziu tejto farby.
|
GRobot.Farba |
nepriehľadnejšia(double faktor)
Vytvorí menej priehľadnú verziu tejto farby na základe zadaného
faktora.
|
GRobot.Farba |
priehladnejsia()
Alias pre
priehľadnejšia . |
GRobot.Farba |
priehladnejsia(double faktor)
Alias pre
priehľadnejšia . |
GRobot.Farba |
priehľadnejšia()
Vytvorí priehľadnejšiu verziu tejto farby.
|
GRobot.Farba |
priehľadnejšia(double faktor)
Vytvorí priehľadnejšiu verziu tejto farby na základe zadaného
faktora.
|
int |
priehladnost()
Alias pre
priehľadnosť . |
int |
priehľadnosť()
|
static GRobot.Farba |
retazecNaFarbu(String text)
Alias pre
reťazecNaFarbu . |
static GRobot.Farba |
reťazecNaFarbu(String text)
Prevedie zadaný reťazec reprezentujúci farbu na inštanciu farby.
|
static double[] |
RGBtoHSB(int rgb)
Vykoná konverziu z farebnej reprezentácie RGB do HSB.
|
static void |
RGBtoHSB(int rgb,
double[] hsb)
Vykoná konverziu z farebnej reprezentácie RGB do HSB.
|
static double[] |
RGBtoHSV(int rgb)
Vykoná konverziu z farebnej reprezentácie RGB do HSV.
|
static void |
RGBtoHSV(int rgb,
double[] hsv)
Vykoná konverziu z farebnej reprezentácie RGB do HSV.
|
static boolean |
spravnyFormat(String text)
Alias pre
správnyFormát . |
static boolean |
správnyFormát(String text)
Posúdi, či je zadaný reťazec v rozpoznateľnom formáte
reprezentujúcom farbu.
|
GRobot.Farba |
svetlejsia()
Alias pre
svetlejšia . |
GRobot.Farba |
svetlejsia(double faktor)
Alias pre
svetlejšia . |
GRobot.Farba |
svetlejšia()
Vytvorí novú bledšiu verziu tejto farby.
|
GRobot.Farba |
svetlejšia(double faktor)
Vytvorí novú bledšiu verziu tejto farby.
|
GRobot.Farba |
tmavsia()
Alias pre
tmavšia . |
GRobot.Farba |
tmavsia(double faktor)
Alias pre
tmavšia . |
GRobot.Farba |
tmavšia()
Vytvorí novú tmavšiu verziu tejto farby.
|
GRobot.Farba |
tmavšia(double faktor)
Vytvorí novú tmavšiu verziu tejto farby.
|
String |
toString()
Reťazcová reprezentácia tejto farby na účely ladenia obsahujúca
informáciu o farebných zložkách a alfe.
|
static GRobot.Farba |
vyberFarbu()
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
vyberFarbu(GRobot.Farba počiatočnáFarba)
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
vyberFarbu(String titulok)
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
vyberFarbu(String titulok,
GRobot.Farba počiatočnáFarba)
Otvorí dialóg na výber farby.
|
int |
zelena()
Alias pre
zelená . |
int |
zelená()
|
static GRobot.Farba |
zvolFarbu()
Alias pre
zvoľFarbu . |
static GRobot.Farba |
zvoľFarbu()
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
zvolFarbu(GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
zvoľFarbu(GRobot.Farba počiatočnáFarba)
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
zvolFarbu(String titulok)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
zvoľFarbu(String titulok)
Otvorí dialóg na výber farby.
|
static GRobot.Farba |
zvolFarbu(String titulok,
GRobot.Farba počiatočnáFarba)
Alias pre
zvoľFarbu . |
static GRobot.Farba |
zvoľFarbu(String titulok,
GRobot.Farba počiatočnáFarba)
Otvorí dialóg na výber farby.
|
brighter, createContext, darker, decode, equals, getAlpha, getBlue, getColor, getColor, getColor, getColorComponents, getColorComponents, getColorSpace, getComponents, getComponents, getGreen, getHSBColor, getRed, getRGB, getRGBColorComponents, getRGBComponents, getTransparency, hashCode, HSBtoRGB, RGBtoHSB
public Farba(Farebnosť o)
o
– objekt, ktorého farba určí novú farbupublic Farba(ColorSpace cspace, float[] components, float alpha)
ColorSpace
). Pre rôzne farebné priestory
platia rôzne podmienky. Napríklad: RGB vyžaduje tri komponenty, ale
CMYK štyri.
Tento konštruktor bol vytvorený na zabezpečenie plnej
kompatibility s triedou Color
.
cspace
– farebný priestor použitý na interpretáciu farebných
zložiekcomponents
– potrebný počet farebných zložiek požadovaný
zadaným farebným priestoromalpha
– hodnota priehľadnosti (0.0 – neviditeľná farba; 1.0 –
nepriehľadná farba)IllegalArgumentException
– ak je hociktorá hodnota
farebnej zložky alebo priehľadnosti mimo povoleného rozsahu
0.0 – 1.0ColorSpace
public Farba(double r, double g, double b)
r
– červená zložkag
– zelená zložkab
– modrá zložkaIllegalArgumentException
– ak je hodnota r
,
g
alebo b
mimo povoleného rozsahu 0.0 – 1.0public Farba(double r, double g, double b, double a)
r
– červená zložkag
– zelená zložkab
– modrá zložkaa
– priehľadnosť (0.0 – neviditeľná farba;
1.0 – nepriehľadná farba)IllegalArgumentException
– ak je hodnota r
,
g
, b
alebo a
mimo povoleného rozsahu
0.0 – 1.0public Farba(int rgb)
rgb
– konbinácia zložiek RGBpublic Farba(int rgba, boolean hasalpha)
false
, je priehľadnosť nastavená
na hodnotu 255 (nepriehľadná farba).rgba
– konbinácia zložiek RGBAhasalpha
– ak má byť množina bitov priehľadnosti (bity
číslo 24 až 31) braná do úvahy, musí byť true
public Farba(int r, int g, int b)
r
– červená zložkag
– zelená zložkab
– modrá zložkaIllegalArgumentException
– ak je hodnota r
,
g
alebo b
mimo povoleného rozsahu 0 – 255public Farba(int r, int g, int b, int a)
r
– červená zložkag
– zelená zložkab
– modrá zložkaa
– priehľadnosť (0 – neviditeľná farba;
255 – nepriehľadná farba)IllegalArgumentException
– ak je hodnota r
,
g
, b
alebo a
mimo povoleného rozsahu
0 – 255public int červená()
public int cervena()
červená
.public int zelená()
public int zelena()
zelená
.public int modrá()
public int modra()
modrá
.public int priehľadnosť()
public int priehladnost()
priehľadnosť
.public GRobot.Farba svetlejšia()
Upozornenie: I keď sú operácie svetlejšia
a tmavšia
opačné, ich niekoľkonásobné striedavé
použitie môže v dôsledku zaokrúhlení viesť ku získaniu úplne inej
farby.
Farba
s bledšou
verziou tejto farbysvetlejšia()
,
tmavšia()
public GRobot.Farba svetlejsia()
svetlejšia
.public GRobot.Farba bledšia()
svetlejšia
.public GRobot.Farba bledsia()
svetlejšia
.public GRobot.Farba tmavšia()
Upozornenie: I keď sú operácie svetlejšia
a tmavšia opačné, ich niekoľkonásobné striedavé
použitie môže v dôsledku zaokrúhlení viesť ku získaniu úplne inej
farby.
Farba
s tmavšou
verziou tejto farbypublic GRobot.Farba tmavsia()
tmavšia
.public GRobot.Farba priehľadnejšia()
Farba
s priehľadnejšou
verziou tejto farbypublic GRobot.Farba priehladnejsia()
priehľadnejšia
.public GRobot.Farba nepriehľadnejšia()
Farba
s menej
priehľadnou verziou tejto farbypublic GRobot.Farba nepriehladnejsia()
nepriehľadnejšia
.public GRobot.Farba menejPriehľadná()
nepriehľadnejšia
.public GRobot.Farba menejPriehladna()
nepriehľadnejšia
.public GRobot.Farba svetlejšia(double faktor)
Upozornenie: I keď sú operácie svetlejšia
a tmavšia
opačné, ich niekoľkonásobné
striedavé použitie môže v dôsledku zaokrúhlení viesť ku získaniu
úplne inej farby.
faktor
– faktor zosvetlenia – hodnota v rozsahu 0.0 – 1.0,
pričom krajné hodnoty (0.0 a 1.0) nie sú povolené; čím je
hodnota faktora nižšia, tým je zmena svetlosti výraznejšiaFarba
s bledšou
verziou tejto farbypublic GRobot.Farba bledšia(double faktor)
svetlejšia
.public GRobot.Farba bledsia(double faktor)
svetlejšia
.public GRobot.Farba svetlejsia(double faktor)
svetlejšia
.public GRobot.Farba tmavšia(double faktor)
Upozornenie: I keď sú operácie svetlejšia
a tmavšia
opačné, ich niekoľkonásobné
striedavé použitie môže v dôsledku zaokrúhlení viesť ku získaniu
úplne inej farby.
faktor
– faktor stmavenia – hodnota v rozsahu 0.0 – 1.0,
pričom krajné hodnoty (0.0 a 1.0) nie sú na použitie vhodné
(0.0 by stmavila farbu do čiernej a 1.0 by nevykonala žiadnu
zmenu svetlosti); čím je hodnota faktora nižšia, tým je
úroveň stmavenia výraznejšiaFarba
s tmavšou
verziou tejto farbypublic GRobot.Farba tmavsia(double faktor)
tmavšia
.public GRobot.Farba priehľadnejšia(double faktor)
faktor
– faktor spriehľadnenia – hodnota v rozsahu 0.0 – 1.0,
pričom krajné hodnoty (0.0 a 1.0) nie sú na použitie vhodné
(0.0 by nastavila farbu na úplne priehľadnú a 1.0 by
nevykonala žiadnu zmenu priehľadnosti); čím je hodnota
faktora nižšia, tým je úroveň zmeny priehľadnosti výraznejšiaFarba
s priehľadnejšou
verziou tejto farbypublic GRobot.Farba priehladnejsia(double faktor)
priehľadnejšia
.public GRobot.Farba nepriehľadnejšia(double faktor)
faktor
– faktor znepriehľadnenia – hodnota v rozsahu 0.0 –
1.0, pričom krajné hodnoty (0.0 a 1.0) nie sú povolené; čím
je hodnota faktora nižšia, tým je zmena nepriehľadnosti
výraznejšiaFarba
s menej
priehľadnou verziou tejto farbypublic GRobot.Farba nepriehladnejsia(double faktor)
nepriehľadnejšia
.public GRobot.Farba menejPriehľadná(double faktor)
nepriehľadnejšia
.public GRobot.Farba menejPriehladna(double faktor)
nepriehľadnejšia
.public static GRobot.Farba vyberFarbu()
zvoľFarbu
. Predvolená farba v otvorenom dialógu bude
farba pozadia sveta. Po zvolení
želanej farby používateľom, vráti metóda zvolenú farbu v novom
objekte typu Farba
. Ak používateľ dialóg zruší,
metóda vráti null
.null
public static GRobot.Farba dialógVýberFarby()
vyberFarbu
.public static GRobot.Farba dialogVyberFarby()
vyberFarbu
.public static GRobot.Farba zvoľFarbu()
vyberFarbu
. Predvolená farba v otvorenom dialógu
bude farba pozadia sveta. Po
zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
.null
public static GRobot.Farba zvolFarbu()
zvoľFarbu
.public static GRobot.Farba dialógVoľbaFarby()
zvoľFarbu
.public static GRobot.Farba dialogVolbaFarby()
zvoľFarbu
.public static GRobot.Farba vyberFarbu(GRobot.Farba počiatočnáFarba)
zvoľFarbu
. Otvorený dialóg bude mať
predvolenú zadanú farbu (argument počiatočnáFarba
). Po
zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
.počiatočnáFarba
– predvolená farba v novo otvorenom dialógunull
public static GRobot.Farba dialógVýberFarby(GRobot.Farba počiatočnáFarba)
vyberFarbu
.public static GRobot.Farba dialogVyberFarby(GRobot.Farba počiatočnáFarba)
vyberFarbu
.public static GRobot.Farba zvoľFarbu(GRobot.Farba počiatočnáFarba)
vyberFarbu
. Otvorený dialóg bude mať
predvolenú zadanú farbu (argument počiatočnáFarba
). Po
zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
.počiatočnáFarba
– predvolená farba v novo otvorenom dialógunull
public static GRobot.Farba zvolFarbu(GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static GRobot.Farba dialógVoľbaFarby(GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static GRobot.Farba dialogVolbaFarby(GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static GRobot.Farba vyberFarbu(String titulok)
zvoľFarbu
. Predvolená farba v otvorenom
dialógu bude farba pozadia sveta.
Po zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
. Programátor má možnosť zvoliť
vlastný titulok dialógového okna.titulok
– vlastný titulok dialógunull
public static GRobot.Farba dialógVýberFarby(String titulok)
vyberFarbu
.public static GRobot.Farba dialogVyberFarby(String titulok)
vyberFarbu
.public static GRobot.Farba zvoľFarbu(String titulok)
vyberFarbu
. Predvolená farba v otvorenom
dialógu bude farba pozadia sveta.
Po zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
. Programátor má možnosť zvoliť
vlastný titulok dialógového okna.titulok
– vlastný titulok dialógunull
public static GRobot.Farba zvolFarbu(String titulok)
zvoľFarbu
.public static GRobot.Farba dialógVoľbaFarby(String titulok)
zvoľFarbu
.public static GRobot.Farba dialogVolbaFarby(String titulok)
zvoľFarbu
.public static GRobot.Farba vyberFarbu(String titulok, GRobot.Farba počiatočnáFarba)
zvoľFarbu
. Otvorený dialóg bude
mať predvolenú zadanú farbu (argument počiatočnáFarba
). Po
zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
. Programátor má možnosť zvoliť
vlastný titulok dialógového okna.titulok
– vlastný titulok dialógupočiatočnáFarba
– predvolená farba v novo otvorenom dialógunull
public static GRobot.Farba dialógVýberFarby(String titulok, GRobot.Farba počiatočnáFarba)
vyberFarbu
.public static GRobot.Farba dialogVyberFarby(String titulok, GRobot.Farba počiatočnáFarba)
vyberFarbu
.public static GRobot.Farba zvoľFarbu(String titulok, GRobot.Farba počiatočnáFarba)
vyberFarbu
. Otvorený dialóg bude
mať predvolenú zadanú farbu (argument počiatočnáFarba
). Po
zvolení želanej farby používateľom, vráti metóda zvolenú farbu
v novom objekte typu Farba
. Ak používateľ dialóg
zruší, metóda vráti null
. Programátor má možnosť zvoliť
vlastný titulok dialógového okna.titulok
– vlastný titulok dialógupočiatočnáFarba
– predvolená farba v novo otvorenom dialógunull
public static GRobot.Farba zvolFarbu(String titulok, GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static GRobot.Farba dialógVoľbaFarby(String titulok, GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static GRobot.Farba dialogVolbaFarby(String titulok, GRobot.Farba počiatočnáFarba)
zvoľFarbu
.public static double[] RGBtoHSB(int rgb)
0.0
do
1.0
. Ide o:0.0
znamená,
že farba je odtieňom šedej, hodnota 1.0
vyjadruje
plne sýte farby,rgb
– farba vyjadrená ako kombinácia zložiek farebného
priestoru RGBRGBtoHSV(int)
public static void RGBtoHSB(int rgb, double[] hsb)
RGBtoHSB(rgb)
,
ibaže nevracia zložky HSB ako argument, ale očakáva trojprvkové
pole typu double
, do ktorého prevedené zložky vloží.rgb
– farba vyjadrená ako kombinácia zložiek farebného
priestoru RGBhsb
– pole, do ktorého metóda vloží hodnoty definujúce farbu
vo farebnom priestore HSBRGBtoHSV(int, double[])
public static int HSBtoRGB(double h, double s, double b)
0.0
do 1.0
.
Argumenty sú prepočítané na zložky farebného priestoru RGB
a skombinované do celočíselnej hodnoty vrátenej ako výsledok.h
– odtieň (hue) farby (vyjadruje farbu v rámci viditeľného
farebného spektra)s
– sýtosť (saturation) farby (0.0
– odtiene
šedej, 1.0
plne sýte farby)b
– jas (brightnes) farbyHSVtoRGB(double, double, double)
public static double[] RGBtoHSV(int rgb)
0.0
do
1.0
. Ide o:0.0
znamená,
že farba je odtieňom šedej, hodnota 1.0
vyjadruje
plne sýte farby,rgb
– farba vyjadrená ako kombinácia zložiek farebného
priestoru RGBRGBtoHSB(int)
public static void RGBtoHSV(int rgb, double[] hsv)
RGBtoHSV(rgb)
,
ibaže nevracia zložky HSV ako argument, ale očakáva trojprvkové
pole typu double
, do ktorého prevedené zložky vloží.rgb
– farba vyjadrená ako kombinácia zložiek farebného
priestoru RGBhsv
– pole, do ktorého metóda vloží hodnoty definujúce farbu
vo farebnom priestore HSVRGBtoHSB(int, double[])
public static int HSVtoRGB(double h, double s, double v)
0.0
do 1.0
.
Argumenty sú prepočítané na zložky farebného priestoru RGB
a skombinované do celočíselnej hodnoty vrátenej ako výsledok.h
– odtieň (hue) farby (vyjadruje farbu v rámci viditeľného
farebného spektra)s
– sýtosť (saturation) farby (0.0
– odtiene
šedej, 1.0
plne sýte farby)v
– valér (value) farby (vyjadruje svetlosť farby)HSBtoRGB(double, double, double)
public String toString()
farbaNaReťazec
a reťazecNaFarbu
.
public static String farbaNaReťazec(Color farba)
farba
– farba, ktorá má byť prevedená do reťazcovej podobyreťazecNaFarbu(String)
public static String farbaNaRetazec(Color farba)
farbaNaReťazec
.public static String farbaNaReťazec(Farebnosť farba)
farba
– inštancia farebnosti, ktorá má byť prevedená do
reťazcovej podobyreťazecNaFarbu(String)
public static String farbaNaRetazec(Farebnosť farba)
farbaNaReťazec
.public static GRobot.Farba reťazecNaFarbu(String text)
Farebnosť
(modrá, červená…), alebo reťazce v tvare:
#
rrggbb, kde rr je červená zložka
v šestnástkovom tvare, gg zelená zložka v šestnástkovom
tvare a bb modrá zložka v šestnástkovom tvare,#
rgb, kde r je červená zložka
v šestnástkovom tvare a g zelená zložka v šestnástkovom
tvare, b modrá zložka v šestnástkovom tvare, pričom všetky
zložky v tomto budú rozšírené na: rr, gg, bb,
napríklad: #8af
= #88aaff
rgb(
red,
green,
blue)
, kde red je červená zložka
(v desiatkovom tvare), green zelená zložka, blue
modrá zložka (všetko v desiatkovom tvare),rgba(
red,
green,
blue,
alpha)
, kde
red je červená zložka (v desiatkovom tvare), green
zelená zložka, blue modrá zložka, alpha priehľadnosť
(všetko v desiatkovom tvare)Metóda je vhodná ako doplnok k metóde farbaNaReťazec
.
text
– reťazec, ktorý má byť prevedený na farbufarbaNaReťazec(Color)
public static GRobot.Farba retazecNaFarbu(String text)
reťazecNaFarbu
.public static boolean správnyFormát(String text)
Farebnosť
(modrá, červená…) a uzná za správe reťazce v jednom
z nasledujúcich tvarov:
#
rrggbb, kde rr je červená zložka
v šestnástkovom tvare, gg zelená zložka v šestnástkovom
tvare a bb modrá zložka v šestnástkovom tvare,#
rgb, kde r je červená zložka
v šestnástkovom tvare a g zelená zložka v šestnástkovom
tvare, b modrá zložka v šestnástkovom tvare, pričom všetky
zložky v tomto budú rozšírené na: rr, gg, bb,
napríklad: #8af
= #88aaff
rgb(
red,
green,
blue)
, kde red je červená zložka
(v desiatkovom tvare), green zelená zložka, blue
modrá zložka (všetko v desiatkovom tvare),rgba(
red,
green,
blue,
alpha)
, kde
red je červená zložka (v desiatkovom tvare), green
zelená zložka, blue modrá zložka, alpha priehľadnosť
(všetko v desiatkovom tvare)Metóda je vhodná ako doplnok k metódam farbaNaReťazec
a reťazecNaFarbu
.
text
– reťazec, ktorý má byť posúdený true
ak je zadaný teťazec v rozpoznateľnom
formátefarbaNaReťazec(Color)
,
farbaNaReťazec(Farebnosť)
,
reťazecNaFarbu(String)
public static boolean spravnyFormat(String text)
správnyFormát
.public int compareTo(Color ináFarba)
Comparable
. Porovnanie farieb bolo implementované preto, aby mohli
byť inštancie farieb zaradené do triedeného zoznamu. Nie je možné
objektívne určiť ktorá farba je „väčšia“ alebo „menšia“, ale farby
sú v počítači reprezentované číslicovo. Táto metóda jednoducho
vzájomne odčíta číslicové reprezentácie farieb a vráti výsledok.
Vďaka tomu je možné použiť inštanciu triedy Farba ako kľúč
triedeného zoznamu, ktorého použitie je v rámci jazyka Java
efektívnejšie. Vďaka tomu je možné vytvoriť triedený zoznam Javy,
v ktorom sa dajú informácie rýchlo vyhľadávať podľa farebného
kľúča.
compareTo
v rozhraní Comparable<Color>
ináFarba
– inštancia inej farby, s ktorou má byť táto farba
porovnaná