public static class GRobot.Oblasť extends Area implements Poloha
Area. Oblasť je
ľubovoľná plocha, ktorá môže byť napríklad obkreslená čiarou,
vyplnená farbou, použitá na obmedzenie kreslenia, prípadne na ďalšie účely. Na tvorbe oblasti sa
môže podieľať zvolený robot alebo ju môžeme vytvoriť pomocou útvarov
(Shape) Javy. Každý robot je schopný produkovať útvary,
ktoré môžu byť využité na vytvorenie oblasti. Filozofia je taká, že
zavoláme metódu robota na nakreslenie útvaru alebo výpis textu (ktoré
zároveň produkujú útvary) a vyprodukovaný útvar (s jeho veľkosťou
a orientáciou) pridáme či odoberieme od tvorenej oblasti, vytvoríme
prienik alebo alternatívu s vytváranou oblasťou. Počas
procesu tvorby oblasti by však bolo nežiaduce (prípadne
nemožné[1]), aby robot súčasne produkované útvary
kreslil[2]. Preto je dobré ho zamestnať na účely tvorby oblasti. Zamestnaný
robot nekreslí útvary ani nepíše texty do doby, kedy je zo služby
uvoľnený (prepustený).
[1] – to sa dotýka útvarov vytvorených z textu
[2] – nemali by sme možnosť zabrániť nakresleniu produkovaného
útvaru – zdvihnutie pera by nepomohlo, pretože jeho poloha nemá na
kreslenie útvarov vplyv
Na tvorbu oblasti je možné použiť tieto metódy robota:
kružnica(polomer),
kruh(polomer),
elipsa(a, b),
vyplňElipsu(a, b),
štvorec(polomer),
vyplňŠtvorec(polomer),
obdĺžnik(a, b),
vyplňObdĺžnik(a, b),
hviezda(polomer),
vyplňHviezdu(polomer),
cesta(),
text(text)
a text(text, spôsobKreslenia).
Každá z nich môže byť argumentom metód pridaj,
odober, prienik
a alternatíva.
Na záver niekoľko faktov o oblastiach a o ich vnútornej stavbe.
Informácie vyplývajú aj z originálnej dokumentácie triedy Area (pozri odkaz nižšie). Oblasť tvorí vždy uzavretý útvar (obopína
vždy nejakú plochu po celom jej obvode). Aj keď bola vytvorená
z tvaru, ktorý pôvodne nebol je uzavretý (napríklad neuzavretá cesta). Ak sa pokúsime vytvoriť oblasť z útvaru, ktorý
„nemá“ (neobopína) žiadnu plochu (napríklad úsečka), získame
prázdnu oblasť. Aj keď útvary, z ktorých
oblasť tvoríme, sú jednoduché, výsledná oblasť nikdy nie je
v skutočnosti taká jednoduchá. Napríklad kružnica alebo elipsa sú na pohľad jednoduché, ale
z nich vytvorená oblasť bude vždy tvorená viacerými segmentami
(v tomto prípade krivkami). Zložitosť oblasti má dopad na rýchlosť
spracovania pri jej použití v programe, najmä na detekciu
kolízií.
Area| Konštruktor a opis | 
|---|
| Oblasť()Predvolený konštruktor. | 
| Oblasť(GRobot zamestnanec)Vytvorí prázdnu oblasť so zadaným zamestnancom. | 
| Oblasť(Shape tvar)Vytvorí oblasť z určeného tvaru. | 
| Oblasť(Shape tvar,
	GRobot zamestnanec)Vytvorí oblasť z určeného tvaru a so zadaným zamestnancom. | 
| Modifikátor a typ | Metóda a opis | 
|---|---|
| void | alternativa(Shape tvar) Alias pre alternatíva. | 
| void | alternatíva(Shape tvar)Vytvorí z oblasti a zadaného tvaru alternatívu – XOR (vylučujúce
alebo, buď/alebo). | 
| boolean | bodV(double súradnicaBoduX,
	double súradnicaBoduY)Zistí, či sa súradnice zadaného bodu nachádzajú v tejto oblasti. | 
| boolean | bodV(Poloha r)Zistí, či sa bod polohy robota nachádza v tejto oblasti. | 
| void | kresli()Nakreslí túto oblasť s využitím zamestnaného robota (použije jeho farbu, hrúbku pera a aktívne
plátno). | 
| void | kresli(GRobot r)Nakreslí túto oblasť na aktívne plátno aktuálnou farbou a hrúbkou
pera zadaného robota. | 
| boolean | mysV() Alias pre myšV. | 
| boolean | myšV()Zistí, či sa aktuálne súradnice myši nachádzajú v tejto oblasti. | 
| void | odober(Shape tvar)Odoberie z oblasti zadaný tvar. | 
| GRobot.Bod | poloha()Vypočíta a vráti polohu stredu oblasti. | 
| double | polohaX()Vypočíta a vráti x-ovú súradnicu polohy stredu oblasti. | 
| double | polohaY()Vypočíta a vráti y-ovú súradnicu polohy stredu oblasti. | 
| boolean | prazdna() Alias pre prázdna. | 
| boolean | prázdna()Zistí, či je táto oblasť prázdna – t. j. či obopína nejakú plochu. | 
| void | prepusti() Alias pre uvoľni. | 
| void | prepusti(GRobot zamestnanec) Alias pre uvoľni. | 
| void | pridaj(Shape tvar)Pridá k oblasti zadaný tvar. | 
| void | prienik(Shape tvar)Vytvorí prienik oblasti a zadaného tvaru. | 
| double | sirka() Alias pre šírka. | 
| double | suradnicaX() Alias pre súradnicaX(). | 
| double | súradnicaX()Vypočíta a vráti x-ovú súradnicu polohy stredu oblasti. | 
| double | suradnicaY() Alias pre súradnicaY(). | 
| double | súradnicaY()Vypočíta a vráti y-ovú súradnicu polohy stredu oblasti. | 
| double | šírka()Vráti šírku oblasti. | 
| void | uvolni() Alias pre uvoľni. | 
| void | uvoľni()Automaticky uvoľní robota zamestnaného za účelom tvorby (prípadne kreslenia) tejto oblasti. | 
| void | uvolni(GRobot zamestnanec) Alias pre uvoľni. | 
| void | uvoľni(GRobot zamestnanec)Uvoľní robota zamestnaného za
účelom tvorenia tejto oblasti. | 
| void | vymaz() Alias pre vymaž. | 
| void | vymaž()Kompletne odstráni geometriu oblasti – vyprázdni oblasť. | 
| void | vypln() Alias pre vyplň. | 
| void | vyplň()Vyplní plochu tejto oblasti s využitím zamestnaného robota (použije jeho farbu
a aktívne plátno). | 
| void | vypln(BufferedImage obrázok) Alias pre vyplň. | 
| void | vyplň(BufferedImage obrázok)Vyplní plochu tejto oblasti textúrou s využitím zamestnaného robota (použije jeho aktívne
plátno). | 
| void | vypln(GRobot r) Alias pre vyplň. | 
| void | vyplň(GRobot r)Vyplní plochu tejto oblasti na aktívne plátno aktuálnou farbou
zadaného robota. | 
| void | vypln(GRobot r,
	BufferedImage obrázok) Alias pre vyplň. | 
| void | vyplň(GRobot r,
	BufferedImage obrázok)Vyplní plochu tejto oblasti na aktívne plátno zadaného robota
zadanou textúrou. | 
| void | vypln(GRobot r,
	String súbor) Alias pre vyplň. | 
| void | vyplň(GRobot r,
	String súbor)Vyplní plochu tejto oblasti na aktívne plátno zadaného robota
zadanou textúrou. | 
| void | vypln(String súbor) Alias pre vyplň. | 
| void | vyplň(String súbor)Vyplní plochu tejto oblasti textúrou s využitím zamestnaného robota (použije jeho aktívne
plátno). | 
| double | vyska() Alias pre výška. | 
| double | výška()Vráti výšku oblasti. | 
| void | zamestnaj(GRobot zamestnanec)Zamestná zadaného robota za účelom tvorby tejto oblasti. | 
| boolean | zamestnany() Alias pre zamestnaný. | 
| boolean | zamestnaný()Overí, či je pre túto oblasť zamestnaný ľubovoľný robot. | 
| boolean | zamestnany(GRobot zamestnanec) Alias pre zamestnaný. | 
| boolean | zamestnaný(GRobot zamestnanec)Overí, či je pre túto oblasť zamestnaný určený robot. | 
add, clone, contains, contains, contains, contains, createTransformedArea, equals, exclusiveOr, getBounds, getBounds2D, getPathIterator, getPathIterator, intersect, intersects, intersects, isEmpty, isPolygonal, isRectangular, isSingular, reset, subtract, transformpublic Oblasť()
public Oblasť(Shape tvar)
tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýpublic Oblasť(GRobot zamestnanec)
zamestnaj.zamestnanec – robot, ktorý má byť použitý na účely tvorby
	tejto oblasti (prípadne na jej nakreslenie)RuntimeException – ak je stanovený robot zamestnaný pre inú
	oblasťpublic Oblasť(Shape tvar, GRobot zamestnanec)
zamestnaj.tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýzamestnanec – robot, ktorý má byť použitý na účely tvorby
	tejto oblasti (prípadne na jej nakreslenie)RuntimeException – ak je stanovený robot zamestnaný pre inú
	oblasťpublic boolean prázdna()
true ak je táto oblasť prázdna
	(netvorí/neobsahuje žiadny útvar); inak falsepublic boolean prazdna()
 Alias pre
 Alias pre prázdna.public void zamestnaj(GRobot zamestnanec)
Robot nesmie byť zamestnaný pre inú oblasť, lebo vznikne výnimka.
Na tvorbu oblasti je možné použiť tieto metódy robota:
kružnica(polomer),
kruh(polomer),
elipsa(a, b),
vyplňElipsu(a, b),
štvorec(polomer),
vyplňŠtvorec(polomer),
obdĺžnik(a, b),
vyplňObdĺžnik(a, b),
hviezda(polomer),
vyplňHviezdu(polomer),
cesta(),
text(text)
a text(text, spôsobKreslenia).
Každá z nich môže byť argumentom metód pridaj, odober, prienik a alternatíva.
zamestnanec – robot, ktorý má byť použitý na účely tvorby
	tejto oblasti (prípadne na jej nakreslenie)RuntimeException – ak je robot zamestnaný pre inú oblasťpublic void uvoľni()
(Poznámka: Názov uvoľni má
v skupine tried grafického robota sedem rôznych metód:
GRobot.uvoľni(),
GRobot.uvoľni(Oblasť),
Oblasť.uvoľni(),
Oblasť.uvoľni(GRobot)
 – slúžia na uvoľnenie robota zo zamestnania pre stanovenú oblasť (čo
je geometrická trieda),
Svet.uvoľni()
 – slúži na uvoľnenie hlavného okna sveta, t. j. umožnenie
zmeny veľkosti okna používateľovi (ide o opak metódy Svet.upevni) a nakoniec
Svet.uvoľni(GRobot),
Svet.uvoľni(Class)
 – slúžia na uvoľňovanie nepotrebných robotov z vnútorného
zoznamu robotov, čo je nevyhnutnou podmienkou ich úspešného
vymazania z pamäte.)
uvoľni(GRobot),
GRobot.uvoľni()public void uvolni()
 Alias pre
 Alias pre uvoľni.public void prepusti()
 Alias pre
 Alias pre uvoľni.public void uvoľni(GRobot zamestnanec)
(Poznámka: Názov uvoľni má
v skupine tried grafického robota sedem rôznych metód:
GRobot.uvoľni(),
GRobot.uvoľni(Oblasť),
Oblasť.uvoľni(),
Oblasť.uvoľni(GRobot)
 – slúžia na uvoľnenie robota zo zamestnania pre stanovenú oblasť (čo
je geometrická trieda),
Svet.uvoľni()
 – slúži na uvoľnenie hlavného okna sveta, t. j. umožnenie
zmeny veľkosti okna používateľovi (ide o opak metódy Svet.upevni) a nakoniec
Svet.uvoľni(GRobot),
Svet.uvoľni(Class)
 – slúžia na uvoľňovanie nepotrebných robotov z vnútorného
zoznamu robotov, čo je nevyhnutnou podmienkou ich úspešného
vymazania z pamäte.)
zamestnanec – robot, ktorý bol zamestnaný pre túto oblasťuvoľni(),
GRobot.uvoľni(Oblasť)public boolean zamestnaný()
true/falsepublic boolean zamestnany()
 Alias pre
 Alias pre zamestnaný.public boolean zamestnaný(GRobot zamestnanec)
zamestnanec – vyšetrovaný robottrue/falsepublic boolean zamestnany(GRobot zamestnanec)
 Alias pre
 Alias pre zamestnaný.public void pridaj(Shape tvar)
tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýzamestnaj(GRobot)public void odober(Shape tvar)
tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýzamestnaj(GRobot)public void prienik(Shape tvar)
tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýzamestnaj(GRobot)public void alternatíva(Shape tvar)
tvar – ľubovoľný tvar Javy; ak sa chcete vyhnúť ťažkostiam
	s úpravou súradnicového priestoru, odporúčame na generovanie
	tvarov používať metódy robota (pozri úvod), najlepšie toho, ktorý bol na účely tvorby tejto
	oblasti zamestnanýzamestnaj(GRobot)public void alternativa(Shape tvar)
 Alias pre
 Alias pre alternatíva.public void vymaž()
public void vymaz()
 Alias pre
 Alias pre vymaž.public void kresli()
obkresliOblasť.public void vyplň()
vyplňOblasť.public void vypln()
 Alias pre
 Alias pre vyplň.public void vyplň(String súbor)
vyplňOblasť. Textúra je súbor s obrázkom, ktorý bude použitý na
dlaždicové vyplnenie oblasti.súbor – názov súboru s obrázkom textúryGRobot.Svet.priečinokObrázkov(String)public void vyplň(BufferedImage obrázok)
vyplňOblasť. Textúra je obrázok (objekt typu
BufferedImage alebo odvodený), ktorý bude
použitý na dlaždicové vyplnenie oblasti.obrázok – obrázok s textúroupublic void vypln(BufferedImage obrázok)
 Alias pre
 Alias pre vyplň.public void kresli(GRobot r)
obkresliOblasť.r – robot, ktorý bude použitý na nakreslenie tejto oblasti
	(iba farba, hrúbka pera a aktívne plánto)public void vyplň(GRobot r)
vyplňOblasť.r – robot, ktorý bude použitý na vyplnenie tejto oblasti (iba
	farba a aktívne plánto)public void vyplň(GRobot r, String súbor)
vyplňOblasť. Textúra je súbor
s obrázkom, ktorý bude použitý na dlaždicové vyplnenie oblasti.r – robot, ktorý bude použitý na vyplnenie tejto oblasti
	(iba aktívne plánto)súbor – názov súboru s obrázkom textúryGRobot.Svet.priečinokObrázkov(String)public void vyplň(GRobot r, BufferedImage obrázok)
vyplňOblasť. Textúra je
obrázok (objekt typu BufferedImage alebo odvodený), ktorý bude použitý na dlaždicové
vyplnenie oblasti.r – robot, ktorý bude použitý na vyplnenie tejto oblasti
	(iba aktívne plánto)obrázok – obrázok s textúroupublic void vypln(GRobot r, BufferedImage obrázok)
 Alias pre
 Alias pre vyplň.public boolean bodV(double súradnicaBoduX, double súradnicaBoduY)
bodVOblasti.súradnicaBoduX – x-ová súradnica bodusúradnicaBoduY – y-ová súradnica bodutrue – áno; false – niepublic boolean bodV(Poloha r)
bodVOblasti.r – robot, ktorého poloha je vyšetrovanátrue – áno; false – niepublic boolean myšV()
myšVOblasti.true – áno; false – niepublic boolean mysV()
 Alias pre
 Alias pre myšV.public double polohaX()
public double polohaY()
public double súradnicaX()
súradnicaX v rozhraní Polohapublic double suradnicaX()
 Alias pre
 Alias pre súradnicaX().suradnicaX v rozhraní Polohapublic double súradnicaY()
súradnicaY v rozhraní Polohapublic double suradnicaY()
 Alias pre
 Alias pre súradnicaY().suradnicaY v rozhraní Polohapublic GRobot.Bod poloha()
public double šírka()
public double sirka()
 Alias pre
 Alias pre šírka.public double výška()
public double vyska()
 Alias pre
 Alias pre výška.