public class Obrázok extends BufferedImage implements Priehľadnosť, Rozmer
Obrázok je rozšírením triedy Javy BufferedImage
 nielen o funkcionalitu bežne používanú vo svete grafického robota.
 
 Obrázok obsahuje komponent grafika, vďaka ktorému
 môžeme do obrázkov priamo
 kresliť.
 
 Trieda je využiteľná v rôznych situáciách, napríklad pri vypĺňaní plátna, definícii vlastného tvaru robota a podobne. Ponúka
 nástroje na zrkadlenie, zmenu svetlosti, úpravu na farebný
 negatív, rozmazanie a tak ďalej.
Upozornenie: Pri úpravách obrázkov (hoci
 ich vlastnými metódami, napríklad prevráťVodorovne, bledší, negatív, rozmaž a podobne) nikdy nie je spustené
 automatické prekreslenie! Všetky zmeny vykonané v obrázu sa prejavia
 až pri jeho najbližšom nakreslení! Následkom je napríklad i to, že
 ak je obrázok použitý ako vlastný tvar niektorého robota, treba po
 každej zmene (úprave priehľadnosti,
 vypĺňaní,
 kreslení…) zabezpečiť prekreslenie sveta.
Poznámka: Automatické prekresľovanie sveta sa pri úpravách obsahu obrázkov alebo ich vlastností ich vlastnými metódami neaktivuje napríklad i preto, že svet nemá nikdy garantované, či je stanovený obrázok niekde použitý alebo iba pasívne uložený v pamäti…)
Príklad:
Nasledujúci príklad ukazuje možné použitie triedy
 Obrázok ako vlastného tvaru viacerých robotov
 znázorňujúcich hodiny (hodinových robotov). Obrázok je prekresľovaný
 podľa potreby. Takéto použitie je v tomto prípade efektívnejšie,
 pretože prekresľovanie tvaru je vykonávané len v prípade potreby
 (v tomto prípade každú minútu) a prekreslený tvar dokáže využiť
 množstvo robotov naraz.
Príklad obsahuje aj možnosť zobrazenia na celej obrazovke. Tá je
 pred zrakom Javy zakrytá komentármi označenými dvojitou mriežkou:
 // ##. Po odstránení všetkých takto označených znakov
 komentárov (vrátane znakov dvojitej mriežky) bude príklad fungovať
 v režime celej obrazovky.
importknižnica.*;importjava.util.Calendar;publicclassObrázokAkoTvarextendsGRobot{// Spoločná inštancia obrázka, ktorá bude tvoriť vlastný tvar// hodinových robotov.privatefinalstaticObrázoktvarHodín =newObrázok(50,50);// Atribúty uchovávajúce starý a nový čas. Ak bude zistená zmena,// čo bude každú minútu, tak budú hodiny prekreslené.privateinthodina0 =0, minúta0 =0, hodina1 = -1, minúta1 = -1;// Nebolo by efektívne overovať hodnoty času niekoľko ráz za sekundu,// preto je tu toto počítadlo, ktoré spôsobí, že overenie hodnôt času// bude vykonané raz za minútu.privateintoverČasPo = -1;// ## private static int zariadenie = 0;
// Súkromná trieda hodín.privatestaticclassHodinyextendsGRobot{// Konštruktor, ktorý nastaví všetkým hodinám rovnaké parametre// a náhodnú individuálnu rýchlosť.privateHodiny() {zdvihniPero();vlastnýTvar(tvarHodín);náhodnáPoloha(); novýCieľ();gyroskop(90.0);rýchlosť(Svet.náhodnéReálneČíslo(1.5,3.5),false); }// Nový cieľ je nastavený na začiatku a potom vždy po dosiahnutí// starého cieľa.privatevoidnovýCieľ() {Bodštart =poloha();náhodnáPoloha();Bodcieľ =poloha();skočNa(štart);cieľ(cieľ);kružnica(); }// Reakcia na dosiahnutie cieľa hodinami.@OverridepublicvoiddosiahnutieCieľa() { novýCieľ(); } }
// Konštruktor hlavného robota. Sú v ňom vykonané potrebné nastavenia// a vytvorené hodinové roboty.privateObrázokAkoTvar() {// ## super(Svet.šírkaZariadenia(zariadenie),// ## Svet.výškaZariadenia(zariadenie));// ## Svet.celáObrazovka(zariadenie);Svet.nekresli();Svet.farbaPozadia(čierna);kresliDoObrázka(tvarHodín);skry();veľkosť(22.0);hrúbkaČiary(2.2);farba(svetlotyrkysová);for(inti =0; i <50; ++i)newHodiny();Svet.spustiČasovač(); }// Zistenie nových hodnôt času. Metóda používa triedu Javy Calendar.privatevoiddajČas() {Calendarteraz =Calendar.getInstance(); hodina0 = teraz.get(Calendar.HOUR); minúta0 = teraz.get(Calendar.MINUTE); }// Metóda slúžiaca na nakreslenie tvaru hodín. Kreslenie je vykonané len// v prípade, že sa hodnoty času zmenili, pričom hodnoty časových údajov// sú overované každú minútu.privatevoidnakresliHodiny() {// Hodnota času je overovaná každú minútu. Predvolená hodnota// časovača je 40 ms, to je 25 ráz za sekundu, preto je čas overený// každých 1 500 tikov.if(0== ++overČasPo %1500) dajČas();// Kreslenie je vykonané len v prípade, že sa hodnoty času zmenili.if(hodina1 != hodina0 || minúta1 != minúta0) {// Vymazanie starého tvaru hodín.tvarHodín.vymaž();// Uloženie aktuálnej farby hlavného robota – tá bude použitá// na nakreslenie hodín.Farbafarba =farba();domov();// Farba pozadia sveta je použitá na vyplnenie tvaru hodín.farba(Svet.farbaPozadia());kruh();// Nakreslenie kružnice uloženou farbou.farba(farba);kružnica();// Nakreslenie štyroch značiek hodín – na 12., 3., 6. a 9. hodine.for(inti =0; i <4; ++i) {zdvihniPero();dopredu(veľkosť() *0.8);položPero();dopredu(veľkosť() *0.2);zdvihniPero();dozadu(veľkosť());doprava(90); }položPero();// Nakreslenie hodinovej ručičky.domov();smer(90-30* hodina0 -0.5* minúta0);dopredu(veľkosť() *0.5);// Nakreslenie minútovej ručičky.domov();smer(90-6* minúta0);dopredu(veľkosť() *0.9);// Synchronizácia hodnôt času – ďalšia zmena nastane o minútu.hodina1 = hodina0; minúta1 = minúta0; } }// Reakcia na tik časovača. Prekresľuje tvar hodín a svet (obidvoje len// ak je to potrebné).@Overridepublicvoidtik() { nakresliHodiny();if(Svet.neboloPrekreslené())Svet.prekresli(); }// Hlavná metóda.publicstaticvoidmain(String... args) {Svet.použiKonfiguráciu("obrazok-ako-vlastny-tvar.cfg");// ## if (Svet.početZariadení() > 1) ++zariadenie;newObrázokAkoTvar(); } }
Výsledok:

 
Na ploche
 plátna sa bude pohybovať niekoľko „hodinových robotov.“
Svet.priečinokObrázkov(String)| Modifikátor a typ | Atribút a opis | 
|---|---|
| Graphics2D | grafikaGrafika obrázka (pre potreby kreslenia do obrázka). | 
| int | sirkaŠírka obrázka. | 
| int | šírkaŠírka obrázka. | 
| int | vyskaVýška obrázka. | 
| int | výškaVýška obrázka. | 
TYPE_3BYTE_BGR, TYPE_4BYTE_ABGR, TYPE_4BYTE_ABGR_PRE, TYPE_BYTE_BINARY, TYPE_BYTE_GRAY, TYPE_BYTE_INDEXED, TYPE_CUSTOM, TYPE_INT_ARGB, TYPE_INT_ARGB_PRE, TYPE_INT_BGR, TYPE_INT_RGB, TYPE_USHORT_555_RGB, TYPE_USHORT_565_RGB, TYPE_USHORT_GRAYaccelerationPriority, SCALE_AREA_AVERAGING, SCALE_DEFAULT, SCALE_FAST, SCALE_REPLICATE, SCALE_SMOOTH, UndefinedPropertyNEPRIEHLADNA, NEPRIEHĽADNÁ, NEPRIEHLADNE, NEPRIEHĽADNÉ, NEPRIEHLADNY, NEPRIEHĽADNÝ, NEVIDITELNA, NEVIDITEĽNÁ, NEVIDITELNE, NEVIDITEĽNÉ, NEVIDITELNY, NEVIDITEĽNÝBITMASK, OPAQUE, TRANSLUCENT| Konštruktor a opis | 
|---|
| Obrázok()Predvolený konštruktor. | 
| Obrázok(Image obrázok)Vytvorí nový obrázok podľa zadaného obrázka ako predlohy. | 
| Obrázok(int šírka,
       int výška)Konštruktor, ktorý vytvorí nový prázdny obrázok so zadanými
 rozmermi (v bodoch). | 
| Modifikátor a typ | Metóda a opis | 
|---|---|
| boolean | animujeSa()Zistí, či je práve spustená animácia obrázka. | 
| void | bledsi() Alias pre bledší. | 
| void | bledsi(double faktor) Alias pre bledší. | 
| void | bledší()Zvýši úroveň svetlosti tohto obrázka. | 
| void | bledší(double faktor)Zvýši úroveň svetlosti tohto obrázka. | 
| void | ciernobiely() Alias pre čiernobiely. | 
| void | ciernobiely(boolean vyvážiťZložky) Alias pre čiernobiely. | 
| void | ciernobiely(double váhaČervenej,
           double váhaZelenej,
           double váhaModrej) Alias pre čiernobiely. | 
| static Obrazok | citaj(Archív archív,
     String názovPoložky) Alias pre čítaj. | 
| static Obrazok | citaj(String súbor) Alias pre čítaj. | 
| void | čiernobiely()Upraví tento obrázok do odtieňov šedej s použitím priemerovania
 farebných zložiek. | 
| void | čiernobiely(boolean vyvážiťZložky)Upraví tento obrázok do odtieňov šedej s možnosťou určenia
 predvoleného vyváženia farebných zložiek – podľa modelu ľudského
 vnímania farieb. | 
| void | čiernobiely(double váhaČervenej,
           double váhaZelenej,
           double váhaModrej)Upraví tento obrázok do odtieňov šedej s možnosťou určenia
 vlastného vyváženia jednotlivých farebných zložiek. | 
| static Obrázok | čítaj(Archív archív,
     String názovPoložky)Prečíta do vnútornej pamäte sveta obrázok zo zadaného archívu
 a vytvorí z neho nový objekt typu  Obrázok. | 
| static Obrázok | čítaj(String súbor)Prečíta do vnútornej pamäte sveta zadaný obrázok zo súboru
 a vytvorí z neho nový objekt typu  Obrázok. | 
| void | dalsiaSnimka() Alias pre ďalšiaSnímka. | 
| void | ďalšiaSnímka()Aktivuje nasledujúcu snímku animácie. | 
| Vlnenie | definovaneVlnenie() Alias pre jestvujúceVlnenie. | 
| Vlnenie | definovanéVlnenie() Alias pre jestvujúceVlnenie. | 
| boolean | doSchranky() Alias pre doSchránky. | 
| boolean | doSchránky()Vloží obsah tohto obrázka do schránky. | 
| Vlnenie | existujuceVlnenie() Alias pre jestvujúceVlnenie. | 
| Vlnenie | existujúceVlnenie() Alias pre jestvujúceVlnenie. | 
| Farba | farbaBodu(double x,
         double y)Zistí farbu bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca. | 
| boolean | farbaBodu(double x,
         double y,
         Color farba)Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje so zadanou
 farbou. | 
| boolean | farbaBodu(double x,
         double y,
         Farebnosť objekt)Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadaného objektu. | 
| boolean | farbaBodu(double x,
         double y,
         int r,
         int g,
         int b)Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadanou prostredníctvom farebných zložiek. | 
| boolean | farbaBodu(double x,
         double y,
         int r,
         int g,
         int b,
         int a)Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadanou prostredníctvom farebných zložiek a úrovne priehľadnosti. | 
| Farba | farbaBodu(Poloha objekt)Zistí farbu bodu (jedného pixela) obrázka na súradniciach
 určených polohou objektu. | 
| boolean | farbaBodu(Poloha objekt,
         Color farba)Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu v súradnicovom priestore rámca zhoduje so zadanou
 farbou. | 
| boolean | farbaBodu(Poloha objekt,
         Farebnosť farebnosť)Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 prvého zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou druhého zadaného objektu. | 
| boolean | farbaBodu(Poloha objekt,
         int r,
         int g,
         int b)Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou zadanou prostredníctvom farebných zložiek a úrovne. | 
| boolean | farbaBodu(Poloha objekt,
         int r,
         int g,
         int b,
         int a)Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou zadanou prostredníctvom farebných zložiek a úrovne
 priehľadnosti. | 
| void | farebneTienidlo(Color farba) Alias pre farebnéTienidlo. | 
| void | farebnéTienidlo(Color farba)Použije na tento obrázok zadané farebné tienidlo. | 
| void | farebnyFilter(Color farba) Alias pre farebnýFilter. | 
| void | farebnýFilter(Color farba)Použije na tento obrázok zadaný farebný filter. | 
| void | farebnyFilter(Farebnosť objekt) Alias pre farebnýFilter. | 
| void | farebnýFilter(Farebnosť objekt)Použije na tento obrázok farebný filter podľa farby zadaného
 objektu. | 
| void | gamaKorekcia(double γ)Upraví intenzitu farieb obrázka na základe hodnoty parametra
 gama (γ). | 
| Graphics2D | grafika()Vráti objekt grafiky obrázka (pre potreby kreslenia do obrázka). | 
| void | jednofarebny(Color farba) Alias pre monochromatický. | 
| void | jednofarebný(Color farba) Alias pre monochromatický. | 
| void | jednofarebny(Farebnosť objekt) Alias pre monochromatický. | 
| void | jednofarebný(Farebnosť objekt) Alias pre monochromatický. | 
| Vlnenie | jestvujuceVlnenie() Alias pre jestvujúceVlnenie. | 
| Vlnenie | jestvujúceVlnenie()Táto metóda vráti inštanciu vlnenia len v prípade, že jestvuje. | 
| void | kresli(double x,
      double y,
      Image obrázok)Nakreslí do tohto obrázka zadaný obrázok, pričom ho posunie
 od stredu o zadané súradnice v horizontálnom a vertikálnom
 smere. | 
| void | kresli(double x,
      double y,
      String súbor)Nakreslí do tohto obrázka obrázok zo zadaného súboru, ktorý bude
 posunutý od stredu o zadané súradnice v horizontálnom
 a vertikálnom smere. | 
| void | kresli(Image obrázok)Nakreslí do stredu tohto obrázka zadaný obrázok. | 
| void | kresli(Poloha objekt,
      Image obrázok)Nakreslí do tohto obrázka zadaný obrázok, obrázok bude
 posunutý o súradnice určené polohou zadaného objektu. | 
| void | kresli(Poloha objekt,
      String súbor)Nakreslí do tohto obrázka obrázok zo zadaného súboru, obrázok
 bude posunutý o súradnice určené polohou zadaného objektu. | 
| void | kresli(Shape tvar)Táto metóda slúži na kreslenie obrysov zadaného tvaru do obrázka. | 
| void | kresli(Shape tvar,
      GRobot kreslič)Táto metóda slúži na kreslenie obrysov zadaného tvaru do
 obrázka. | 
| void | kresli(String súbor)Nakreslí do stredu tohto obrázka obrázok zo zadaného súboru. | 
| GRobot | kreslic() Alias pre kreslič. | 
| void | kreslic(GRobot kreslič) Alias pre kreslič. | 
| GRobot | kreslič() | 
| void | kreslič(GRobot kreslič) | 
| void | kresliDo(Shape tvar)Obmedzí kreslenie na tento obrázok na plochu zadaného útvaru
 ( Shape). | 
| void | kresliVsade() Alias pre kresliVšade. | 
| void | kresliVšade()Zruší oblasť na obmedzenie kreslenia na tento obrázok. | 
| boolean | maRozmer(double šírka,
        double výška) Alias pre máRozmer. | 
| boolean | máRozmer(double šírka,
        double výška)Overí zhodu rozmerov obrázka so zadanými rozmermi. | 
| boolean | maRozmer(Rozmer rozmer) Alias pre máRozmer. | 
| boolean | máRozmer(Rozmer rozmer)Overí zhodu rozmerov obrázka s rozmermi zadaného objektu. | 
| boolean | maSirku(double šírka) Alias pre máŠírku. | 
| boolean | máŠírku(double šírka)Overí zhodu šírky obrázka so zadanou hodnotou. | 
| boolean | maVlnenie() Alias pre máVlnenie. | 
| boolean | máVlnenie()Overí, či je definovaná inštancia vlnenia pre tento obrázok. | 
| boolean | maVysku(double výška) Alias pre máVýšku. | 
| boolean | máVýšku(double výška)Overí zhodu výšky obrázka so zadanou hodnotou. | 
| double | maximalneX() Alias pre najväčšieX. | 
| double | maximálneX() Alias pre najväčšieX. | 
| double | maximalneY() Alias pre najväčšieY. | 
| double | maximálneY() Alias pre najväčšieY. | 
| double | minimalneX() Alias pre najmenšieX. | 
| double | minimálneX() Alias pre najmenšieX. | 
| double | minimalneY() Alias pre najmenšieY. | 
| double | minimálneY() Alias pre najmenšieY. | 
| void | monochromaticky(Color farba) Alias pre monochromatický. | 
| void | monochromatický(Color farba)Upraví tento obrázok do odtieňov zadanej farby. | 
| void | monochromaticky(Farebnosť objekt) Alias pre monochromatický. | 
| void | monochromatický(Farebnosť objekt)Upraví tento obrázok do odtieňov farby zadaného objektu. | 
| double | najmensieX() Alias pre najmenšieX. | 
| double | najmensieY() Alias pre najmenšieY. | 
| double | najmenšieX() | 
| double | najmenšieY() | 
| double | najvacsieX() Alias pre najväčšieX. | 
| double | najvacsieY() Alias pre najväčšieY. | 
| double | najväčšieX() | 
| double | najväčšieY() | 
| void | negativ() Alias pre negatív. | 
| void | negatív()Pretvorí tento obrázok na svoj farebný negatív. | 
| void | nekresliDo(Shape tvar)Vytvára obmedzenie kreslenia na tento obrázok. | 
| void | odstranVlnenie() Alias pre odstráňVlnenie. | 
| void | odstráňVlnenie()Ukončí vlnenie a úplne odstráni inštanciu vlnenia tohto obrázka
 z prostredia programovacieho rámca GRobot. | 
| void | odtieneSedej() Alias pre čiernobiely. | 
| void | odtieneSedej(boolean vyvážiťZložky) Alias pre čiernobiely. | 
| void | odtieneSedej(double váhaČervenej,
            double váhaZelenej,
            double váhaModrej) Alias pre čiernobiely. | 
| void | odtieneŠedej() Alias pre čiernobiely. | 
| void | odtieneŠedej(boolean vyvážiťZložky) Alias pre čiernobiely. | 
| void | odtieneŠedej(double váhaČervenej,
            double váhaZelenej,
            double váhaModrej) Alias pre čiernobiely. | 
| int | opakovaniaAnimacie() Alias pre opakovaniaAnimácie. | 
| int | opakovaniaAnimácie()Zistí, koľko opakovaní zostáva do ukončenia animácie. | 
| void | opakovaniaAnimacie(int početOpakovaní) Alias pre opakovaniaAnimácie. | 
| void | opakovaniaAnimácie(int početOpakovaní)Ak má tento obrázok nenulový počet snímok animácie, tak táto
 metóda nastaví nový počet opakovaní animácie zostávajúci do
 ukončenia animácie a to bez ohľadu na to, či je animácia spustená
 alebo nie. | 
| Farba[] | paleta(int početFarieb)Vyrobí paletu najpoužívanejších farieb vyskytujúcich sa
 v aktuálnej snímke obrázka so zadaným maximálnym počtom farieb. | 
| Farba[] | paleta(int početFarieb,
      int hranicaZdravia)Vyrobí paletu najpoužívanejších farieb vyskytujúcich sa
 v aktuálnej snímke obrázka so zadaným maximálnym počtom farieb
 a hranicou zdravia 256. | 
| int | pocetFarieb() Alias pre početFarieb. | 
| int | pocetOpakovani() Alias pre početOpakovaní. | 
| void | pocetOpakovani(int početOpakovaní) Alias pre početOpakovaní. | 
| int | pocetSnimok() Alias pre početSnímok. | 
| int | početFarieb()Zistí počet farieb použitých v aktuálnej snímke obrázka. | 
| int | početOpakovaní()Zistí, koľko opakovaní zostáva do ukončenia animácie. | 
| void | početOpakovaní(int početOpakovaní)Ak má tento obrázok nenulový počet snímok animácie, tak táto
 metóda nastaví nový počet opakovaní animácie zostávajúci do
 ukončenia animácie a to bez ohľadu na to, či je animácia spustená
 alebo nie. | 
| int | početSnímok()Vráti aktuálny počet snímok animácie uloženej v tomto obrázku. | 
| boolean | porovnaj(Image inýObrázok)Porovná obsah tejto a zadanej inštancie obrázka. | 
| static boolean | porovnaj(Image obrázok1,
        Image obrázok2)Porovná obsahy dvoch zadaných inštancií obrázkov. | 
| void | poslednaSnimka() Alias pre poslednáSnímka. | 
| void | poslednáSnímka()Aktivuje poslednú snímku animácie. | 
| void | posterizuj()Posterizuje obrázok podľa predvolenej palety preddefinovaných farieb. | 
| void | posterizuj(boolean difúziaChyby)Posterizuje obrázok podľa predvolenej palety preddefinovaných farieb a umožňuje
 zvoliť, či má byť pri tomto procese použitý algoritmus difúzie
 chyby. | 
| void | posterizuj(boolean difúziaChyby,
          Color[] paleta)Posterizuje obrázok podľa palety zadanej vo forme poľa farieb
 a umožňuje zvoliť, či má byť pri tomto procese použitý algoritmus
 difúzie chyby. | 
| void | posterizuj(boolean difúziaChyby,
          Color prváFarba,
          Color... ostatnéFarby)Posterizuje obrázok podľa palety zadanej vo forme zoznamu
 farieb, pričom povinné je zadanie aspoň jednej farby a umožňuje
 zvoliť, či má byť pri tomto procese použitý algoritmus difúzie
 chyby. | 
| void | posterizuj(Color[] paleta)Posterizuje obrázok podľa palety zadanej vo forme poľa farieb. | 
| void | posterizuj(Color prváFarba,
          Color... ostatnéFarby)Posterizuje obrázok podľa palety zadanej vo forme zoznamu
 farieb, pričom povinné je zadanie aspoň jednej farby. | 
| boolean | pouziMasku(BufferedImage maska) Alias pre použiMasku. | 
| boolean | použiMasku(BufferedImage maska)Použije na tento obrázok masku vyrobenú zo zadaného obrázka. | 
| static Obrazok | precitaj(Archív archív,
        String názovPoložky) Alias pre čítaj. | 
| static Obrazok | precitaj(String súbor) Alias pre čítaj. | 
| static Obrázok | prečítaj(Archív archív,
        String názovPoložky) Alias pre čítaj. | 
| static Obrázok | prečítaj(String súbor) Alias pre čítaj. | 
| void | predchadzajucaSnimka() Alias pre predchádzajúcaSnímka. | 
| void | predchádzajúcaSnímka()Aktivuje predchádzajúcu snímku animácie. | 
| void | prepisBod(double x,
         double y,
         Color farba) Alias pre prepíšBod. | 
| void | prepisBod(double x,
         double y,
         Farebnosť objekt) Alias pre prepíšBod. | 
| void | prepisBod(double x,
         double y,
         int farba) Alias pre prepíšBod. | 
| void | prepisBod(Poloha bod,
         Color farba) Alias pre prepíšBod. | 
| void | prepisBod(Poloha bod,
         Farebnosť objekt) Alias pre prepíšBod. | 
| void | prepisBod(Poloha bod,
         int farba) Alias pre prepíšBod. | 
| void | prepíšBod(double x,
         double y,
         Color farba)Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej
 pozícii zadanou farbou. | 
| void | prepíšBod(double x,
         double y,
         Farebnosť objekt)Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej
 pozícii farbou zadaného objektu. | 
| void | prepíšBod(double x,
         double y,
         int farba)Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej
 pozícii zadanou kombináciou zložiek ARGB zakódovaných
 v celočíselnej hodnote. | 
| void | prepíšBod(Poloha bod,
         Color farba)Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného
 bodu zadanou farbou. | 
| void | prepíšBod(Poloha bod,
         Farebnosť objekt)Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného
 bodu farbou zadaného objektu. | 
| void | prepíšBod(Poloha bod,
         int farba)Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného
 bodu zadanou kombináciou zložiek ARGB zakódovaných v celočíselnej
 hodnote. | 
| void | pretoc(double Δx,
      double Δy) Alias pre pretoč. | 
| void | pretoč(double Δx,
      double Δy)Pretočí obsah obrázka o zadaný počet bodov v horizontálnom
 a/alebo vertikálnom smere. | 
| void | prevratHorizontalne() Alias pre prevráťVodorovne. | 
| void | prevráťHorizontálne() | 
| void | prevratVertikalne() Alias pre prevráťZvislo. | 
| void | prevráťVertikálne() | 
| void | prevratVodorovne() Alias pre prevráťVodorovne. | 
| void | prevráťVodorovne()Prevráti obrázok podľa zvislej osi – pravá časť obrázka
 sa ocitne vľavo a naopak. | 
| void | prevratZvislo() Alias pre prevráťZvislo. | 
| void | prevráťZvislo()Prevráti obrázok podľa vodorovnej osi – horná časť obrázka sa
 ocitne dole a naopak. | 
| void | pridajSnimku() Alias pre pridajSnímku. | 
| void | pridajSnímku()Pridá novú snímku na koniec animácie s aktuálnou (naposledy
 použitou) hodnotou trvania zobrazenia
 a s aktuálnou grafikou obrázka. | 
| void | pridajSnimku(Image obrázok) Alias pre pridajSnímku. | 
| void | pridajSnímku(Image obrázok)Pridá novú snímku na koniec animácie s aktuálnou (naposledy
 použitou) hodnotou trvania zobrazenia
 a so zadanou grafikou. | 
| void | pridajSnimku(Image obrázok,
            double trvanie) Alias pre pridajSnímku. | 
| void | pridajSnímku(Image obrázok,
            double trvanie)Pridá novú snímku na koniec animácie so zadanou grafikou a so
 zadanou hodnotou trvania jej zobrazenia. | 
| void | pridajVlnenie()Pridá alebo zresetuje vlnenie tohto obrázka. | 
| void | pridajVlnenie(boolean ajČasovač)Pridá alebo zresetuje vlnenie tohto obrázka. | 
| void | pridajVlnenie(int útlm)Pridá alebo zresetuje vlnenie tohto obrázka. | 
| void | pridajVlnenie(int útlm,
             boolean ajČasovač)Pridá alebo zresetuje vlnenie tohto obrázka. | 
| static String | priecinokObrazkov() Alias pre priečinokObrázkov. | 
| static void | priecinokObrazkov(String priečinok) Alias pre priečinokObrázkov. | 
| static String | priečinokObrázkov()Vráti reťazec s aktuálnym priečinkom, z ktorého sú obrázky
 prečítané. | 
| static void | priečinokObrázkov(String priečinok)Ak sú všetky obrázky uložené v spoločnom priečinku, môžeme pre
 nich touto metódou nastaviť zdrojový priečinok čítania. | 
| double | priehladnost() Alias pre priehľadnosť. | 
| double | priehľadnosť() | 
| void | priehladnost(double priehľadnosť) Alias pre priehľadnosť. | 
| void | priehľadnosť(double priehľadnosť) | 
| void | priehladnost(Priehľadnosť objekt) Alias pre priehľadnosť. | 
| void | priehľadnosť(Priehľadnosť objekt)Skopíruje úroveň (ne)priehľadnosti zo zadaného objektu. | 
| void | prvaSnimka() Alias pre prváSnímka. | 
| void | prváSnímka()Aktivuje prvú snímku animácie. | 
| void | roluj(double Δx,
     double Δy)Posunie obsah obrázka o zadaný počet bodov v horizontálnom
 a/alebo vertikálnom smere. | 
| void | rozmaz() Alias pre rozmaž. | 
| void | rozmaz(Color pozadie) Alias pre rozmaž. | 
| void | rozmaz(Farebnosť pozadie) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      Color pozadie) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      Farebnosť pozadie) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      int rozsah) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      int rozsah,
      Color pozadie) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      int rozsah,
      Farebnosť pozadie) Alias pre rozmaž. | 
| void | rozmaz(int bgr,
      int bgg,
      int bgb) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      int bgr,
      int bgg,
      int bgb) Alias pre rozmaž. | 
| void | rozmaz(int opakovanie,
      int rozsah,
      int bgr,
      int bgg,
      int bgb) Alias pre rozmaž. | 
| void | rozmaž()Rozmaže grafiku obrázka. | 
| void | rozmaž(Color pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(Farebnosť pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      Color pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      Farebnosť pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      int rozsah)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      int rozsah,
      Color pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      int rozsah,
      Farebnosť pozadie)Rozmaže grafiku obrázka. | 
| void | rozmaž(int bgr,
      int bgg,
      int bgb)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      int bgr,
      int bgg,
      int bgb)Rozmaže grafiku obrázka. | 
| void | rozmaž(int opakovanie,
      int rozsah,
      int bgr,
      int bgg,
      int bgb)Rozmaže grafiku obrázka. | 
| Rozmer | rozmery()Vráti rozmery obrázka v implementácii rozhrania  Rozmer. | 
| void | rozmery(Rozmer rozmer)Implementácia metódy rozhrania  Rozmerurčenej
 na nastavenie obidvoch rozmerov obrázka. | 
| double | rychlost() Alias pre rýchlosť. | 
| double | rýchlosť()Vráti aktuálnu rýchlosť prehrávania animácie (bez ohľadu na to,
 či je práve animácia spustená alebo nie). | 
| void | rychlost(double nováRýchlosť) Alias pre rýchlosť. | 
| void | rýchlosť(double nováRýchlosť)Upraví rýchlosť prehrávania animácie (bez ohľadu na to, či je
 práve animácia spustená alebo nie). | 
| double | rychlostAnimacie() Alias pre rýchlosťAnimácie. | 
| double | rýchlosťAnimácie()Vráti aktuálnu rýchlosť prehrávania animácie (bez ohľadu na to,
 či je práve animácia spustená alebo nie). | 
| void | rychlostAnimacie(double nováRýchlosť) Alias pre rýchlosťAnimácie. | 
| void | rýchlosťAnimácie(double nováRýchlosť)Upraví rýchlosť prehrávania animácie (bez ohľadu na to, či je
 práve animácia spustená alebo nie). | 
| double | sirka() Alias pre šírka. | 
| void | sirka(double šírka) Alias pre šírka. | 
| int | snimka() Alias pre snímka. | 
| int | snímka()Vráti index aktívnej snímky animácie. | 
| void | snimka(int indexSnímky) Alias pre snímka. | 
| void | snímka(int indexSnímky)Aktivuje zadanú snímku animácie. | 
| void | spusti()Spustí animáciu s nekonečným počtom opakovaní v naposledy
 použitom smere prehrávania. | 
| void | spusti(int početOpakovaní)Spustí animáciu so zadaným počtom opakovaní v naposledy použitom
 smere prehrávania. | 
| void | spustiAnimaciu() Alias pre spustiAnimáciu. | 
| void | spustiAnimáciu()Spustí animáciu s nekonečným počtom opakovaní v naposledy
 použitom smere prehrávania. | 
| void | spustiAnimaciu(int početOpakovaní) Alias pre spustiAnimáciu. | 
| void | spustiAnimáciu(int početOpakovaní)Spustí animáciu so zadaným počtom opakovaní v naposledy použitom
 smere prehrávania. | 
| void | spustiAnimaciuDopredu() Alias pre spustiAnimáciuDopredu. | 
| void | spustiAnimáciuDopredu()Spustí animáciu dopredu s nekonečným počtom opakovaní. | 
| void | spustiAnimaciuDopredu(int početOpakovaní) Alias pre spustiAnimáciuDopredu. | 
| void | spustiAnimáciuDopredu(int početOpakovaní)Spustí animáciu dopredu so zadaným počtom opakovaní. | 
| void | spustiAnimaciuPospiatku() Alias pre spustiAnimáciuPospiatku. | 
| void | spustiAnimáciuPospiatku()Spustí animáciu pospiatku s nekonečným počtom opakovaní. | 
| void | spustiAnimaciuPospiatku(int početOpakovaní) Alias pre spustiAnimáciuPospiatku. | 
| void | spustiAnimáciuPospiatku(int početOpakovaní)Spustí animáciu pospiatku so zadaným počtom opakovaní. | 
| void | spustiDopredu()Spustí animáciu dopredu s nekonečným počtom opakovaní. | 
| void | spustiDopredu(int početOpakovaní)Spustí animáciu dopredu so zadaným počtom opakovaní. | 
| void | spustiPospiatku()Spustí animáciu pospiatku s nekonečným počtom opakovaní. | 
| void | spustiPospiatku(int početOpakovaní)Spustí animáciu pospiatku so zadaným počtom opakovaní. | 
| void | svetlejsi() Alias pre bledší. | 
| void | svetlejsi(double faktor) Alias pre bledší. | 
| void | svetlejší() Alias pre bledší. | 
| void | svetlejší(double faktor) Alias pre bledší. | 
| void | svetlo(Obrázok osvetlenie)Táto metóda použije na tento obrázok zadanú svetelnú masku. | 
| void | svetlo(Obrázok grafika,
      Obrázok osvetlenie)Táto metóda použije na obrázok zadaný v prvom parametri
 ( grafika) svetelnú masku zadanú v druhom parametri
 (osvetlenie) a výsledok zlúči do tejto (this)
 inštancie obrázka. | 
| double | šírka()Vráti šírku obrázka. | 
| void | šírka(double šírka)Implementácia metódy rozhrania  Rozmerurčenej
 na nastavenie šírky obrázka. | 
| void | tmavsi() Alias pre tmavší. | 
| void | tmavsi(double faktor) Alias pre tmavší. | 
| void | tmavší()Zníži úroveň svetlosti tohto obrázka. | 
| void | tmavší(double faktor)Zníži úroveň svetlosti tohto obrázka. | 
| double | trvanie()Zistí hodnotu trvania zobrazenia aktívnej snímky. | 
| void | trvanie(double trvanie)Nastaví novú hodnotu trvania aktívnej snímky. | 
| double | trvanie(int indexSnímky)Zistí hodnotu trvania zobrazenia zadanej snímky. | 
| void | trvanie(int indexSnímky,
       double trvanie)Nastaví novú hodnotu trvania zadanej snímky. | 
| double | trvanieZobrazeniaSnimky() Alias pre trvanieZobrazeniaSnímky. | 
| double | trvanieZobrazeniaSnímky()Zistí hodnotu trvania zobrazenia aktívnej snímky. | 
| void | trvanieZobrazeniaSnimky(double trvanie) Alias pre trvanieZobrazeniaSnímky. | 
| void | trvanieZobrazeniaSnímky(double trvanie)Nastaví novú hodnotu trvania aktívnej snímky. | 
| double | trvanieZobrazeniaSnimky(int indexSnímky) Alias pre trvanieZobrazeniaSnímky. | 
| double | trvanieZobrazeniaSnímky(int indexSnímky)Zistí hodnotu trvania zobrazenia zadanej snímky. | 
| void | trvanieZobrazeniaSnimky(int indexSnímky,
                       double trvanie) Alias pre trvanieZobrazeniaSnímky. | 
| void | trvanieZobrazeniaSnímky(int indexSnímky,
                       double trvanie)Nastaví novú hodnotu trvania zadanej snímky. | 
| apacheAntZIP.ZipEntry[] | uloz(Archív archív,
    String názovPoložky) Alias pre ulož. | 
| void | uloz(String súbor) Alias pre ulož. | 
| void | uloz(String súbor,
    boolean prepísať) Alias pre ulož. | 
| apacheAntZIP.ZipEntry[] | ulož(Archív archív,
    String názovPoložky)Uloží obsah obrázka do archívu ako položku so zadaným názvom. | 
| void | ulož(String súbor)Uloží obrázok do súboru. | 
| void | ulož(String súbor,
    boolean prepísať)Uloží obsah obrázka do súboru. | 
| void | upravJasKontrast(double jas,
                double kontrast)Upraví parametre jasu a kontrastu celého obrázka. | 
| void | upravPriehladnost(double zmena) Alias pre upravPriehľadnosť. | 
| void | upravPriehľadnosť(double zmena)Upraví úroveň (ne)priehľadnosti obráza. | 
| Vlnenie | vlnenie()Vráti inštanciu vlnenia pre tento obrázok,
 aby bolo možné s vlnením ďalej pracovať. | 
| void | vlozSnimku(int indexSnímky) Alias pre vložSnímku. | 
| void | vlozSnimku(int indexSnímky,
          Image obrázok) Alias pre vložSnímku. | 
| void | vlozSnimku(int indexSnímky,
          Image obrázok,
          double trvanie) Alias pre vložSnímku. | 
| void | vložSnímku(int indexSnímky)Vloží novú snímku animácie na zadanú pozíciu s aktuálnou
 (naposledy použitou) hodnotou trvania
 zobrazenia a s aktuálnou grafikou obrázka. | 
| void | vložSnímku(int indexSnímky,
          Image obrázok)Vloží novú snímku animácie na zadanú pozíciu s aktuálnou
 (naposledy použitou) hodnotou trvania
 zobrazenia a so zadanou grafikou. | 
| void | vložSnímku(int indexSnímky,
          Image obrázok,
          double trvanie)Vloží novú snímku animácie na zadanú pozíciu so zadanou grafikou
 a so zadanou hodnotou trvania jej zobrazenia. | 
| void | vylejFarbu(double x,
          double y,
          Color farba)Vyleje do zadaného bodu do obrázka farbu, ktorá sa odtiaľ
 rozšíri po okraje tej časti kresby v obrázku, v ktorej sa zadaný
 bod nachádza. | 
| void | vylejFarbu(double x,
          double y,
          Farebnosť objekt)Vyleje do zadaného bodu do obrázka farbu (určenú objektom),
 ktorá sa odtiaľ rozšíri po okraje tej časti kresby v obrázku,
 v ktorej sa zadaný bod nachádza. | 
| Farba | vylejFarbu(double x,
          double y,
          int r,
          int g,
          int b)Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek, ktorá sa určeného bodu rozšíri po okraje
 okolitej kresby. | 
| Farba | vylejFarbu(double x,
          double y,
          int r,
          int g,
          int b,
          int a)Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek a úrovne (ne)priehľadnosti, pričom farba sa
 z určeného bodu rozšíri k okrajom okolitej kresby. | 
| void | vylejFarbu(GRobot ktorý)Zadaný robot vyleje na svojej pozícii do obrázka svoju aktuálnu
 farbu, ktorá sa odtiaľ rozšíri po
 okraje okolitej kresby. | 
| void | vylejFarbu(Poloha bod,
          Color farba)Vyleje do zadaného bodu do obrázka farbu, ktorá sa odtiaľ rozšíri
 po okraje tej časti kresby v obrázku, v ktorej sa zadaný bod
 nachádza. | 
| void | vylejFarbu(Poloha bod,
          Farebnosť objekt)Vyleje do zadaného bodu do obrázka farbu (určenú objektom), ktorá
 sa odtiaľ rozšíri po okraje tej časti kresby v obrázku, v ktorej
 sa zadaný bod nachádza. | 
| Farba | vylejFarbu(Poloha bod,
          int r,
          int g,
          int b)Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek, ktorá sa určeného bodu rozšíri po okraje
 okolitej kresby. | 
| Farba | vylejFarbu(Poloha bod,
          int r,
          int g,
          int b,
          int a)Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek a úrovne (ne)priehľadnosti, pričom farba sa
 z určeného bodu rozšíri k okrajom okolitej kresby. | 
| void | vymaz() Alias pre vymaž. | 
| boolean | vymazKresbu(BufferedImage kresba) Alias pre vymažKresbu. | 
| void | vymazSnimku() Alias pre vymažSnímku. | 
| void | vymazSnimku(int indexSnímky) Alias pre vymažSnímku. | 
| void | vymaž()Vymaže obsah obrázka. | 
| boolean | vymažKresbu(BufferedImage kresba)Použije na tento obrázok filter vyrobený zo zložky jasu kresby
 zadaného/predloženého obrázka. | 
| void | vymažSnímku()Vymaže aktuálnu snímku animácie a aktivuje najbližšiu dostupnú
 snímku. | 
| void | vymažSnímku(int indexSnímky)Vymaže zadanú snímku animácie a ak to bola aktívna snímka,
 tak aktivuje najbližšiu dostupnú snímku. | 
| void | vypln(Color farba) Alias pre vyplň. | 
| void | vyplň(Color farba)Vyplní celú plochu obrázka zadanou farbou. | 
| void | vypln(Farebnosť objekt) Alias pre vyplň. | 
| void | vyplň(Farebnosť objekt)Vyplní celú plochu obrázka farbou zadaného objektu. | 
| void | vypln(Image výplň) Alias pre vyplň. | 
| void | vyplň(Image výplň)Vyplní obrázok zadanou textúrou. | 
| Farba | vypln(int r,
     int g,
     int b) Alias pre vyplň. | 
| Farba | vyplň(int r,
     int g,
     int b)Vyplní obrázok farbou zadanou prostredníctvom farebných
 zložiek. | 
| Farba | vypln(int r,
     int g,
     int b,
     int a) Alias pre vyplň. | 
| Farba | vyplň(int r,
     int g,
     int b,
     int a)Vyplní obrázok farbou zadanou prostredníctvom farebných zložiek
 a úrovne (ne)priehľadnosti. | 
| void | vypln(Shape tvar) Alias pre vyplň. | 
| void | vyplň(Shape tvar)Táto metóda slúži na kreslenie vyplnených tvarov do obrázka. | 
| void | vypln(Shape tvar,
     GRobot kreslič) Alias pre vyplň. | 
| void | vyplň(Shape tvar,
     GRobot kreslič)Táto metóda slúži na kreslenie vyplnených tvarov do obrázka. | 
| void | vypln(Shape tvar,
     Image výplň) Alias pre vypln. | 
| void | vyplň(Shape tvar,
     Image výplň)Vyplní zadaný tvar textúrou určenou zadaným obrázkom a výsledok
 nakreslí do tohto obrázka. | 
| void | vypln(Shape tvar,
     String súbor) Alias pre vypln. | 
| void | vyplň(Shape tvar,
     String súbor)Vyplní zadaný tvar textúrou prečítanou zo súboru s obrázkom
 a výsledok nakreslí do obrázka. | 
| void | vypln(String súbor) Alias pre vyplň. | 
| void | vyplň(String súbor)Vyplní obrázok zadanou textúrou. | 
| BufferedImage | vyrobMasku()Vyrobí z tohto obrázka masku priehľadnosti. | 
| boolean | vyrobMasku(BufferedImage nováMaska)Vyrobí z tohto obrázka do zadaného obrázka masku priehľadnosti. | 
| double | vyska() Alias pre výška. | 
| void | vyska(double výška) Alias pre výška. | 
| double | výška()Vráti šírku obrázka. | 
| void | výška(double výška)Implementácia metódy rozhrania  Rozmerurčenej
 na nastavenie výšky obrázka. | 
| void | zastav()Zastaví prehrávanie animácie tohto obrázka. | 
| void | zastavAnimaciu() Alias pre zastav. | 
| void | zastavAnimáciu() Alias pre zastav. | 
| Obrazok | zmenVelkost(double mierka) Alias pre zmeňVeľkosť. | 
| Obrázok | zmeňVeľkosť(double mierka)Vyrobí nový novú verziu tohto obrázka, ktorej zmení veľkosť podľa
 zadanej mierky. | 
| Obrazok | zmenVelkost(int nováŠírka,
           int nováVýška) Alias pre zmeňVeľkosť. | 
| Obrázok | zmeňVeľkosť(int nováŠírka,
           int nováVýška)Vyrobí nový novú verziu tohto obrázka, ktorej zmení veľkosť podľa
 zadaných rozmerov. | 
| void | zrusKreslica() Alias pre zrušKresliča. | 
| void | zrusPriehladnost() Alias pre zrušPriehľadnosť. | 
| void | zrušKresliča()Zruší kresliča obrázka. | 
| void | zrušPriehľadnosť()Zruší priehľadnosť všetkých bodov v obrázku. | 
addTileObserver, coerceData, copyData, createGraphics, getAlphaRaster, getColorModel, getData, getData, getGraphics, getHeight, getHeight, getMinTileX, getMinTileY, getMinX, getMinY, getNumXTiles, getNumYTiles, getProperty, getProperty, getPropertyNames, getRaster, getRGB, getRGB, getSampleModel, getSource, getSources, getSubimage, getTile, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, getTransparency, getType, getWidth, getWidth, getWritableTile, getWritableTileIndices, hasTileWriters, isAlphaPremultiplied, isTileWritable, releaseWritableTile, removeTileObserver, setData, setRGB, setRGB, toStringflush, getAccelerationPriority, getCapabilities, getScaledInstance, setAccelerationPrioritypublic final int šírka
Šírka obrázka. Konštanta má rovnakú hodnotu, akú vracia metóda
 šírka.
public final int sirka
Šírka obrázka. Konštanta má rovnakú hodnotu, akú vracia metóda
 šírka.
public final int výška
Výška obrázka. Konštanta má rovnakú hodnotu, akú vracia metóda
 výška.
public final int vyska
Výška obrázka. Konštanta má rovnakú hodnotu, akú vracia metóda
 výška.
public final Graphics2D grafika
Grafika obrázka (pre potreby kreslenia do obrázka). Robot má
 dostatok nástrojov (metód) na kreslenie. Ak potrebujete priamy
 prístup ku grafickému objektu obrázka
 (a využívať jeho metódy – ide o triedu Graphics2D), použite na prístup k nemu túto konštantu alebo
 metódu grafika, ktorá vracia rovnaký objekt.
 Používajte tento objekt ojedinele, pretože inštancie triedy
 obrázok mierne prispôsobujú svoj súradnicový priestor, aby boli
 lepšie použiteľné v prostredí programovacieho rámca grafického
 robota.
Poznámka: Súradnicový priestor obrázka
 je posunutý tak, aby počiatok súradnicovej sústavy grafického
 robota ležal v strede obrázka. Predpokladá sa, že všetky
 objekty smerujúce do obrázka budú generované robotom a ten
 generuje tvary tak, aby boli priamo použiteľné v súradnicovom
 priestore Javy, ibaže v prepočte vzhľadom k rozmerom plátien,
 preto má obrázok svoj priestor posunutý.
 O súradnicových priestoroch sa podrobnejšie píše napríklad
 v opisoch metód GRobot.cesta(), SVGpodpora.zapíš(…),
 SVGpodpora.čítaj(meno) a priebežne
 v celej dokumentácii.
public Obrázok()
Predvolený konštruktor. Vytvorí nový prázdny obrázok s rozmermi plátna.
public Obrázok(int šírka,
               int výška)
Konštruktor, ktorý vytvorí nový prázdny obrázok so zadanými rozmermi (v bodoch).
šírka – šírka nového obrázkavýška – výška nového obrázkapublic Obrázok(Image obrázok)
Vytvorí nový obrázok podľa zadaného obrázka ako predlohy. Nový
 obrázok bude mať rozmery aj obsah predlohy. Konštruktor najskôr
 vytvorí prázdny obrázok s rozmermi predlohy a potom do neho
 prekreslí obsah predlohy.
 
 Ak potrebujete vytvoriť nový obrázok prečítaný zo súboru, použite
 metódu Obrázok.čítaj(názovSúboru).
obrázok – obrázoky predlohypublic static void priečinokObrázkov(String priečinok)
Ak sú všetky obrázky uložené v spoločnom priečinku, môžeme pre
 nich touto metódou nastaviť zdrojový priečinok čítania.
 Priečinok by sa mal nachádzať v hlavnom priečinku projektu alebo by
 k nemu mala viesť systémovo nezávislá relatívna cesta. Zadaním
 prázdneho reťazca alebo hodnoty null používanie
 priečinka zrušíme.
Cesta je používaná pri čítaní všetkých obrázkov, okrem
 čítania z archívu. Čiže
 napríklad pri čítaní metódou čítaj(súbor), vypĺňaní metódami GRobot.vyplňTvar(tvar, súbor), GRobot.vyplňOblasť(oblasť, súbor)
 (atď.), kreslení metódami GRobot.obrázok(súbor), Plátno.obrázok(súbor) (atď.), ale aj pri nastavovaní vlastného
 tvaru robota GRobot.vlastnýTvar(súbor) a v mnohých iných situáciách (pozri aj
 metódu Svet.priečinokObrázkov(priečinok)).
priečinok – názov priečinka, relatívna cesta, prípadne
     prázdny reťazec alebo nullpriečinokObrázkov(), 
Svet.priečinokObrázkov()public static void priecinokObrazkov(String priečinok)
 Alias pre
 Alias pre priečinokObrázkov.
public static String priečinokObrázkov()
Vráti reťazec s aktuálnym priečinkom, z ktorého sú obrázky
 prečítané. Reťazec je obohatený o oddeľovací znak priečinkov java.io.File.separatorChar (/ alebo
 \ – záleží na type operačného systému), ktorý automaticky
 pridáva metóda priečinokObrázkov(priečinok). Rovnako všetky oddeľovacie znaky
 priečinkov v relatívnej ceste sú nahradené podľa typu operačného
 systému.
priečinokObrázkov(String), 
Svet.priečinokObrázkov(String)public static String priecinokObrazkov()
 Alias pre
 Alias pre priečinokObrázkov.
public static Obrázok čítaj(String súbor)
Prečíta do vnútornej pamäte sveta zadaný obrázok zo súboru
 a vytvorí z neho nový objekt typu Obrázok.
Táto metóda uzatvára funkcionalitu metódy Svet.čítajObrázok(súbor), ibaže
 naviac z objektu typu Image (ktorý zostáva uložený
 vo vnútornej pamäti sveta) automaticky vytvára nový objekt Obrázok.
Obrázok prečítaný zo súboru je chápaný ako zdroj a po
 prečítaní zostane uložený vo vnútornej pamäti sveta. Z nej
 môže byť v prípade potreby (napríklad ak sa obsah súboru na
 disku zmenil) odstránený metódou Svet.uvoľni(názovZdroja). (Táto informácia je platná pre
 všetky metódy pracujúce s obrázkami alebo zvukmi, ktoré
 prijímajú názov súboru ako parameter.)
Táto metóda je schopná čítať aj animácie uložené vo formáte GIF
 (z dôvodu obmedzení tohto formátu ho neodporúčame používať na
 ukladanie nových animácií) a tiež sekvencie uložené v číslovaných
 obrázkových súboroch vo formáte PNG (čo je lepšia alternatíva na
 ukladanie plnofarebných animácií; pri použití tejto verzie metódy
 má však tú nevýhodu, že nevie automaticky uložiť informácie
 o trvaní zobrazenia jednotlivých snímok a predvolene pracuje
 s hodnotou 40 ms nastavenou pre každú snímku; túto nevýhodu nemá
 čítanie sekvencie z archívu – pozri poznámku nižšie). Podrobnejšie
 informácie o PNG sekvenciách sú v opise metódy ulož(súbor, prepísať).
Upozornenie: Pri čítaní animácie z PNG sekvencie (príklad s PNG sekvenciou je uvedený nižšie, pod príkladom s animovaným GIFom) sú do vnútorného zoznamu zdrojov sveta uložené všetky obrázky sekvencie. To je ďalšia nevýhoda, lebo obrazové informácie snímok sú uchovávané duplicitne. Túto nevýhodu nemá čítanie sekvencie z archívu (pozri poznámku nižšie).
Poznámka: Od verzie 2.18 sa PNG sekvencie
 dajú jednoducho čítať aj z archívu (ZIP).
 Výhodou je uchovanie celej animácie v jednom súbore, úspora
 vnútornej pamäte programovacieho rámca a tiež automatické uchovanie
 informácií o časovaní snímok (v samostatnej položke archívu).
 Pozri aj príklad v opise metódy Obrázok.čítaj(archív, názovPoložky).
Príklad:
Ako bolo povedané, programovací rámec dokáže čítať a pracovať s animovanými obrázkami vo formáte GIF. Je to historický formát s určitými (najmä farebnými) obmedzeniami, ale stále nachádza svoje použitie. Nasledujúci príklad ukazuje, ako takýto súbor prečítať a animovať s použitím programovacieho rámca GRobot.
 
srdce.gif – animovaný obrázok na
 prevzatie, ktorý potrebuje tento príklad na to, aby
 fungoval
 
importknižnica.*;publicclassAnimujGIFextendsGRobot{// Súkromná statická inštancia obrázka, ktorý budeme animovať. Statickosť// umožňuje jej použitie v hlavnej metóde, ktorá musí byť statická.privatestaticObrázokanimovanýObrázok;// Hlavná metóda. (Obvykle ju umiestňujeme na koniec súboru. Je to taká// dohoda, zvyk medzi programátormi v Jave, ale z pohľadu samotného jazyka// je jedno, kde je jej definícia umiestnená. Teraz sme ju presunuli sem,// lebo na komentáre v nej logicky nadväzujú komentáre v konštruktore// tejto triedy.)publicstaticvoidmain(String... args) {// Skryjeme svet (čiže okno aplikácie).Svet.skry();// Vopred prečítame animovaný obrázok zo súboru, aby sme podľa jeho// rozmerov mohli upraviť rozmery sveta v konštruktore:animovanýObrázok =Obrázok.čítaj("srdce.gif");// Vytvorenie anonymnej inštancie tejto triedy (konštruktor triedy// odvodenej od robota vždy zabezpečí vytvorenie aplikácie):newAnimujGIF();// Spustenie animácie:animovanýObrázok.spusti();// Spustenie časovača:Svet.spustiČasovač(0.020);// Automatické nastavenie veľkosti a polohy okna sveta (t. j.// aplikácie) a jeho zobrazenie:Svet.zbaľ();Svet.vystreď();Svet.zobraz(); }// Súkromný konštruktor.privateAnimujGIF() {// Spustenie tej verzie nadradeného konštruktora, ktorá umožňuje// zmeniť rozmery plátien sveta:super(animovanýObrázok.šírka, animovanýObrázok.výška);// Skrytie robota:skry(); }// Reakcia na časovač – pravidelne prekresľuje animovaný obrázok, ktorého// animácia je vykonávaná automaticky (vnútornými mechanizmami sveta).@Overridepublicvoidtik() {if(Svet.neboloPrekreslené()) {podlaha.vymažGrafiku();obrázok(animovanýObrázok); } } }
Výsledok:

 
Táto animácia
 bude zobrazená v okne aplikácie.
Príklad:
Tento príklad ukazuje ako prečítať PNG sekvenciu s použitím
 rovnakej šablóny názvu súborov, akú používa druhý príklad uvedený
 v opise metódy ulož(súbor,
 prepísať). Dotknutý príklad generuje súbory použiteľné s týmto
 príkladom, preto je vhodné sa zaoberať najskôr ním. (Generovanie
 môže trvať aj sedem minút, podľa výkonnosti hadvéru,
 a vygenerované súbory budú dohromady zaberať okolo 120 MB.)
V súlade s informáciami uvedenými v opise metódy
 ulož(súbor, prepísať) platí, že ak
 táto metóda pri čítaní sekvencie nájde súbor s poradovým číslom
 nula, tak ho prečíta ako neanimovaný obrázok a už sa nepokúša
 hľadať ďalšie súbory vyhovujúce kritériám šablóny názvov súborov
 animovanej sekvencie. Inak postupuje pri čítaní systematicky
 a pridáva snímky do prečítanej animácie dovtedy, kým jestvujú
 súbory v neprerušenej sekvencii podľa určenej šablóny.
Poznámka: Metóda ulož(súbor, prepísať) dokáže vygenerovať len PNG
 sekvenciu, ale táto metóda (čítaj(súbor)) je schopná
 prečítať aj sekvenciu vo formáte JPEG. JPEG je stratový formát
 a neumožňuje ukladanie (polo)priehľadných bodov. Je však vhodný na
 ukladanie fotografií, kde sa jeho kompresné artefakty vizuálne
 strácajú (opticky zanikajú v grafickej komplikovanosti obrazu),
 čím sa lepšie uplatňuje jeho kompresný benefit. JPEG sekvencie
 môžete použiť na simulovanie prehrávania videa, ak takú sekvenciu
 vyrobíte s použitím externého softvéru a zachováte pravidlá
 pomenovania šablón s rozdielom prípony – namiesto .png
 musí byť uvedená .jpg alebo .jpeg
importknižnica.*;publicclassAnimujSekvenciuPNGextendsGRobot{// Inštancia obrázka, ktorý bude obsahovať a animovať prečítanú sekvenciu.privateObrázokanimovanýObrázok;// Aktuálne „percento“ prečítaných snímok vypočítané v reakcii „sekvencia“// (v skutočnosti hodnota v rozsahu od 0.0 do 1.0, ktorá je použitá na// zobrazenie percent):privatedoublepercento =0.0;// Nastavenie začiatočného stavu aplikácie (po prečítaní sekvencie sa// zmení na false):privatebooleančítam =true;// Názov naposledy prečítaného súboru sekvencie:privateStringnaposledyPrečítaný ="";// Súkromný konštruktor.privateAnimujSekvenciuPNG() {// Spustenie tej verzie nadradeného konštruktora, ktorá umožňuje// zmeniť rozmery plátien sveta:super(Svet.šírkaObrázka("sekvencia/nahodne-ciary-001.png"),Svet.výškaObrázka("sekvencia/nahodne-ciary-001.png"));// Počas čítania pozastavíme automatické prekresľovanie (aby// kreslenie v reakcii sekvencia „neblikalo“):Svet.nekresli();// Automatické nastavenie veľkosti a polohy okna sveta// (t. j. aplikácie):Svet.zbaľ();Svet.vystreď();// Skrytie robota:skry();// Spustíme časomieru, pretože chceme vedieť ako dlho potrvá čítanie// PNG sekvencie a časovač, aby mohlo byť aktualizované zobrazovanie// priebehu čítania:Svet.spustiČasomieru();Svet.spustiČasovač(0.250);// Prečítanie PNG sekvencie:animovanýObrázok =Obrázok.čítaj("sekvencia/nahodne-ciary-***.png");// Zastavíme časomieru aj časovač a zobrazíme výsledok (na konzole):doublečas =Svet.zastavČasomieru();Svet.zastavČasovač();System.out.println("Čítanie animácie trvalo: "+Math.round(čas /60) +" min "+F(čas %60,2) +" s");// Prečítané – odteraz treba zobrazovať animáciu:čítam =false;// Nastavíme čiernu farbu pozadia:Svet.farbaPozadia(čierna);// A spustíme animáciu a časovač:animovanýObrázok.spusti();Svet.spustiČasovač(0.040);// Obnovíme automatické prekresľovanie, aby sme videli priebeh// animácie:Svet.kresli(); }// Táto reakcia je automaticky spúšťaná počas čítania (alebo zápisu)// animovanej PNG sekvencie. Používame ju na aktualizovanie informácie// o stave čítania zobrazenej na obrazovke pre používateľa cez reakciu tik.@Overridepublicvoidsekvencia(intkódSpracovania,Stringzdroj,Stringcieľ,longstav,longcelkovo) {// Vypočítame percento prečítanej animácie a uložíme názov súboru:percento = (double)stav / (double)celkovo; naposledyPrečítaný = zdroj;// Žiadame prekreslenie, čo bude spracované v reakcii tik:Svet.žiadajPrekreslenie(); }// Reakcia na časovač – pravidelne prekresľuje animovaný obrázok, ktorého// animácia je vykonávaná automaticky (vnútornými mechanizmami sveta).@Overridepublicvoidtik() {if(Svet.neboloPrekreslené()) {// Reakcia slúži na zobrazovanie priebehu čítania aj na// zobrazovanie prečítanej animácie. V obidvoch prípadoch najprv// vymažeme grafiku podlahy:podlaha.vymažGrafiku();// Potom podľa stavu aplikácie zobrazíme priebeh alebo animovaný// obrázok:if(čítam) {// Nasledujúce príkazy kreslia jednoduchý ukazovateľ priebehu// obsahujúci informačný text o aktuálnom percente a naposledy// prečítanom súbore:skoč(percento *200-200,0);farba(svetlošedá);vyplňObdĺžnik(percento *200,10);farba(čierna);skočNa(0,0);kresliObdĺžnik(200,10);text(F(percento *100.0,0) +" % ("+ naposledyPrečítaný +")");// Prekreslíme obrazovku, aby bolo vidno aktuálny stav// priebehu:Svet.prekresli(); }elseobrázok(animovanýObrázok); } }// Hlavná metóda.publicstaticvoidmain(String... args) {// Vytvorenie anonymnej inštancie tejto triedy (konštruktor triedy// odvodenej od robota vždy zabezpečí vytvorenie aplikácie):newAnimujSekvenciuPNG(); } }
Opis priebehu a výsledku:
Počas čítania bude na obrazovke premietaný stav priebehu čítania
 s názvom naposledy prečítaného súboru. Kód spracovania reakcie
 sekvencia
 sme v príklade nepoužili. V tomto prípade mal hodnotu konštanty
 ČÍTANIE_PNG_SEKVENCIE.
 (V prípade čítania animáce z formátu GIF je hodnota rovná
 hodnote konštanty ČÍTANIE_GIF_ANIMÁCIE.) Podľa nami nameraných hodnôt trvalo čítanie
 sekvencie od osem do dvanásť sekúnd.
Výsledkom vykonania tohto príkladu bude spustenie animácie
 prečítanej zo sekvencie súborov vo formáte PNG (uloženej na
 disku). Grafické súbory potrebné na fungovanie tohto príkladu je
 schopný vytvoriť v poradí druhý príklad uvedený v opise metódy
 ulož(súbor, prepísať) (preto je
 vhodné sa zaoberať najskôr ním).
|  |  | 
| Ukážky možného vzhľadu
 prečítanej animáce, ak bola sekvencia vygenerovaná príkladom
 z opisu metódy  | |
Na 32-bitových operačných systémoch sa môže stať, že aplikácia nebude mať dostatok pamäte na vykonanie. V takom prípade skúste cez príkazový riadok operačného systému spustiť aplikáciu nasledujúcim príkazom potvrdeným v priečinku s preloženou aplikáciou:
java -Xmx1g AnimujSekvenciuPNG
V prípade, že táto metóda nenájde dostatok miesta v pamäti na
 prečítanie celej sekvencie, tak uvoľní obrázok z pamäti a vráti
 hodnotu null. Tiež upozorní všetky inštancie sledujúce
 čítanie sekvencie reakciou sekvencia a/alebo aktívnu obsluhu udalostí
 s definovanou reakciou sekvencia poslaním informácií
 platných v čase zlyhania s kódom spracovania CHYBA_ČÍTANIA_PNG_SEKVENCIE.
súbor – názov súboru s obrázkomObrázok
     (prípadne null ak pokus o prečítanie sekvencie
     zlyhal z pamäťových dôvodov)GRobotException – ak súbor s obrázkom nebol nájdený
     (identifikátor imageNotFound)Svet.priečinokObrázkov(String)public static Obrázok čítaj(Archív archív, String názovPoložky)
Prečíta do vnútornej pamäte sveta obrázok zo zadaného archívu
 a vytvorí z neho nový objekt typu Obrázok. Archív
 musí byť vopred otvorený na čítanie. Inak metóda funguje veľmi
 podobne ako metóda čítaj(súbor).
Obrázok prečítaný z archívu je chápaný ako objekt a po prečítaní
 zostáva uložený vo vnútornej pamäti sveta. Z nej môže byť v prípade
 potreby odstránený metódou Svet.uvoľni(ktorý) (kde ktorý je inštancia
 obrázka).
Táto metóda neberie do úvahy nastavenie priečinka obrázkov. Ak je obrázok v archíve uložený v nejakom priečinku, treba ako názov položky uviesť celú cestu.
Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na čítanie.
Príklad:
Nižšie sú fragmenty kódu, ktorými sa dá zapísať aj prečítať PNG
 sekvencia z archívu. Kód treba korektne uzavrieť do štruktúr
 try-catch, obrázok na zápis treba vopred
 pripraviť (naprogramovať jeho vyrobenie), ale inak je kód
 pripravený na použitie.
Poznámka: Pri zápise a čítaní PNG sekvencie v archíve sú automaticky uchovávané informácie o časovaní snímok v samostatnej položke archívu, ktorej názov je odvodený zo šablóny PNG sekvencie. Čítanie PNG sekvencie z archívu má aj tú výhodu, že parciálne obrázky sekvencie nie sú duplicitne ukladané v pamäti sveta.
// (deklarácie)Archívarchív =newArchív();Obrázokobrázok =/*… obrázok treba vytvoriť …*/;// Takto sa dá obrázok zapísať:archív.otvorNaZápis("archív-png.zip"); obrázok.ulož(archív,"názov-*.png"); archív.zavri();// prípadne takto:archív.otvorNaZápis("archív-png.zip"); archív.pridajPoložku("názov-*.png", obrázok); archív.zavri();
// A takto potom prečítaťarchív.otvorNaČítanie("archív-png.zip"); obrázok =Obrázok.čítaj(archív,"názov-*.png"); archív.zavri();// prípadne takto:archív.otvorNaČítanie("archív-png.zip"); obrázok = archív.obrázok("názov-*.png"); archív.zavri();
archív – archív, z ktorého má byť obrázok prečítanýnázovPoložky – názov položky s obrázkom v archíve (vrátane
     úplnej cesty) alebo šablóna sekvencie animácieObrázok
     (prípadne null, ak pokus o prečítanie sekvencie
     zlyhal z pamäťových dôvodov)GRobotException – ak archív nie je otvorený na čítanie
     (identifikátor archiveNotOpenForReading) alebo zadaná
     položka s obrázkom nebola nájdená (identifikátor
     entryNotFound)ulož(Archív, String), 
Archív.obrázok(String), 
Archív.pridajPoložku(String, Obrázok)public double šírka()
public double výška()
public void šírka(double šírka)
Implementácia metódy rozhrania Rozmer určenej
 na nastavenie šírky obrázka. Keďže je však obrázok rozmerovo
 nemenný (angl. immutable), produkuje táto metóda vždy výnimku
 GRobotException s identifikátorom
 imageSizeImmutable.
šírka v rozhraní RozmerGRobotException – vždy – obrázok je rozmerovo nemenný
     (identifikátor imageSizeImmutable)public void výška(double výška)
Implementácia metódy rozhrania Rozmer určenej
 na nastavenie výšky obrázka. Keďže je však obrázok rozmerovo
 nemenný (angl. immutable), produkuje táto metóda vždy výnimku
 GRobotException s identifikátorom
 imageSizeImmutable.
výška v rozhraní RozmerGRobotException – vždy – obrázok je rozmerovo nemenný
     (identifikátor imageSizeImmutable)public Rozmer rozmery()
public void rozmery(Rozmer rozmer)
Implementácia metódy rozhrania Rozmer určenej
 na nastavenie obidvoch rozmerov obrázka. Keďže je však obrázok
 rozmerovo nemenný (angl. immutable), produkuje táto metóda vždy
 výnimku GRobotException s identifikátorom
 imageSizeImmutable.
rozmery v rozhraní RozmerGRobotException – vždy – obrázok je rozmerovo nemenný
     (identifikátor imageSizeImmutable)public boolean máŠírku(double šírka)
Overí zhodu šírky obrázka so zadanou hodnotou.
public boolean maSirku(double šírka)
 Alias pre
 Alias pre máŠírku.
public boolean máVýšku(double výška)
Overí zhodu výšky obrázka so zadanou hodnotou.
public boolean maVysku(double výška)
 Alias pre
 Alias pre máVýšku.
public boolean máRozmer(double šírka,
                        double výška)
Overí zhodu rozmerov obrázka so zadanými rozmermi.
public boolean maRozmer(double šírka,
                        double výška)
 Alias pre
 Alias pre máRozmer.
public boolean máRozmer(Rozmer rozmer)
Overí zhodu rozmerov obrázka s rozmermi zadaného objektu.
public Obrázok zmeňVeľkosť(double mierka)
Vyrobí nový novú verziu tohto obrázka, ktorej zmení veľkosť podľa zadanej mierky.
Príklad:
importknižnica.*;publicclassTestZmenyVeľkostiextendsGRobot{privatefinalZoznam<Obrázok> obrázky =newZoznam<Obrázok>();privateTestZmenyVeľkosti() {// Najprv vyrobíme a nakreslíme obrázok:Obrázokobrázok =newObrázok(100,100);kresliNaObrázok(obrázok);farba(žltá);vyplň();hrúbkaČiary(1);farba(červená);kružnica(45);farba(zelená);štvorec(25);farba(tyrkysová);hrúbkaČiary(2);for(inti =0; i <18; ++i) {skočNa(0,0);vpravo(20);dopredu(47); }domov();farba(modrá);kruh(5);kresliNaPodlahu();// Potom postupne zmeníme jeho rozmer v rozmedzí mierok 0.33 – 3.0…for(doublemierka =0.33; mierka <=3.0; mierka +=0.025) {veľkosť(10* mierka);// nepovinné – veľkosť robota bude// indikovať fázu procesuobrázky.pridaj(obrázok.zmeňVeľkosť(mierka)); }// …a späť. (Obrázky so zmenenou veľkosťou ukladáme do zoznamu.)for(doublemierka =3.0; mierka >=0.33; mierka -=0.025) {veľkosť(10* mierka);// nepovinné – veľkosť robota bude// indikovať fázu procesuobrázky.pridaj(obrázok.zmeňVeľkosť(mierka)); }// Konštantná uhlová rýchlosť zabezpečí rotáciu obrázkauhlováRýchlosť(0.5); }@Overridepublicvoidaktivita() {// Zmena vlastného tvaru robota postupným výberom prvkov zoznamu// zabezpečí ukážku kontinuálnej zmeny obrázka v rozmedzí mierok,// ktoré sme použili v konštruktore.vlastnýTvar(obrázky.ďalší()); }publicstaticvoidmain(String[] args) {newTestZmenyVeľkosti(); } }
Výsledok:

 
Ukážka výsledku – jedna z verzií
 zväčšeného obrázka vo fáze otáčania sa okolo svojej osi.
mierka – mierka 0.5 znamená, že výsledný obrázok
     bude polovičný; mierka 2.0 znamená, že výsledný
     obrázok bude dvojnásobnýObrázok)public Obrazok zmenVelkost(double mierka)
 Alias pre
 Alias pre zmeňVeľkosť.
public Obrázok zmeňVeľkosť(int nováŠírka, int nováVýška)
Vyrobí nový novú verziu tohto obrázka, ktorej zmení veľkosť podľa zadaných rozmerov.
nováŠírka – šírka novej verzie obrázkanováVýška – šírka novej verzie obrázkaObrázok)public Obrazok zmenVelkost(int nováŠírka, int nováVýška)
 Alias pre
 Alias pre zmeňVeľkosť.
public Graphics2D grafika()
Vráti objekt grafiky obrázka (pre potreby kreslenia do obrázka).
 Robot má dostatok nástrojov (metód) na kreslenie. Ak potrebujete
 priamy prístup ku grafickému objektu
 obrázka (a využívať jeho metódy – ide o triedu Graphics2D), použite na prístup k nemu túto metódu alebo
 konštantu grafika, ktorá obsahuje rovnaký
 objekt, aký vracia táto metóda. Používajte tento objekt
 ojedinele, pretože inštancie triedy obrázok mierne prispôsobujú
 svoj súradnicový priestor, aby boli lepšie použiteľné v prostredí
 programovacieho rámca grafického robota.
(Na spresnenie: Súradnicový priestor obrázka je posunutý tak,
 aby počiatok súradnicovej sústavy programovacieho rámca GRobot
 ležal v strede obrázka. Predpokladá sa totiž, že všetky objekty
 tvarov určené na nakreslenie do obrázka budú generované robotom
 a ten generuje tvary tak, aby boli priamo použiteľné
 v súradnicovom priestore Javy, ibaže v prepočte vzhľadom
 k rozmerom plátien, preto má obrázok svoj priestor posunutý.
 Viac sa o súradnicových priestoroch píše napríklad v opisoch
 metód GRobot.cesta(),
 SVGpodpora.zapíš(…), SVGpodpora.čítaj(meno) a tiež priebežne v celej dokumentácii.)
Graphics2D – grafika
     obrázkapublic void kresliVšade()
Zruší oblasť na obmedzenie kreslenia na tento obrázok.
GRobot.kresliVšade(), 
kresliDo(Shape), 
nekresliDo(Shape)public void kresliVsade()
 Alias pre
 Alias pre kresliVšade.
public void kresliDo(Shape tvar)
Obmedzí kreslenie na tento obrázok na plochu zadaného útvaru
 (Shape).
Robot disponuje množinou metód na kreslenie tvarov (kružnica, elipsa, štvorec…), ktoré
 zároveň generujú tvary. Na ich použitie s touto metódou je dobré
 predtým kreslenie tvarov zakázať a neskôr opäť povoliť.
 Metóda text dokonca zákaz kreslenia
 tvarov požaduje, aby mohla vygenerovať tvar (bez zákazu má
 návratovú hodnotu null). Tvar je možné vytvoriť aj
 z cesty…
Obmedzenie zužuje aktuálny priestor kreslenia, to znamená, že
 sa priebežne vytvára oblasť, ktorá je prienikom všetkých
 obmedzení. Ak chceme vytvoriť obmedzenie tvaru, ktorý je
 možné vytvoriť inou množinovou operáciou, môžeme na obmedzenie
 kreslenia použiť Oblasť (zadanú namiesto
 parametra tvar). Obmedzenia sú platné pre všetky
 roboty a zrušíme ich volaním metódy kresliVšade.
Poznámka: Pri takomto orezávaní nie
 je na všetkých platformách a/alebo implementáciách virtuálneho
 stroja Javy dostupná funkcia anti-aliasingu, čo zjednodušene
 povedané znamená, že okraje orezanej kresby môžu byť „zúbkaté.“
 Ak sa chcete tejto nedokonalosti vyhnúť, použite radšej funkciu
 masky. Tá dovoľuje ovplyvňovať
 úroveň priehľadnosti s jemnosťou na jednotlivé body rastra.
 (Poznámka: Naopak, pri exporte kreslenia do inštancie SVGPodpora
 je výhodnejšie pracovať s orezávaním – čiže práve s touto
 metódou alebo jej variantmi.)
tvar – tvar (Shape) alebo OblasťGRobot.kresliDo(Shape), 
kresliVšade(), 
nekresliDo(Shape)public void nekresliDo(Shape tvar)
Vytvára obmedzenie kreslenia na tento obrázok.
 Funguje rovnako ako metóda kresliDo, ibaže obrátene – kreslenie je možné všade, okrem
 zadaného tvaru alebo oblasti.
Rovnako ako pri metóde kresliDo, sa
 aj toto obmedzenie kombinuje s aktuálnymi obmedzeniami kreslenia
 a je platné pre všetky roboty. Všetky ombedzenia zrušíme
 volaním metódy kresliVšade.
Poznámka: Pri takomto orezávaní nie
 je na všetkých platformách a/alebo implementáciách virtuálneho
 stroja Javy dostupná funkcia anti-aliasingu, čo zjednodušene
 povedané znamená, že okraje orezanej kresby môžu byť „zúbkaté.“
 Ak sa chcete tejto nedokonalosti vyhnúť, použite radšej funkciu
 masky. Tá dovoľuje ovplyvňovať
 úroveň priehľadnosti s jemnosťou na jednotlivé body rastra.
 (Poznámka: Naopak, pri exporte kreslenia do inštancie SVGPodpora
 je výhodnejšie pracovať s orezávaním – čiže práve s touto
 metódou alebo jej variantmi.)
tvar – tvar (Shape) alebo OblasťGRobot.nekresliDo(Shape), 
kresliDo(Shape), 
kresliVšade()public double najmenšieX()
najväčšieX(), 
najmenšieY(), 
najväčšieY()public double najmensieX()
 Alias pre
 Alias pre najmenšieX.
public double minimálneX()
 Alias pre
 Alias pre najmenšieX.
public double minimalneX()
 Alias pre
 Alias pre najmenšieX.
public double najmenšieY()
najmenšieX(), 
najväčšieX(), 
najväčšieY()public double najmensieY()
 Alias pre
 Alias pre najmenšieY.
public double minimálneY()
 Alias pre
 Alias pre najmenšieY.
public double minimalneY()
 Alias pre
 Alias pre najmenšieY.
public double najväčšieX()
najmenšieX(), 
najmenšieY(), 
najväčšieY()public double najvacsieX()
 Alias pre
 Alias pre najväčšieX.
public double maximálneX()
 Alias pre
 Alias pre najväčšieX.
public double maximalneX()
 Alias pre
 Alias pre najväčšieX.
public double najväčšieY()
najmenšieX(), 
najväčšieX(), 
najmenšieY()public double najvacsieY()
 Alias pre
 Alias pre najväčšieY.
public double maximálneY()
 Alias pre
 Alias pre najväčšieY.
public double maximalneY()
 Alias pre
 Alias pre najväčšieY.
public void vymaž()
Vymaže obsah obrázka. V podstate vyplní obrázok priehľadnou farbou.
public void vymaz()
 Alias pre
 Alias pre vymaž.
public void prepíšBod(double x,
                      double y,
                      Color farba)
Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej pozícii zadanou farbou.
x – x-ová súradnica bodu v súradnicovom priestore rámcay – y-ová súradnica bodu v súradnicovom priestore rámcafarba – objekt určujúci novú farbu bodupublic void prepíšBod(double x,
                      double y,
                      Farebnosť objekt)
Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej pozícii farbou zadaného objektu.
x – x-ová súradnica bodu v súradnicovom priestore rámcay – y-ová súradnica bodu v súradnicovom priestore rámcaobjekt – objekt určujúci novú farbu bodupublic void prepíšBod(double x,
                      double y,
                      int farba)
Prepíše farebné zložky a zložku priehľadnosti bodu na zadanej pozícii zadanou kombináciou zložiek ARGB zakódovaných v celočíselnej hodnote.
x – x-ová súradnica bodu v súradnicovom priestore rámcay – y-ová súradnica bodu v súradnicovom priestore rámcafarba – celé číslo obsahujúce kombináciu farebných zložiek
     RGB a priehľadnostipublic void prepisBod(double x,
                      double y,
                      int farba)
 Alias pre
 Alias pre prepíšBod.
public void prepíšBod(Poloha bod, Color farba)
Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného bodu zadanou farbou.
bod – objekt reprezentujúci súradnice bodu (v súradnicovom
     priestore robota)farba – objekt určujúci novú farbu bodupublic void prepíšBod(Poloha bod, Farebnosť objekt)
Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného bodu farbou zadaného objektu.
bod – objekt reprezentujúci súradnice bodu (v súradnicovom
     priestore robota)objekt – objekt určujúci novú farbu bodupublic void prepíšBod(Poloha bod, int farba)
Prepíše farebné zložky a zložku priehľadnosti na pozícii zadaného bodu zadanou kombináciou zložiek ARGB zakódovaných v celočíselnej hodnote.
bod – objekt reprezentujúci súradnice bodu (v súradnicovom
     priestore robota)farba – celé číslo obsahujúce kombináciu farebných zložiek
     RGB a priehľadnostipublic GRobot kreslič()
 Vráti aktuálneho kresliča obrázka alebo
 Vráti aktuálneho kresliča obrázka alebo
 null, ak nie je kreslič nastavený. Pre podrobnosti
 pozri informácie pri setteri vlastnosti
 kreslič.
null,
     ak obrázok nemá nastaveného žiadneho konkrétneho kresličapublic void kreslič(GRobot kreslič)
 Nastaví „kresliča“ obrázka – grafického
 robota, ktorý bude slúžiť na alternatívne kreslenie a vypĺňanie
 tvarov v rámci obrázka. Vlastnosť je určená na kombinované
 fungovanie s metódami
 Nastaví „kresliča“ obrázka – grafického
 robota, ktorý bude slúžiť na alternatívne kreslenie a vypĺňanie
 tvarov v rámci obrázka. Vlastnosť je určená na kombinované
 fungovanie s metódami kresli
 a vyplň. (Tie sú v súčasnosti považované
 za metódy, ktoré poskytujú alternatívny spôsob kreslenia
 a vypĺňania tvarov do obrázka. Podrobnosti nájdete v ich opisoch.)
 Novému zvolenému kresličovi bude automaticky vypnuté kreslenie tvarov, pričom jeho
 štandardné kresliace schopnosti (kreslenie pri pohybe dopredu, dozadu a podobne, pri položenom
 pere) zostávajú zachované. Prípadnému starému kresličovi bude
 kreslenie tvarov automaticky
 zapnuté.
Táto vlastnosť je určená výhradne na použitie s metódami
 kresli a vyplň, ktoré
 očakávajú výstupy z metód robota na kreslenie tvarov (kruh, elipsa, štvorec a podobne). Nie je
 dobré túto vlastnosť kombinovať s úplným presmerovaním kreslenia robota do
 obrázka. Mohli by sme získať neočakávané výsledky.
Keď chceme kresliča zrušiť, pošleme do argumentu tejto metódy
 hodnotu null alebo použijeme metódu zrušKresliča.
kreslič – nový kreslič (grafický robot) alebo nullpublic void zrušKresliča()
public void zrusKreslica()
 Alias pre
 Alias pre zrušKresliča.
public void kresli(Shape tvar)
Táto metóda slúži na kreslenie obrysov zadaného tvaru do obrázka. Ak má tento objekt obrázka nastaveného takzvaného kresliča, tak táto metóda použije na nakreslenie jeho farbu alebo náter a štýl čiary. V opačnom prípade použije hlavný robot.
Zadaný tvar by mal byť vygenerovaný niektorým robotom (metódami
 na kreslenie tvarov), pretože obrázky majú súradnicový priestor
 prispôsobený prostrediu rámca – osi sú posunuté tak, aby robot
 v pozícii [0, 0] kreslil do stredu obrázka (toto posunutie závisí
 nielen od rozmerov obrázka, ale aj od aktuálnych rozmerov plátien)
 a y-ová súradnica je orientovaná podľa súradnicového systému Javy,
 to znamená, že je voči svetu robota zrkadlovo prevrátená.
 (O súradnicových priestoroch sa podrobnejšie píše napríklad
 v opisoch metód GRobot.cesta(), SVGpodpora.zapíš(…),
 SVGpodpora.čítaj(meno) a priebežne
 v celej dokumentácii.)
Tip: V súvislosti s generovaním tvarov a ich
 použitím by robot, ktorého chceme použiť na generovanie tvarov,
 mal mať vypnuté kreslenie
 tvarov, aby vygenerovaný tvar nenakreslil do aktívneho plátna,
 prípadne do iného obrázka, do ktorého má presmerované kreslenie.
 Automatické vypnutie alebo zapnutie kreslenia tvarov zvoleného
 grafického robota vykoná metóda kreslič
 a to podľa toho, či je jej argumentom konkrétny robot – vtedy
 mu kreslenie tvarov vypne, alebo hodnota null – vtedy
 zapne kreslenie tvarov tomu robotu, ktorý bol aktuálnym
 kresličom konkrétneho obrázka. Metóda však nezaznamenáva počet
 spustení pre roboty, takže v prípade jej náhodného spúšťania
 s rôznymi hodnotami argumentov – robotov alebo hodnôt
 null, je výsledný stav kreslenia alebo nekreslenia
 tvarov pre konkrétny robot rovný tomu stavu, do ktorého ho
 preplo posledné spustenie dotknutej metódy. Treba si na to dať
 pozor v prípade, že chceme ten istý robot použiť ako kresliča
 viacerých obrázkov.
Na kreslenie robotom do obrázka je jednoduchšie je použiť
 metódu GRobot.kresliNaObrázok(Obrázok) na presmerovanie
 kreslenia robota do obrázka a kresliť robotom rovnakým spôsobom
 ako pri klasickom kreslení na plátno
 (podlahu alebo strop).
tvar – objekt typu Shape, ktorý bude
     nakreslený aktuálnym štýlom čiary a farbou/náterom kresliča alebo hlavného robotavyplň(Shape), 
kresli(Shape, GRobot), 
vyplň(Shape, GRobot)public void kresli(Shape tvar, GRobot kreslič)
Táto metóda slúži na kreslenie obrysov zadaného tvaru do
 obrázka. Metóda potrebuje na svoje správne fungovanie zadanie
 robota „kresliča,“ ktorého farbu alebo náter a štýl čiary použije
 na kreslenie. Ak je do metódy namiesto konkrétneho kresliča zadaná
 hodnota null, tak je na získanie parametrov kreslenia
 použitý hlavný robot (ak ten
 nejestvuje, kreslenie nebude vykonané).
tvar – objekt typu Shape, ktorý bude
     nakreslený aktuálnym štýlom čiary a farbou/náterom zadaného
     robota („kresliča“)kreslič – grafický robot, ktorého parametre budú použité
     na kreslenie alebo nullvyplň(Shape, GRobot), 
kresli(Shape), 
vyplň(Shape)public void vyplň(Shape tvar)
Táto metóda slúži na kreslenie vyplnených tvarov do obrázka. Ak má tento objekt obrázka nastaveného takzvaného kresliča, tak táto metóda použije na vyplnenie jeho farbu alebo náter. V opačnom prípade použije hlavný robot (ak ten nejestvuje, kreslenie nebude vykonané).
Zadaný tvar by mal byť vygenerovaný niektorým robotom (metódami
 na kreslenie tvarov), pretože obrázky majú súradnicový priestor
 prispôsobený prostrediu rámca – osi sú posunuté tak, aby robot
 v pozícii [0, 0] kreslil do stredu obrázka (toto posunutie závisí
 nielen od rozmerov obrázka, ale aj od aktuálnych rozmerov plátien)
 a y-ová súradnica je orientovaná podľa súradnicového systému Javy,
 to znamená, že je voči svetu robota zrkadlovo prevrátená.
 (O súradnicových priestoroch sa podrobnejšie píše napríklad
 v opisoch metód GRobot.cesta(), SVGpodpora.zapíš(…),
 SVGpodpora.čítaj(meno) a priebežne
 v celej dokumentácii.)
Tip: V súvislosti s generovaním tvarov a ich
 použitím by robot, ktorého chceme použiť na generovanie tvarov,
 mal mať vypnuté kreslenie
 tvarov, aby vygenerovaný tvar nenakreslil do aktívneho plátna,
 prípadne do iného obrázka, do ktorého má presmerované kreslenie.
 Automatické vypnutie alebo zapnutie kreslenia tvarov zvoleného
 grafického robota vykoná metóda kreslič
 a to podľa toho, či je jej argumentom konkrétny robot – vtedy
 mu kreslenie tvarov vypne, alebo hodnota null – vtedy
 zapne kreslenie tvarov tomu robotu, ktorý bol aktuálnym
 kresličom konkrétneho obrázka. Metóda však nezaznamenáva počet
 spustení pre roboty, takže v prípade jej náhodného spúšťania
 s rôznymi hodnotami argumentov – robotov alebo hodnôt
 null, je výsledný stav kreslenia alebo nekreslenia
 tvarov pre konkrétny robot rovný tomu stavu, do ktorého ho
 preplo posledné spustenie dotknutej metódy. Treba si na to dať
 pozor v prípade, že chceme ten istý robot použiť ako kresliča
 viacerých obrázkov.
Na kreslenie robotom do obrázka je jednoduchšie je použiť
 metódu GRobot.kresliNaObrázok(Obrázok) na presmerovanie
 kreslenia robota do obrázka a kresliť robotom rovnakým spôsobom
 ako pri klasickom kreslení na plátno
 (podlahu alebo strop).
tvar – objekt typu Shape, ktorý bude vyplnený
     aktuálnou farbou/náterom kresliča
     alebo hlavného robotakresli(Shape), 
vyplň(Shape, GRobot), 
kresli(Shape, GRobot)public void vyplň(Shape tvar, GRobot kreslič)
Táto metóda slúži na kreslenie vyplnených tvarov do obrázka.
 Metóda potrebuje na svoje správne fungovanie zadanie robota
 „kresliča,“ ktorého farbu alebo náter použije na vyplnenie
 zadaného tvaru. Ak je do metódy namiesto konkrétneho kresliča
 zadaná hodnota null, tak je na získanie parametrov
 kreslenia použitý hlavný robot
 (ak ten nejestvuje, kreslenie nebude vykonané).
tvar – objekt typu Shape, ktorý bude vyplnený
     aktuálnou farbou/náterom zadaného robota („kresliča“)kreslič – grafický robot, ktorého parametre budú použité
     na kreslenie alebo nullkresli(Shape, GRobot), 
vyplň(Shape), 
kresli(Shape)public void vyplň(Color farba)
Vyplní celú plochu obrázka zadanou farbou.
farba – objekt určujúci farbu na výplň plátnavymaž()public void vyplň(Farebnosť objekt)
Vyplní celú plochu obrázka farbou zadaného objektu.
objekt – objekt určujúci farbu na výplň plátnavymaž()public Farba vyplň(int r, int g, int b)
Vyplní obrázok farbou zadanou prostredníctvom farebných zložiek.
r – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255Farba vytvorený podľa zadaných
     zložiekvyplň(Color)public Farba vyplň(int r, int g, int b, int a)
Vyplní obrázok farbou zadanou prostredníctvom farebných zložiek a úrovne (ne)priehľadnosti.
r – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255a – úroveň (ne)priehľadnosti farby; celé číslo v rozsahu
     0 – 255 (0 – neviditeľná farba; 255 – nepriehľadná farba)Farba vytvorený podľa zadaných
     hodnôt parametrovvyplň(Color)public void vyplň(Shape tvar, String súbor)
Vyplní zadaný tvar textúrou prečítanou zo súboru s obrázkom a výsledok nakreslí do obrázka.
Zadaný tvar by mal byť generovaný niektorým robotom (metódami na kreslenie tvarov), pretože obrázky majú súradnicový priestor prispôsobený prostrediu rámca. Zvolený grafický robot by mal mať vypnuté kreslenie tvarov, aby vygenerovaný tvar nenakreslil do aktívneho plátna (prípadne do obrázka, do ktorého bolo jeho kreslenie presmerované).
Obrázok prečítaný zo súboru je chápaný ako zdroj a po
 prečítaní zostane uložený vo vnútornej pamäti sveta. Z nej
 môže byť v prípade potreby (napríklad ak sa obsah súboru na
 disku zmenil) odstránený metódou Svet.uvoľni(názovZdroja). (Táto informácia je platná pre
 všetky metódy pracujúce s obrázkami alebo zvukmi, ktoré
 prijímajú názov súboru ako parameter.)
Poznámka: Parametre textúry sa dajú
 ovplyvňovať špeciálnymi príkazmi. Súvisí s nimi i predvolené
 správanie príkazov vypĺňania. Predvolený bod začiatku vypĺňania
 dlaždicami sa nachádza v strede plátna alebo vypĺňaného
 obrázka. Pozrite si aj opis metódy
 posunutieVýplne,
 kde nájdete príklad použitia a odkazy na metódy
 upravujúce ďalšie parametre obrázkových výplní.
tvar – objekt typu Shape, ktorý bude vyplnený
     textúrousúbor – názov súboru s obrázkom textúryGRobotException – ak súbor s obrázkom nebol nájdený
     (identifikátor imageNotFound)Svet.priečinokObrázkov(String)public void vyplň(Shape tvar, Image výplň)
Vyplní zadaný tvar textúrou určenou zadaným obrázkom a výsledok nakreslí do tohto obrázka. Ako textúra by nemal byť použitý ten obrázok, do ktorého je vypĺňaný tvar kreslený.
Zadaný tvar by mal byť generovaný niektorým robotom (metódami na kreslenie tvarov), pretože obrázky majú súradnicový priestor prispôsobený prostrediu rámca. Zvolený grafický robot by mal mať vypnuté kreslenie tvarov, aby vygenerovaný tvar nenakreslil do aktívneho plátna (prípadne do obrázka, do ktorého bolo jeho kreslenie presmerované).
Poznámka: Parametre textúry sa dajú
 ovplyvňovať špeciálnymi príkazmi. Súvisí s nimi i predvolené
 správanie príkazov vypĺňania. Predvolený bod začiatku vypĺňania
 dlaždicami sa nachádza v strede plátna alebo vypĺňaného
 obrázka. Pozrite si aj opis metódy
 posunutieVýplne,
 kde nájdete príklad použitia a odkazy na metódy
 upravujúce ďalšie parametre obrázkových výplní.
tvar – objekt typu Shape, ktorý bude vyplnený
     textúrouvýplň – obrázok s textúroupublic void kresli(String súbor)
Nakreslí do stredu tohto obrázka obrázok zo zadaného súboru.
Obrázok prečítaný zo súboru je chápaný ako zdroj a po
 prečítaní zostane uložený vo vnútornej pamäti sveta. Z nej
 môže byť v prípade potreby (napríklad ak sa obsah súboru na
 disku zmenil) odstránený metódou Svet.uvoľni(názovZdroja). (Táto informácia je platná pre
 všetky metódy pracujúce s obrázkami alebo zvukmi, ktoré
 prijímajú názov súboru ako parameter.)
súbor – názov súboru s obrázkomSvet.priečinokObrázkov(String)public void kresli(double x,
                   double y,
                   String súbor)
Nakreslí do tohto obrázka obrázok zo zadaného súboru, ktorý bude posunutý od stredu o zadané súradnice v horizontálnom a vertikálnom smere.
Obrázok prečítaný zo súboru je chápaný ako zdroj a po
 prečítaní zostane uložený vo vnútornej pamäti sveta. Z nej
 môže byť v prípade potreby (napríklad ak sa obsah súboru na
 disku zmenil) odstránený metódou Svet.uvoľni(názovZdroja). (Táto informácia je platná pre
 všetky metódy pracujúce s obrázkami alebo zvukmi, ktoré
 prijímajú názov súboru ako parameter.)
x – posun od stredu v horizontálnom smerey – posun od stredu vo vertikálnom smeresúbor – názov súboru s obrázkomSvet.priečinokObrázkov(String)public void kresli(Poloha objekt, String súbor)
Nakreslí do tohto obrázka obrázok zo zadaného súboru, obrázok bude posunutý o súradnice určené polohou zadaného objektu.
objekt – objekt, ktorého súradnice určia posunutie obrázkasúbor – názov súboru s obrázkomSvet.priečinokObrázkov(String)public void kresli(Image obrázok)
Nakreslí do stredu tohto obrázka zadaný obrázok.
obrázok – obrázok, ktorý má byť nakreslenýpublic void kresli(double x,
                   double y,
                   Image obrázok)
Nakreslí do tohto obrázka zadaný obrázok, pričom ho posunie od stredu o zadané súradnice v horizontálnom a vertikálnom smere.
x – posun od stredu v horizontálnom smerey – posun od stredu vo vertikálnom smereobrázok – obrázok, ktorý má byť nakreslenýpublic void kresli(Poloha objekt, Image obrázok)
Nakreslí do tohto obrázka zadaný obrázok, obrázok bude posunutý o súradnice určené polohou zadaného objektu.
objekt – objekt, ktorého súradnice určia posunutie obrázkaobrázok – obrázok, ktorý má byť nakreslenýpublic void vyplň(String súbor)
Vyplní obrázok zadanou textúrou. Textúra je súbor s obrázkom, ktorý bude použitý na dlaždicové vyplnenie celej plochy tohto obrázka.
Obrázok prečítaný zo súboru je chápaný ako zdroj a po
 prečítaní zostane uložený vo vnútornej pamäti sveta. Z nej
 môže byť v prípade potreby (napríklad ak sa obsah súboru na
 disku zmenil) odstránený metódou Svet.uvoľni(názovZdroja). (Táto informácia je platná pre
 všetky metódy pracujúce s obrázkami alebo zvukmi, ktoré
 prijímajú názov súboru ako parameter.)
Poznámka: Parametre textúry sa dajú
 ovplyvňovať špeciálnymi príkazmi. Súvisí s nimi i predvolené
 správanie príkazov vypĺňania. Predvolený bod začiatku vypĺňania
 dlaždicami sa nachádza v strede plátna alebo vypĺňaného
 obrázka. Pozrite si aj opis metódy
 posunutieVýplne,
 kde nájdete príklad použitia a odkazy na metódy
 upravujúce ďalšie parametre obrázkových výplní.
súbor – názov súboru s obrázkom textúryGRobotException – ak súbor s obrázkom nebol nájdený
     (identifikátor imageNotFound)vyplň(Color), 
Svet.priečinokObrázkov(String)public void vyplň(Image výplň)
Vyplní obrázok zadanou textúrou. Textúra je iný obrázok (objekt typu Image
 alebo odvodený), ktorý bude použitý na dlaždicové vyplnenie celej
 plochy tohto obrázka.
Poznámka: Parametre textúry sa dajú
 ovplyvňovať špeciálnymi príkazmi. Súvisí s nimi i predvolené
 správanie príkazov vypĺňania. Predvolený bod začiatku vypĺňania
 dlaždicami sa nachádza v strede plátna alebo vypĺňaného
 obrázka. Pozrite si aj opis metódy
 posunutieVýplne,
 kde nájdete príklad použitia a odkazy na metódy
 upravujúce ďalšie parametre obrázkových výplní.
výplň – obrázok s textúrouvyplň(Color)public void vylejFarbu(double x,
                       double y,
                       Color farba)
Vyleje do zadaného bodu do obrázka farbu, ktorá sa odtiaľ
 rozšíri po okraje tej časti kresby v obrázku, v ktorej sa zadaný
 bod nachádza. Na ďalšie informácie pozri metódu Plátno.vylejFarbu(double, double, Color). Správanie
 tejto metódy je jej veľmi podobné.
x – x-ová súradnica počiatočného boduy – y-ová súradnica počiatočného bodufarba – objekt určujúci farbu výplnepublic void vylejFarbu(double x,
                       double y,
                       Farebnosť objekt)
Vyleje do zadaného bodu do obrázka farbu (určenú objektom),
 ktorá sa odtiaľ rozšíri po okraje tej časti kresby v obrázku,
 v ktorej sa zadaný bod nachádza. Na ďalšie informácie pozri
 metódu Plátno.vylejFarbu(double, double, Color).
 Správanie tejto metódy je jej veľmi podobné.
x – x-ová súradnica počiatočného boduy – y-ová súradnica počiatočného boduobjekt – objekt určujúci farbu výplnepublic Farba vylejFarbu(double x, double y, int r, int g, int b)
Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek, ktorá sa určeného bodu rozšíri po okraje
 okolitej kresby. Na ďalšie informácie pozri metódu vylejFarbu(double x, double y, Color farba). Správanie tejto
 metódy je odvodené od nej.
x – x-ová súradnica počiatočného boduy – y-ová súradnica počiatočného bodur – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255Farba vytvorený podľa zadaných
     zložiekvylejFarbu(double, double, Color)public Farba vylejFarbu(double x, double y, int r, int g, int b, int a)
Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek a úrovne (ne)priehľadnosti, pričom farba sa
 z určeného bodu rozšíri k okrajom okolitej kresby. Na ďalšie
 informácie pozri metódu vylejFarbu(double x, double y,
 Color farba). Správanie tejto metódy je odvodené od nej.
x – x-ová súradnica počiatočného boduy – y-ová súradnica počiatočného bodur – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255a – úroveň (ne)priehľadnosti farby; celé číslo v rozsahu
     0 – 255 (0 – neviditeľná farba; 255 – nepriehľadná farba)Farba vytvorený podľa zadaných
     hodnôt parametrovvylejFarbu(double, double, Color)public void vylejFarbu(Poloha bod, Color farba)
Vyleje do zadaného bodu do obrázka farbu, ktorá sa odtiaľ rozšíri
 po okraje tej časti kresby v obrázku, v ktorej sa zadaný bod
 nachádza. Na ďalšie informácie pozri metódu Plátno.vylejFarbu(double, double, Color). Správanie tejto
 metódy je jej veľmi podobné.
bod – súradnice počiatočného bodufarba – objekt určujúci farbu výplnepublic void vylejFarbu(Poloha bod, Farebnosť objekt)
Vyleje do zadaného bodu do obrázka farbu (určenú objektom), ktorá
 sa odtiaľ rozšíri po okraje tej časti kresby v obrázku, v ktorej
 sa zadaný bod nachádza. Na ďalšie informácie pozri metódu Plátno.vylejFarbu(double, double, Color). Správanie tejto
 metódy je jej veľmi podobné.
bod – súradnice počiatočného boduobjekt – objekt určujúci farbu výplnepublic Farba vylejFarbu(Poloha bod, int r, int g, int b)
Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek, ktorá sa určeného bodu rozšíri po okraje
 okolitej kresby. Na ďalšie informácie pozri metódu vylejFarbu(double x, double y, Color farba). Správanie tejto
 metódy je odvodené od nej.
bod – súradnice počiatočného bodur – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255Farba vytvorený podľa zadaných
     zložiekvylejFarbu(Poloha, Color)public Farba vylejFarbu(Poloha bod, int r, int g, int b, int a)
Vyleje do zadaného bodu do obrázka farbu zadanú prostredníctvom
 farebných zložiek a úrovne (ne)priehľadnosti, pričom farba sa
 z určeného bodu rozšíri k okrajom okolitej kresby. Na ďalšie
 informácie pozri metódu vylejFarbu(double x, double y,
 Color farba). Správanie tejto metódy je odvodené od nej.
bod – súradnice počiatočného bodur – červená zložka farby; celé číslo v rozsahu 0 – 255g – zelená zložka farby; celé číslo v rozsahu 0 – 255b – modrá zložka farby; celé číslo v rozsahu 0 – 255a – úroveň (ne)priehľadnosti farby; celé číslo v rozsahu
     0 – 255 (0 – neviditeľná farba; 255 – nepriehľadná farba)Farba vytvorený podľa zadaných
     hodnôt parametrovvylejFarbu(Poloha, Color)public void vylejFarbu(GRobot ktorý)
Zadaný robot vyleje na svojej pozícii do obrázka svoju aktuálnu
 farbu, ktorá sa odtiaľ rozšíri po
 okraje okolitej kresby. Na ďalšie informácie pozri metódu vylejFarbu(double x, double y, Color farba). Správanie tejto
 metódy je odvodené od nej.
ktorý – robot, ktorého poloha a farba sú použité na výplňpublic void negatív()
Pretvorí tento obrázok na svoj farebný negatív.
public void negativ()
 Alias pre
 Alias pre negatív.
public void bledší(double faktor)
Zvýši úroveň svetlosti tohto obrázka. Metóda používa rovnaký
 spôsob zosvetlenia ako metóda Farba.svetlejšia(double).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
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šiatmavší(double)public void bledsi(double faktor)
 Alias pre
 Alias pre bledší.
public void svetlejší(double faktor)
 Alias pre
 Alias pre bledší.
public void svetlejsi(double faktor)
 Alias pre
 Alias pre bledší.
public void tmavší(double faktor)
Zníži úroveň svetlosti tohto obrázka. Metóda používa rovnaký
 spôsob stmavenia ako metóda Farba.tmavšia(double).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
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šiabledší(double)public void tmavsi(double faktor)
 Alias pre
 Alias pre tmavší.
public void bledší()
Zvýši úroveň svetlosti tohto obrázka. Metóda používa rovnaký
 spôsob zosvetlenia ako metóda Farba.svetlejšia().
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
Poznámka: Metóda používa predvolenú
 hodnotu faktora zosvetlenia 0.7. Pozri aj bledší(faktor).
tmavší()public void bledsi()
 Alias pre
 Alias pre bledší.
public void svetlejší()
 Alias pre
 Alias pre bledší.
public void svetlejsi()
 Alias pre
 Alias pre bledší.
public void tmavší()
Zníži úroveň svetlosti tohto obrázka. Metóda používa rovnaký
 spôsob stmavenia ako metóda Farba.tmavšia().
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
Poznámka: Metóda používa predvolenú
 hodnotu faktora stmavenia 0.7. Pozri aj tmavší(faktor).
bledší()public void tmavsi()
 Alias pre
 Alias pre tmavší.
public void čiernobiely()
Upraví tento obrázok do odtieňov šedej s použitím priemerovania farebných zložiek. Je to rýchla metóda, ale výsledné odtiene nie sú v súlade s modelom ľudského vnímania farieb. Pozri aj čiernobiely(vyvážiťZložky).
Porovnanie rôznych metód prevodu do odtieňov šedej je v opise
 metódy čiernobiely(vyvážiťZložky).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
public void ciernobiely()
 Alias pre
 Alias pre čiernobiely.
public void odtieneŠedej()
 Alias pre
 Alias pre čiernobiely.
public void odtieneSedej()
 Alias pre
 Alias pre čiernobiely.
public void čiernobiely(boolean vyvážiťZložky)
Upraví tento obrázok do odtieňov šedej s možnosťou určenia predvoleného vyváženia farebných zložiek – podľa modelu ľudského vnímania farieb.
Ak je parameter vyvážiťZložky rovný true,
 tak bude použité predvolené vyváženie zložiek, inak bude použité
 priemerovanie, rovnako ako pri metóde čiernobiely().
Predvolené hodnoty vyváženia sú nasledujúce: 29,9 % červenej,
 58,7 % zelenej a 11,4 % modrej. Ak chcete použiť vlastné váhy,
 tak použite metódu čiernobiely(váhaČervenej, váhaZelenej, váhaModrej).

 
Porovnanie rôznych metód
 prevodu do odtieňov šedej.
Obrázok vyššie porovnáva rôzne metódy prevodu obrázka do
 odtieňov šedej. Vľavo hore je pôvodný farebný obrázok, vedľa neho
 je obrázok prevedený metódou čiernobiely()
 (priemerovanie zložiek), vľavo dole je verzia prevedená pomocou
 tejto metódy s parametrom vyvážiťZložky rovným
 true a vpravo dole je použitá metóda čiernobiely(váhaČervenej,
 váhaZelenej, váhaModrej) s váhami nastavenými na hodnoty:
 0.0 (červená), 0.3 (zelená) a 0.5
 (modrá). To znamená, že pôvodná červená zložka je z odtieňov
 elimiovaná a súčet zostávajúcich dvoch nie
 je rovný 100 % (0,3 = 30 %; 0,5 = 50 %; čo je dohromady len 80 %).
 Z toho je jasné, že výsledok bude tmavší. Obrázok vpravo dole
 skutočne pôsobí akoby bol snímaný v odlišnom spektre
 elektromagnetického vlnenia (čo je, samozrejme, falošný dojem,
 pretože chýbajúcu informáciu nemôžeme od obrazu doplniť žiadnym
 prevodom, ale môžeme aspoň nasimulovať taký efekt).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
Obrázok nižšie ukazuje porovnanie metódy priemerovania a automatického vyváženia zložiek na staršej verzii predvolenej palety preddefinovaných farieb.
|  |  |  | 
| a) predvolená paleta | b) použitie metódy priemerovania | c) použitie metódy vyváženia zložiek | 
| Porovnanie rôznych metód prevodu do odtieňov šedej. | ||
Použitý zdroj:
vyvážiťZložky – pravdivostná hodnota určujúca, či majú byť
     odtiene vypočítané algoritmom vyvažovania farebných zložiekčiernobiely(), 
čiernobiely(double, double, double), 
monochromatický(Color), 
farebnýFilter(Color), 
farebnéTienidlo(Color)public void ciernobiely(boolean vyvážiťZložky)
 Alias pre
 Alias pre čiernobiely.
public void odtieneŠedej(boolean vyvážiťZložky)
 Alias pre
 Alias pre čiernobiely.
public void odtieneSedej(boolean vyvážiťZložky)
 Alias pre
 Alias pre čiernobiely.
public void čiernobiely(double váhaČervenej,
                        double váhaZelenej,
                        double váhaModrej)
Upraví tento obrázok do odtieňov šedej s možnosťou určenia vlastného vyváženia jednotlivých farebných zložiek. Táto metóda umožňuje úplne odfiltrovať alebo preexponovať niektorú farebnú zložku.
Porovnanie rôznych metód prevodu do odtieňov šedej je v opise
 metódy čiernobiely(vyvážiťZložky).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
váhaČervenej – hodnota určujúca mieru vyváženia červenej
     farebnej zložkyváhaZelenej – hodnota určujúca mieru vyváženia zelenej
     farebnej zložkyváhaModrej – hodnota určujúca mieru vyváženia modrej
     farebnej zložkyčiernobiely(), 
čiernobiely(boolean), 
monochromatický(Color), 
farebnýFilter(Color), 
farebnéTienidlo(Color)public void ciernobiely(double váhaČervenej,
                        double váhaZelenej,
                        double váhaModrej)
 Alias pre
 Alias pre čiernobiely.
public void odtieneŠedej(double váhaČervenej,
                         double váhaZelenej,
                         double váhaModrej)
 Alias pre
 Alias pre čiernobiely.
public void odtieneSedej(double váhaČervenej,
                         double váhaZelenej,
                         double váhaModrej)
 Alias pre
 Alias pre čiernobiely.
public void monochromatický(Color farba)
Upraví tento obrázok do odtieňov zadanej farby. Monochromatická zložka, čiže zložka jasu (odtiene šedej), bude násobená farebnými zložkami zadanej farby. Výsledkom bude obrázok v odtieňoch zadanej farby. Ak zadáme čiernu farbu, získame čierny obrázok. Ak zadáme bielu, dostaneme čiernobiely obrázok. Ľubovoľná iná farba zafarbí obrázok do jej odtieňov.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 v opise metódy farebnéTienidlo(farba).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
farba – farba, do odtieňov ktorej bude obrázok prevedenýčiernobiely(), 
čiernobiely(boolean), 
čiernobiely(double, double, double), 
farebnýFilter(Color), 
farebnéTienidlo(Color)public void monochromaticky(Color farba)
 Alias pre
 Alias pre monochromatický.
public void jednofarebný(Color farba)
 Alias pre
 Alias pre monochromatický.
public void jednofarebny(Color farba)
 Alias pre
 Alias pre monochromatický.
public void farebnýFilter(Color farba)
Použije na tento obrázok zadaný farebný filter. Obrázok nadobudne vzhľad, ako keby sme sa na neho pozerali cez filter prepúšťajúci len zadanú farbu.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 v opise metódy farebnéTienidlo(farba).
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
farba – farba filtračiernobiely(), 
čiernobiely(boolean), 
čiernobiely(double, double, double), 
monochromatický(Color), 
farebnéTienidlo(Color)public void farebnyFilter(Color farba)
 Alias pre
 Alias pre farebnýFilter.
public void farebnéTienidlo(Color farba)
Použije na tento obrázok zadané farebné tienidlo. Obrázok nadobudne vzhľad, ako keby sme sa na neho pozerali cez tienidlo, ktoré má zadanú farbu. Všetky farby v obrázku (ich zložky) budú posunuté smerom k zadanej farbe.
Poznámka: Metóda zachováva aj kanál priehľadnosti obrázka.
Nasledujúci obrázok zhromažďuje a porovnáva rôzne efekty použité na tú istú predlohu:

 
Porovnanie
 rôznych efekty aplikovaných na ten istý obrázok.
V bloku A je pôvodný obrázok. Blok B obsahuje použitie efektu posterizácie s a bez algoritmu difúzie chyby (prvý riadok bloku je bez difúzie chyby, druhý s ňou). Stĺpce bloku sú posterizované postupne s použitím troch farieb (červenej, zelenej a modrej), šiestich farieb (pribudla tyrkysová, purpurová a žltá) a staršej verzie predvolenej palety preddefinovaných farieb.
V bloku C sú pod sebou použité efekty monochromatickosti, farebného filtra a farebného tienidla s červenou farbou. Blok D obsahuje vedľa seba použitie tých istých efektov so zelenou farbou a blok E s modrou farbou.
farba – farba tienidlačiernobiely(), 
čiernobiely(boolean), 
čiernobiely(double, double, double), 
monochromatický(Color), 
farebnýFilter(Color)public void farebneTienidlo(Color farba)
 Alias pre
 Alias pre farebnéTienidlo.
public void monochromatický(Farebnosť objekt)
Upraví tento obrázok do odtieňov farby zadaného objektu. Monochromatická zložka, čiže zložka jasu (odtiene šedej), bude násobená farebnými zložkami farby zadaného objektu. Výsledkom bude obrázok v odtieňoch jeho farby. Ak má objekt čiernu farbu, získame čierny obrázok. Ak má objekt bielu farbu, dostaneme čiernobiely obrázok. Ľubovoľná iná farba objektu zafarbí obrázok do jej odtieňov.
objekt – objekt, do odtieňov farby ktorého bude obrázok
     prevedenýpublic void monochromaticky(Farebnosť objekt)
 Alias pre
 Alias pre monochromatický.
public void jednofarebný(Farebnosť objekt)
 Alias pre
 Alias pre monochromatický.
public void jednofarebny(Farebnosť objekt)
 Alias pre
 Alias pre monochromatický.
public void farebnýFilter(Farebnosť objekt)
Použije na tento obrázok farebný filter podľa farby zadaného objektu. Obrázok nadobudne vzhľad, ako keby sme sa na neho pozerali cez sklo farby zadaného objektu.
objekt – objekt určujúci farbu filtrapublic void farebnyFilter(Farebnosť objekt)
 Alias pre
 Alias pre farebnýFilter.
public void zrušPriehľadnosť()
Zruší priehľadnosť všetkých bodov v obrázku.
Pozor! Volanie tejto metódy neovplyvní
 celkovú priehľadnosť obrázka ovplyvňovanú metódami
 priehľadnosť(priehľadnosť),
 priehľadnosť(objekt)
 a upravPriehľadnosť(zmena).
Poznámka: Princíp toho, ako funguje
 zrušenie priehľadnosti, je ukázaný v opise rovnomennej metódy
 triedy Plátno – zrušPriehľadnosť.
public void zrusPriehladnost()
 Alias pre
 Alias pre zrušPriehľadnosť.
public boolean použiMasku(BufferedImage maska)
Použije na tento obrázok masku vyrobenú zo zadaného obrázka. Maska musí mať rovnaký rozmer ako obrázok, inak operácia zlyhá. Maska je vyrobená z kombinácie intenzity farieb a priehľadnosti jednotlivých bodov zadaného obrázka. Čím je bod masky tmavší, tým bude viditeľnejší, čím svetlejší, tým menej viditeľný. Jas je korigovaný aj zložkami priehľadnosti obidvoch bodov, teda ako pôvodného bodu na obrázku, tak aj bodu prevzatého z masky. Ak je súčin ich zložiek priehľadnosti rovný nule, tak bude výsledný bod neviditeľný. Viditeľnosť bodov v ostatných prípadoch záleží na výsledku výpočtov algoritmu. Napríklad úplne čierne úplne nepriehľadné body masky neovplyvnia priehľadnosť bodov na obrázku.
Upozornenie: Maska nie je pri
 exporte kreslenia do inštancie
 SVGPodpora použitá priamo, pretože pracuje
 s rastrom obrázkov/plátien. Ak chcete do SVG podpory exportovať vlastnú masku, použite
 kombináciu vlastnej
 definície (vložením záznamu <mask
 id="ID masky">…</mask>) a atribútu
 mask="url(#ID masky)". Podrobnosti o SVG
 maskách nájdete napríklad tu:
Clipping and masking –
 SVG : Scalable Vector Graphics | MDN. Mozilla Developer
 Network, developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Clipping_and_masking#masking.
 Naposledy pristúpené: 28. januára 2023.
Môžete tiež použiť
 orezávanie – pozri napríklad
 tu.
maska – obrázok, ktorý bude použitý ako maskatrue ak bola operácia úspešnápublic boolean pouziMasku(BufferedImage maska)
 Alias pre
 Alias pre použiMasku.
public boolean vymažKresbu(BufferedImage kresba)
Použije na tento obrázok filter vyrobený zo zložky jasu kresby zadaného/predloženého obrázka. Zložka priehľadnosti bodov na obrázku, ktorý poslúži ako predloha pre filter nie je braná do úvahy. Hodnoty farebných zložiek úplne priehľadných (neviditeľných) bodov sú nepredvídateľné, preto by mal byť obrázok predlohy filtra úplne pokrytý nepriehľadnou kresbou. Svetlé/biele body na obrázku predlohy spôsobia vymazanie bodov na tomto obrázku (nastavenie hodnôt všetkých ich farebných zložiek a priehľadnosti na nulu). Tmavé/čierne body na predloženom obrázku nespôsobia na tomto obrázku žiadnu zmenu priehľadnosti. (Ostatné odtiene šedej a farebné body vo filtri spôsobia nastavenie úrovne priehľadnosti bodov obrázka na hodnotu jasu vypočítanú z priemeru farebných zložiek bodov filtra.) Obrázok s predlohou musí mať rovnaký rozmer ako tento obrázok, inak operácia zlyhá.
kresba – obrázok, ktorý bude použitý ako predloha pre filtertrue ak bola operácia úspešnápublic boolean vymazKresbu(BufferedImage kresba)
 Alias pre
 Alias pre vymažKresbu.
public boolean vyrobMasku(BufferedImage nováMaska)
Vyrobí z tohto obrázka do zadaného obrázka masku priehľadnosti.
 Zadaný obrázok musí mať rovnakú veľkosť ako tento obrázok, inak
 operácia zlyhá. Vyrobená maska bude obsahovať čierne body rôznej
 priehľadnosti podľa priehľadnosti bodov pôvodného obrázka. Pôvodný
 obsah zadaného obrázka (argumentu nováMaska) bude
 nahradený.
nováMaska – obrázok, do ktorého bude nová maska vyrobená
     (pôvodný obsah obrázka bude nahradený maskou)true ak bola operácia úspešnápublic BufferedImage vyrobMasku()
Vyrobí z tohto obrázka masku priehľadnosti. Metóda vytvorí masku
 do nového obrázka (typu BufferedImage),
 ktorý sama automaticky vytvorí a vráti ako svoj výsledok
 (návratovú hodnotu). Nová maska bude obsahovať čierne body rôznej
 priehľadnosti vychádzajúc z priehľadnosti bodov tohto obrázka.
public void rozmaž(int opakovanie,
                   int rozsah,
                   Color pozadie)
Rozmaže grafiku obrázka. Pre priehľadné (neviditeľné) body je pri procese rozmazania použitá zadaná farba pozadia. Opakovanie a rozsah majú z vizuálneho hľadiska podobný dopad na výsledný efekt rozmazania, ale matice lineárneho kruhového rozmazania sú vygenerované len do úrovne rozsahu 5 (vrátane). Pri zadaní vyššej hodnoty rozsahu získame rovnaký efekt ako keby sme zadali hodnotu 5. Ak chceme dosiahnuť vyššiu mieru rozmazania, musíme zvýšiť počet opakovaní procesu rozmazania (argument opakovanie). Čím vyššie sú hodnoty opakovania a rozsahu, tým vyššie sú nároky metódy na výpočtový výkon.
opakovanie – počet opakovaní rozmazaniarozsah – rozsah rozmazania; reálny efekt dosiahneme len
     v rozsahu hodnôt 1 – 5, vyššie čísla sú zaokrúhlené na 5,
     nižšie nespôsobia žiadne rozmazaniepozadie – farba použitá pri procese rozmazania pre
     priehľadné bodypublic void rozmaž(int opakovanie,
                   Color pozadie)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, 1, pozadie);
opakovanie – počet opakovaní rozmazaniapozadie – farba použitá pre neviditeľné bodypublic void rozmaž(Color pozadie)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(1, 1, pozadie);
pozadie – farba použitá pre neviditeľné bodypublic void rozmaž(int opakovanie,
                   int rozsah,
                   Farebnosť pozadie)
Rozmaže grafiku obrázka. Pre priehľadné (neviditeľné) body je pri procese rozmazania použitá zadaná farba pozadia. Opakovanie a rozsah majú z vizuálneho hľadiska podobný dopad na výsledný efekt rozmazania, ale matice lineárneho kruhového rozmazania sú vygenerované len do úrovne rozsahu 5 (vrátane). Pri zadaní vyššej hodnoty rozsahu získame rovnaký efekt ako keby sme zadali hodnotu 5. Ak chceme dosiahnuť vyššiu mieru rozmazania, musíme zvýšiť počet opakovaní procesu rozmazania (argument opakovanie). Čím vyššie sú hodnoty opakovania a rozsahu, tým vyššie sú nároky metódy na výpočtový výkon.
opakovanie – počet opakovaní rozmazaniarozsah – rozsah rozmazania; reálny efekt dosiahneme len
     v rozsahu hodnôt 1 – 5, vyššie čísla sú zaokrúhlené na 5,
     nižšie nespôsobia žiadne rozmazaniepozadie – farba použitá pri procese rozmazania pre
     priehľadné bodypublic void rozmaž(int opakovanie,
                   Farebnosť pozadie)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, 1, pozadie);
opakovanie – počet opakovaní rozmazaniapozadie – farba použitá pre neviditeľné bodypublic void rozmaž(Farebnosť pozadie)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(1, 1, pozadie);
pozadie – farba použitá pre neviditeľné bodypublic void rozmaž(int opakovanie,
                   int rozsah)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, rozsah, Svet.farbaPozadia());
 
 To znamená, že pre priehľadné (neviditeľné) body je pri procese
 rozmazania použitá aktuálna farba pozadia sveta (pozri: Svet.farbaPozadia(farba)).
opakovanie – počet opakovaní rozmazaniarozsah – rozsah rozmazaniapublic void rozmaz(int opakovanie,
                   int rozsah)
 Alias pre
 Alias pre rozmaž.
public void rozmaž(int opakovanie)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, 1, Svet.farbaPozadia());
 
 To znamená, že pre priehľadné (neviditeľné) body je pri procese
 rozmazania použitá aktuálna farba pozadia sveta (pozri: Svet.farbaPozadia(farba)).
opakovanie – počet opakovaní rozmazaniapublic void rozmaz(int opakovanie)
 Alias pre
 Alias pre rozmaž.
public void rozmaž()
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(1, 1, Svet.farbaPozadia());
 
 To znamená, že pre priehľadné (neviditeľné) body je pri procese
 rozmazania použitá aktuálna farba pozadia sveta (pozri: Svet.farbaPozadia(farba)).
public void rozmaz()
 Alias pre
 Alias pre rozmaž.
public void rozmaž(int opakovanie,
                   int rozsah,
                   int bgr,
                   int bgg,
                   int bgb)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, rozsah, new Farba(bgr, bgg, bgb));
opakovanie – počet opakovaní rozmazaniarozsah – rozsah rozmazaniabgr – červený komponent pozadiabgg – zelený komponent pozadiabgb – modrý komponent pozadiapublic void rozmaz(int opakovanie,
                   int rozsah,
                   int bgr,
                   int bgg,
                   int bgb)
 Alias pre
 Alias pre rozmaž.
public void rozmaž(int opakovanie,
                   int bgr,
                   int bgg,
                   int bgb)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(opakovanie, 1, new Farba(bgr, bgg, bgb));
opakovanie – počet opakovaní rozmazaniabgr – červený komponent pozadiabgg – zelený komponent pozadiabgb – modrý komponent pozadiapublic void rozmaz(int opakovanie,
                   int bgr,
                   int bgg,
                   int bgb)
 Alias pre
 Alias pre rozmaž.
public void rozmaž(int bgr,
                   int bgg,
                   int bgb)
Rozmaže grafiku obrázka. Dosiahneme rovnaký efekt, ako keby sme
 volali metódu: rozmaž(1, 1, new Farba(bgr, bgg, bgb));
bgr – červený komponent pozadiabgg – zelený komponent pozadiabgb – modrý komponent pozadiapublic void rozmaz(int bgr,
                   int bgg,
                   int bgb)
 Alias pre
 Alias pre rozmaž.
public void upravJasKontrast(double jas,
                             double kontrast)
Upraví parametre jasu a kontrastu celého obrázka. Oba parametre môžu nadobúdať kladné aj záporné hodnoty. Na obrázkoch nižšie je vidno, ako sa zmení obrázok pri rôznych hodnotách týchto parametrov.

 
Zdrojový obrázok na ukážku úpravy
 jasu a kontrastu
(verzia v mierne vyššom rozlíšení
 je dostupná na prevzatie tu).
| -240,0 | -160,0 | -80,0 | 0,0 | 80,0 | 160,0 | 240,0 | ||
| -240,0 |  | |||||||
| -160,0 | ||||||||
| -80,0 | ||||||||
| 0,0 | ||||||||
| 80,0 | ||||||||
| 160,0 | ||||||||
| 240,0 | ||||||||
| rôzne úrovne jasu | ||||||||
Ukážka rôznych úrovní jasu a kontrastu.

 
Zdrojový obrázok na ukážku úpravy jasu
 a kontrastu
(verzia v mierne vyššom rozlíšení je
 dostupná na prevzatie tu).
| -240,0 | -160,0 | -80,0 | 0,0 | 80,0 | 160,0 | 240,0 | ||
| -240,0 |  | |||||||
| -160,0 | ||||||||
| -80,0 | ||||||||
| 0,0 | ||||||||
| 80,0 | ||||||||
| 160,0 | ||||||||
| 240,0 | ||||||||
| rôzne úrovne jasu | ||||||||
Ukážka rôznych úrovní jasu a kontrastu.
Poznámka: Úplne priehľadné (neviditeľné)
 body nie sú spracované. Tento efekt ukazuje nasledujúci obrázok,
 na ktorého vytvorenie bola použitá aj metóda zrušPriehľadnosť.
|  |  |  | 
| a) | b) | c) | 
Ukážka vplyvu metódy upravJasKontrast na priehľadné
 časti obrázka:
a) vygenerovaný obrázok s priehľadnými
 časťami,
b) obrázok po volaní metód upravJasKontrast(-240, 160)
 a zrušPriehľadnosť(),
c)
 zvýraznenie pôvodne priehľadných častí, na ktoré nemalo volanie
 metódy upravJasKontrast
 žiadny vplyv.
Použité zdroje:
jas – reálnočíselná hodnota určujúca mieru zmeny jasu obrázka;
     relevantné sú hodnoty v rozmedzí od −255.0 do 255.0kontrast – reálnočíselná hodnota určujúca mieru zmeny kontrastu
     obrázka; relevantné sú hodnoty v rozmedzí od −255.0 do 255.0public void gamaKorekcia(double γ)
Upraví intenzitu farieb obrázka na základe hodnoty parametra gama (γ). Gama vyjadruje vzťah medzi vstupnou a výstupnou hodnotou intenzity farby, ktorý je najlepšie viditeľný na nasledujúcom grafe:
 
Graf vyjadrujúci
 zmenu vstupnej veličiny na výstupnú pri rôznych hodnotách
 faktora gama (γ).
Poznámka: Algoritmus môže principiálne prijímať akúkoľvek hodnotu γ, okrem nuly, ale tento prípad je v metóde ošetrený zadaním paušálnej hodnoty korekcie 65 025, takže aj v tom prípade produkuje metóda relatívne korektný výsledok. Záporné hodnoty sú tiež mimo rozsahu korektných hodnôt, ale metóda ich nefiltruje, pretože zadaním zápornej hodnoty sa dá získať síce nesprávny, ale zaujímavý výsledok. Odporúčaný rozsah hodnôt sa nachádza v rozmedzí 0,01 – 7,99.
Nasledujúci obrázok ukazuje vplyv rôznych úrovní gama korekcie
 na dvoch obrázkoch, ktoré sú k dispozícii na prevzatie v opise
 metódy upravJasKontrast.

 
Úprava dvoch obrázkov gama
 korekciou s hodnotami (zľava): 0.01, 0.25,
 0.5, 1.0, 2.0, 4.0
 a 7.99.
Poznámka: Úplne priehľadné (neviditeľné) body nie sú spracované. Nasledujúci príklad vygeneruje kresbu s bublinkami, na ktorej je táto vlastnosť ukázaná.
Príklad:
Tento príklad vygeneruje obrázok s bublinkami, ktoré sa
 vzájomne prekrývajú. Prekrývanie je riešené vymazaním
 (spriehľadnením) tej časti kresby, ktorú bude tvoriť nasledujúca
 nakreslená bublinka. Následne je na kresbu použitá gama korekcia
 a metóda zrušPriehľadnosť(), čím sa
 ukážu aj pôvodne spriehľadnené časti kresby, na ktoré nemala
 gama korekcia vplyv.
// Generovanie náhodných bubliniek.Obrázokbublinky =newObrázok(400,400);Obrázokguma =newObrázok(400,400);hrúbkaČiary(5.5);for(inti =0; i <100; ++i) {náhodnáPoloha();smer(90);longpolomer =Svet.náhodnéCeléČíslo(30,50); guma.vyplň(čierna);farba(biela);kresliDoObrázka(guma);kruh(polomer); bublinky.vymažKresbu(guma);switch(i %3) {case0:farba(svetlotyrkysová);break;case1:farba(tyrkysová);break;case2:farba(tmavotyrkysová); }kresliDoObrázka(bublinky);kružnica(polomer);preskočVľavo(polomer *0.7);choďPoOblúku(90, polomer *0.7); }// Úprava obrázka s použitím gama korekcie a zrušenie priehľadnosti// bodov v obrázku.bublinky.gamaKorekcia(0.1); bublinky.zrušPriehľadnosť();
Výsledok:
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 gama korekciou (γ = 0,1) s odhalením priehľadných častí kresby
 metódou zrušPriehľadnosť().
Použitý zdroj:
γ – hodnota, ktorá určí mieru korekcie intenzity farieb
     obrázka; vhodný rozsah hodnôt je zhruba v rozmedzí 0,01 – 7,99public void posterizuj()
Posterizuje obrázok podľa predvolenej palety preddefinovaných farieb. Pod posterizáciou sa rozumie nastavenie všetkých farieb na najbližšiu farbu v palete.
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave touto metódou.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
public void posterizuj(Color prváFarba, Color... ostatnéFarby)
Posterizuje obrázok podľa palety zadanej vo forme zoznamu farieb, pričom povinné je zadanie aspoň jednej farby. Pod posterizáciou sa rozumie nastavenie všetkých farieb na najbližšiu farbu v palete. Ak je zadaná len jedna farba palety, tak ňou bude obrázok jednoducho vyplnený.
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 touto metódou s parametrami: červená,
 zelená, modrá,
 čierna, biela,
 šedá, žltá, tyrkysová, purpurová.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
prváFarba – prvá farba palety na posterizáciuostatnéFarby – zoznam ostatných farieb palety na posterizáciuposterizuj(), 
posterizuj(Color[]), 
posterizuj(boolean), 
posterizuj(boolean, Color, Color...), 
posterizuj(boolean, Color[])public void posterizuj(Color[] paleta)
Posterizuje obrázok podľa palety zadanej vo forme poľa farieb. Pod posterizáciou sa rozumie nastavenie všetkých farieb na najbližšiu farbu v palete. Ak paleta obsahuje len jednu farbu, tak ňou bude obrázok jednoducho vyplnený.
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 touto metódou s parametrom:
 «inštancia».paleta(32).
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
Použitý zdroj:
paleta – paleta na posterizáciuposterizuj(), 
posterizuj(Color, Color...), 
posterizuj(boolean), 
posterizuj(boolean, Color, Color...), 
posterizuj(boolean, Color[]), 
početFarieb(), 
paleta(int)public void posterizuj(boolean difúziaChyby)
Posterizuje obrázok podľa predvolenej palety preddefinovaných farieb a umožňuje
 zvoliť, či má byť pri tomto procese použitý algoritmus difúzie
 chyby. Pre posterizáciu platí to isté, čo je uvedené v opise
 metódy posterizuj(). Algoritmus difúzie chyby
 prenáša časť chyby zaokrúhlenia farieb na susedné pixely, čo vo
 výsledku vyvolá optický klam – dojem, že posterizovaný obrázok má
 v skutočnosti viac farieb, než obsahovala paleta použitá pri
 posterizácii (čo nie je pravda).
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 touto metódou s parametrom: true.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
difúziaChyby – pravdivostná hodnota určujúca, či má byť pri
     posterizácii použitý algoritmus difúzie chybyposterizuj(), 
posterizuj(Color, Color...), 
posterizuj(Color[]), 
posterizuj(boolean, Color, Color...), 
posterizuj(boolean, Color[])public void posterizuj(boolean difúziaChyby,
                       Color prváFarba,
                       Color... ostatnéFarby)
Posterizuje obrázok podľa palety zadanej vo forme zoznamu
 farieb, pričom povinné je zadanie aspoň jednej farby a umožňuje
 zvoliť, či má byť pri tomto procese použitý algoritmus difúzie
 chyby. Pre posterizáciu platí to isté, čo je uvedené v opise
 metódy posterizuj(prváFarba,
 ostatnéFarby). Algoritmus difúzie chyby prenáša časť chyby
 zaokrúhlenia farieb na susedné pixely, čo vo výsledku vyvolá
 optický klam – dojem, že posterizovaný obrázok má v skutočnosti
 viac farieb, než obsahovala zadaná paleta (čo nie je pravda).
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 touto metódou s parametrami: true, červená, zelená,
 modrá, čierna,
 biela, šedá,
 žltá, tyrkysová, purpurová.
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
difúziaChyby – pravdivostná hodnota určujúca, či má byť pri
     posterizácii použitý algoritmus difúzie chybyprváFarba – prvá farba palety na posterizáciuostatnéFarby – zoznam ostatných farieb palety na posterizáciuposterizuj(), 
posterizuj(Color, Color...), 
posterizuj(Color[]), 
posterizuj(boolean), 
posterizuj(boolean, Color[])public void posterizuj(boolean difúziaChyby,
                       Color[] paleta)
Posterizuje obrázok podľa palety zadanej vo forme poľa farieb
 a umožňuje zvoliť, či má byť pri tomto procese použitý algoritmus
 difúzie chyby. Pre posterizáciu platí to isté, čo je uvedené v opise
 metódy posterizuj(paleta). Algoritmus
 difúzie chyby prenáša časť chyby zaokrúhlenia farieb na susedné
 pixely, čo vo výsledku vyvolá optický klam – dojem, že posterizovaný
 obrázok má v skutočnosti viac farieb, než obsahovala zadaná paleta
 (čo nie je pravda).
Poznámka: Táto metóda zruší priehľadnosť bodov pôvodného obrázka. Ak ju chcete zachovať, musíte vytvoriť a použiť masku.
|  |  | 
Vľavo je verzia obrázka pred a vpravo po úprave
 touto metódou s parametrami: true,
 «inštancia».paleta(32).
Porovnanie rôznych efektov použitých na rovnaký obrázok je
 aj v opise metódy farebnéTienidlo(farba).
Použité zdroje:
difúziaChyby – pravdivostná hodnota určujúca, či má byť pri
     posterizácii použitý algoritmus difúzie chybypaleta – paleta na posterizáciuposterizuj(), 
posterizuj(Color, Color...), 
posterizuj(Color[]), 
posterizuj(boolean), 
posterizuj(boolean, Color, Color...), 
početFarieb(), 
paleta(int)public int početFarieb()
Zistí počet farieb použitých v aktuálnej snímke obrázka. Metóda neberie do úvahy priehľadnosť farebných bodov, počíta farby len na základe ich farebných zložiek.
paleta(int), 
paleta(int, int), 
posterizuj(Color[]), 
posterizuj(boolean, Color[])public int pocetFarieb()
 Alias pre
 Alias pre početFarieb.
public Farba[] paleta(int početFarieb)
Vyrobí paletu najpoužívanejších farieb vyskytujúcich sa
 v aktuálnej snímke obrázka so zadaným maximálnym počtom farieb.
 Metóda funguje rovnako ako metóda paleta(početFarieb, hranicaZdravia) s predvolenou hranicou
 zdravia 256. (Ďalšie podrobnosti pozri v opise uvedenej
 metódy.)
početFarieb – maximálny počet farieb, ktoré smie paleta
     obsahovaťpaleta(int, int), 
početFarieb(), 
posterizuj(Color[]), 
posterizuj(boolean, Color[])public Farba[] paleta(int početFarieb, int hranicaZdravia)
Vyrobí paletu najpoužívanejších farieb vyskytujúcich sa v aktuálnej snímke obrázka so zadaným maximálnym počtom farieb a hranicou zdravia 256. Metóda zaraďuje farby do palety podľa frekvencie ich výskytu (od najpoužívanejších po najmenej používané). Keď počet farieb, ktoré boli zaradené do palety presiahne zadaný maximálny počet farieb, tak sa metóda pokúsi vypočítať novú farbu ako priemer najbližšej farby a nasledujúcej zadanej farby. Hranica zdravia určuje povolenú vzdialenosť medzi ďalšou pridávanou položkou a jestvujúcou položkou palety (0 znamená, že do palety budú zaradené len prvé najpoužívanejšie položky). Metóda neberie do úvahy priehľadnosť farebných bodov, spracuje všetky body obrázka len na základe ich farebných zložiek a rovnako výsledná paleta bude zložená len z nepriehľadných farieb.
početFarieb – maximálny počet farieb, ktoré smie paleta
     obsahovaťhranicaZdravia – maximálny vzdialenosť dvoch farieb
     zaraďovaných do palety ako ich priemerpaleta(int), 
početFarieb(), 
posterizuj(Color[]), 
posterizuj(boolean, Color[])public void svetlo(Obrázok osvetlenie)
Táto metóda použije na tento obrázok zadanú svetelnú masku.
 Táto operácia nahradí pôvodný obsah obrázka. Správanie tejto
 metódy je podobné ako správanie metódy svetlo(Obrázok
 grafika, Obrázok osvetlenie) (pozrite si aj jej opis).
osvetlenie – iný obrázok, ktorého obsah bude použitý
     na svetelnú úpravu bodov tohto obrázkasvetlo(Obrázok, Obrázok)public void svetlo(Obrázok grafika, Obrázok osvetlenie)
Táto metóda použije na obrázok zadaný v prvom parametri
 (grafika) svetelnú masku zadanú v druhom parametri
 (osvetlenie) a výsledok zlúči do tejto (this)
 inštancie obrázka. Svetelný filter môže obsahovať ľubovoľné
 farby. Pravidlom je, že zložka s hodnotou 0x80 je
 neutrálna, hodnoty zložiek pod touto hranicou výsledný obrázok
 stmavujú a nad touto hranicou zase zosvetľujú.
Príklad:
Tento príklad prečíta obrázok fotografie, upraví parametre robota tak, aby mohol rýchlo a ľahko vytvárať svetelnú masku so zeleným kruhovým osvetlením (ktoré je premiestňované podľa polohy myši) a masku použije na fotografiu.
importknižnica.*;publicclassSvetloObrázkaextendsGRobot{// Čítanie obrázka a vytvorenie jeho kópií// (len z dôvodu rýchleho získania obrázkov rovnakých rozmerov)…privatefinalstaticObrázokzdroj =Obrázok.čítaj("vuje-01.jpeg");privatefinalstaticObrázoksvetlo =newObrázok(zdroj);privatefinalstaticObrázokvýsledok =newObrázok(zdroj);privateSvetloObrázka() {// Úprava rozmerov a polohy okna (aj plátna):super(zdroj.šírka, zdroj.výška);Svet.zbaľ();Svet.vystreď();// Prispôsobenie vlastností robota:veľkosť(150);farba(newFarba(0x80FF80));cieľováFarba(newFarba(0x0080FF80,true));kresliDoObrázka(svetlo);použiKruhovýNáter();skry();// Prvé prekreslenie:pohybMyši(); }// Keby sme chceli zachovať svetlosť zvyšku obrázka, museli by sme// použiť na výplň svetelnej masky túto farbu:// ## private final static Farba neutrálna = new Farba(0x808080);@OverridepublicvoidpohybMyši() {// Vytvorenie svetelnej masky:svetlo.vyplň(tmavošedá);// ## svetlo.vyplň(neutrálna);skočNaMyš();kruh();// Použitie masky:výsledok.svetlo(zdroj, svetlo);// Nakreslenie výsledku:podlaha.obrázok(výsledok);// Keby sme chceli zobraziť len svetelnú masku:// ## podlaha.obrázok(svetlo);}publicstaticvoidmain(String[] args) {newSvetloObrázka(); } }
Pôvodné obrázky na prevzatie: vuje-01.jpeg, vuje-02.jpeg
Výsledok:
|  |  |  | 
Úprava obrázka vuje-01.jpeg – zľava doprava: pôvodný obrázok, svetelná maska, výsledok.
|  |  |  | 
Úprava obrázka vuje-02.jpeg – zľava doprava: pôvodný obrázok, svetelná maska, výsledok.
grafika – iný obrázok, ktorého obsah bude slúžiť ako predloha
     osvetleného výsledku uloženého do tohto (this)
     obrázkaosvetlenie – iný obrázok, ktorého obsah bude použitý
     na svetelnú úpravu bodov výsledkusvetlo(Obrázok)public void prevráťZvislo()
Prevráti obrázok podľa vodorovnej osi – horná časť obrázka sa ocitne dole a naopak.
prevráťVodorovne()public void prevratZvislo()
 Alias pre
 Alias pre prevráťZvislo.
public void prevráťVertikálne()
 Prevráti obrázok podľa vodorovnej osi –
 horná časť obrázka sa ocitne dole a naopak. Metóda je zároveň
 aliasom pre
 Prevráti obrázok podľa vodorovnej osi –
 horná časť obrázka sa ocitne dole a naopak. Metóda je zároveň
 aliasom pre prevráťZvislo.
prevráťHorizontálne()public void prevratVertikalne()
 Alias pre
 Alias pre prevráťZvislo.
public void prevráťVodorovne()
Prevráti obrázok podľa zvislej osi – pravá časť obrázka sa ocitne vľavo a naopak.
prevráťZvislo()public void prevratVodorovne()
 Alias pre
 Alias pre prevráťVodorovne.
public void prevráťHorizontálne()
 Prevráti obrázok podľa zvislej osi –
 pravá časť obrázka sa ocitne vľavo a naopak. Metóda je zároveň
 aliasom pre
 Prevráti obrázok podľa zvislej osi –
 pravá časť obrázka sa ocitne vľavo a naopak. Metóda je zároveň
 aliasom pre prevráťVodorovne.
prevráťVertikálne()public void prevratHorizontalne()
 Alias pre
 Alias pre prevráťVodorovne.
public void roluj(double Δx,
                  double Δy)
Posunie obsah obrázka o zadaný počet bodov v horizontálnom
 a/alebo vertikálnom smere. Tá časť obrázka, ktorá opustí jeho
  rozmery, bude stratená, pričom na protiľahlej strane vznikne
 prázdna oblasť. Metóda má využitie napríklad pri posune hracej
 plochy uloženej v obrázku, pričom musíme zabezpečiť, aby boli
 vzniknuté prázdne časti plochy dokreslené. Ak chceme pretočiť
 obrázok dookola (t. j. bez straty obsahu), musíme použiť metódu
 pretoč.
Upozornenie: Je dôležité si uvedomiť, že pri pripojení plazmy k obrázku nemá rolovanie alebo pretáčanie samotného obrázka zmysel, pretože jeho obsah je vždy úplne nahradený generátorom plazmy. Na pretáčanie obsahu takého obrázka má zmysel použiť iba metódy plazmy.
Δx – posun v horizontálnom (vodorovnom) smereΔy – posun vo vertikálnom (zvislom) smerepublic void pretoč(double Δx,
                   double Δy)
Pretočí obsah obrázka o zadaný počet bodov v horizontálnom
 a/alebo vertikálnom smere. Tá časť obrázka, ktorá by mala pri
 pretočení opustiť jeho rozmery, sa objaví na protiľahlej strane.
 Pretáčaním obrázka v ľubovoľnom smere nikdy nestratíme obrazovú
 informáciu a spätným posunom dostaneme pôvodný obrázok. Ak
 z rôznych dôvodov potrebujeme, aby sa pri pretáčaní obrázka tie
 časti, ktoré opustia rozmery obrázka stratili a aby vzniknuté
 prázdne časti zostali skutočne prázdne (pripravené na ďalšie
 kreslenie), musíme použiť metódu roluj.
Upozornenie: Je dôležité si uvedomiť, že pri pripojení plazmy k obrázku nemá rolovanie alebo pretáčanie samotného obrázka zmysel, pretože jeho obsah je vždy úplne nahradený generátorom plazmy. Na pretáčanie obsahu takého obrázka má zmysel použiť iba metódy plazmy.
Δx – posun v horizontálnom (vodorovnom) smereΔy – posun vo vertikálnom (zvislom) smerepublic void pretoc(double Δx,
                   double Δy)
 Alias pre
 Alias pre pretoč.
public Farba farbaBodu(double x, double y)
Zistí farbu bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca. Funguje podobne
 ako Plátno.farbaBodu(x,
 y).
public Farba farbaBodu(Poloha objekt)
Zistí farbu bodu (jedného pixela) obrázka na súradniciach
 určených polohou objektu. Funguje podobne ako farbaBodu(x, y), ale namiesto
 jednotlivých súradníc sa spracuje poloha zadaného objekt.
public boolean farbaBodu(double x,
                         double y,
                         Color farba)
Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje so zadanou
 farbou. Funguje podobne ako Plátno.farbaBodu(x, y, farba).
x – x-ová súradnica vyšetrovaného boduy – y-ová súradnica vyšetrovaného bodufarba – farba, ktorú chceme porovnať s farbou bodu na zadanej
     pozíciitrue ak sú zadané súradnice v rámci rozmerov
     obrázka a farba bodu na zadaných súradniciach sa zhoduje so
     zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(Poloha objekt, Color farba)
Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu v súradnicovom priestore rámca zhoduje so zadanou
 farbou. Funguje podobne ako farbaBodu(x, y, farba), ale namiesto jednotlivých
 súradníc je zadaný objekt, ktorého poloha určuje vyšetrované
 súradnice.
objekt – objekt, ktorého poloha určuje súradnice vyšetrovaného
     bodufarba – farba, ktorú chceme porovnať s farbou bodu na pozícii
     objektutrue ak je poloha objektu v rámci rozmerov
     obrázka a farba bodu na jeho súradniciach sa zhoduje so
     zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(double x,
                         double y,
                         Farebnosť objekt)
Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadaného objektu. Funguje podobne ako Plátno.farbaBodu(x, y, farba).
x – x-ová súradnica vyšetrovaného boduy – y-ová súradnica vyšetrovaného boduobjekt – objekt, ktorého farbu chceme porovnať s farbou bodu
     na zadanej pozíciitrue ak sú zadané súradnice v rámci rozmerov
     obrázka a farba bodu na zadaných súradniciach sa zhoduje
     s farbou zadaného objektu (musia sa zhodovať všetky farebné
     zložky aj úroveň priehľadnosti), inak falsepublic boolean farbaBodu(Poloha objekt, Farebnosť farebnosť)
Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 prvého zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou druhého zadaného objektu. Funguje podobne ako
 farbaBodu(x, y, farba), ale namiesto jednotlivých súradníc je
 spracovaná poloha objektu.
objekt – objekt, ktorého poloha určuje súradnice vyšetrovaného
     bodufarebnosť – objekt, ktorého farbu chceme porovnať s farbou bodu
     na pozícii objektutrue ak je poloha objektu v rámci rozmerov
     obrázka a farba bodu na jeho súradniciach sa zhoduje s farbou
     zadaného objektu (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(double x,
                         double y,
                         int r,
                         int g,
                         int b)
Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadanou prostredníctvom farebných zložiek.
 (Úroveň priehľadnosti je nastavená na hodnotu 255,
 čiže na úplne nepriehľadnú farbu.)
 Funguje podobne ako Plátno.farbaBodu(x, y, farba), ale farba je
 určená prostredníctvom farebných zložiek.
x – x-ová súradnica vyšetrovaného boduy – y-ová súradnica vyšetrovaného bodur – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciig – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciib – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciitrue ak sú zadané súradnice v rámci rozmerov
     obrázka a farba bodu na zadaných súradniciach sa zhoduje
     so zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(double x,
                         double y,
                         int r,
                         int g,
                         int b,
                         int a)
Zistí, či sa farba bodu (jedného pixela) obrázka na zadaných
 súradniciach v súradnicovom priestore rámca zhoduje s farbou
 zadanou prostredníctvom farebných zložiek a úrovne priehľadnosti.
 Funguje podobne ako Plátno.farbaBodu(x, y, farba), ale farba je
 určená prostredníctvom farebných zložiek a úrovne priehľadnosti.
x – x-ová súradnica vyšetrovaného boduy – y-ová súradnica vyšetrovaného bodur – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciig – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciib – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na zadanej pozíciia – úroveň priehľadnosti farby, ktorú chceme porovnať
     s farbou bodu na zadanej pozíciitrue ak sú zadané súradnice v rámci rozmerov
     obrázka a farba bodu na zadaných súradniciach sa zhoduje
     so zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(Poloha objekt, int r, int g, int b)
Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou zadanou prostredníctvom farebných zložiek a úrovne.
 (Úroveň priehľadnosti je nastavená na hodnotu 255,
 čiže na úplne nepriehľadnú farbu.)
 Funguje podobne ako farbaBodu(x, y, farba), ale namiesto
 jednotlivých súradníc je spracovaná poloha objektu a farba je
 určená prostredníctvom farebných zložiek.
objekt – objekt, ktorého poloha určuje súradnice vyšetrovaného
     bodur – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektug – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektub – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektutrue ak je poloha objektu v rámci rozmerov
     obrázka a farba bodu na jeho súradniciach sa zhoduje so
     zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic boolean farbaBodu(Poloha objekt, int r, int g, int b, int a)
Zistí, či sa farba bodu (jedného pixela) obrázka na súradniciach
 zadaného objektu (v súradnicovom priestore rámca) zhoduje
 s farbou zadanou prostredníctvom farebných zložiek a úrovne
 priehľadnosti. Funguje podobne ako farbaBodu(x, y, farba), ale namiesto
 jednotlivých súradníc je spracovaná poloha objektu a farba je
 určená prostredníctvom farebných zložiek a úrovne priehľadnosti.
objekt – objekt, ktorého poloha určuje súradnice vyšetrovaného
     bodur – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektug – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektub – červená zložka farby, ktorú chceme porovnať s farbou
     bodu na pozícii objektua – úroveň priehľadnosti farby, ktorú chceme porovnať
     s farbou bodu na pozícii objektutrue ak je poloha objektu v rámci rozmerov
     obrázka a farba bodu na jeho súradniciach sa zhoduje so
     zadanou farbou (musia sa zhodovať všetky farebné zložky aj
     úroveň priehľadnosti), inak falsepublic double priehľadnosť()
priehľadnosť v rozhraní Priehľadnosťpriehľadnosť(double), 
upravPriehľadnosť(double)public double priehladnost()
 Alias pre
 Alias pre priehľadnosť.
priehladnost v rozhraní Priehľadnosťpublic void priehľadnosť(double priehľadnosť)
 Nastaví novú úroveň (ne)priehľadnosti
 tohto obrázka, pričom jednotlivé body na obrázku môžu mať svoju
 vlastnú úroveň priehľadnosti. Úroveň 0.0 znamená, že obrázok
 nebude pri kreslení zobrazený. Úroveň 1.0 znamená, že jednotlivé
 body obrázka budú zobrazené s ich vlastnou úrovňou priehľadnosti –
 nepriehľadné body budú plne viditeľné. Úroveň priehľadnosti
 obrázka nemá vplyv na jeho uloženie
 do súboru, iba na jeho zobrazenie.
 Nastaví novú úroveň (ne)priehľadnosti
 tohto obrázka, pričom jednotlivé body na obrázku môžu mať svoju
 vlastnú úroveň priehľadnosti. Úroveň 0.0 znamená, že obrázok
 nebude pri kreslení zobrazený. Úroveň 1.0 znamená, že jednotlivé
 body obrázka budú zobrazené s ich vlastnou úrovňou priehľadnosti –
 nepriehľadné body budú plne viditeľné. Úroveň priehľadnosti
 obrázka nemá vplyv na jeho uloženie
 do súboru, iba na jeho zobrazenie.
priehľadnosť – nová úroveň priehľadnosti (0.0 – 1.0)priehľadnosť(), 
upravPriehľadnosť(double)public void priehladnost(double priehľadnosť)
 Alias pre
 Alias pre priehľadnosť.
public void priehľadnosť(Priehľadnosť objekt)
Skopíruje úroveň (ne)priehľadnosti zo zadaného objektu.
objekt – objekt určujúci novú úroveň priehľadnostipriehľadnosť(), 
upravPriehľadnosť(double)public void priehladnost(Priehľadnosť objekt)
 Alias pre
 Alias pre priehľadnosť.
public void upravPriehľadnosť(double zmena)
Upraví úroveň (ne)priehľadnosti obráza. Pre viac informácií
 o priehľadnosti pozri priehľadnosť.
zmena – hodnota, ktorou bude násobená aktuálna hodnota
     priehľadnosti; príklady: 0.5 – priehľadnosť bude znížená
     o polovicu, 2.0 – úroveň priehľadnosti bude zdvojnásobenápriehľadnosť(double), 
priehľadnosť()public void upravPriehladnost(double zmena)
 Alias pre
 Alias pre upravPriehľadnosť.
public void ulož(String súbor)
Uloží obrázok do súboru. Prípona súboru musí byť .gif,
 .png alebo .jpg (resp. .jpeg). Ak súbor
 jestvuje, tak vznikne výnimka oznamujúca, že súbor so zadaným
 menom už jestvuje. Ak chcete súbor prepísať, použite metódu
 ulož(String súbor, boolean prepísať) s druhým parametrom
 rovným true. Odporúčame pozrieť si opis uvedenej metódy,
 pretože obsahuje užitočné príklady použitia a informácie v jej
 opise sú platné aj pre túto metódu.
súbor – názov súboru s požadovanou príponouGRobotException – ak súbor jestvuje alebo bol zadaný názov
     súboru s neplatnou príponoupublic void ulož(String súbor, boolean prepísať)
Uloží obsah obrázka do súboru. Prípona súboru musí byť
 .gif, .png alebo .jpg
 (resp. .jpeg).
Formát GIF je jedným z najstarších z pohľadu histórie
 grafických formátov, ale stal sa obľúbeným, pretože umožňuje
 tvoriť animované verzie obrázkov. Ak je inštancia obrázka
 animovaná, tak táto metóda automaticky vytvorí a uloží animovanú
 verziu GIFu. Implicitne pri tom použije niektoré jestvujúce
 vlastnosti/nastavenia/stavy programovacieho rámca, napríklad
 farba pozadia je zmiešaná
 so všetkými polopriehľadnými bodmi, pretože formát GIF
 nepodporuje čiastočnú priehľadnosť bodov a aktuálna hodnota
 počtu opakovaní animácie
 zároveň určí počet opakovaní uložený a používaný v tomto
 súborovom formáte, pričom pri ukladaní má hodnota 0
 rovnaký význam ako akákoľvek záporná hodnota, čiže nekonečný
 počet opakovaní (na rozdiel od významu použitého v programovacom
 rámci, kedy hodnota 0 znamená koniec animácie
 a záporné hodnoty znamenajú nekonečný počet opakovaní).
Príklad:
Formát GIF je historickým formátom s určitými (najmä farebnými)
 obmedzeniami, ale stále nachádza svoje použitie. Nasledujúci
 príklad ukazuje ako takýto súbor vytvoriť s použitím programovacieho
 rámca GRobot, ale na plnohodnotné (plnofarebné) uloženie
 snímok animovaného obrázka odporúčame použiť sekvenciu súborov vo
 formáte PNG, ktorú táto metóda vytvorí automaticky, ak nájde
 v názve súboru zástupný znak * – pozri ďalší
 príklad. (Znak * bol zvolený úmyselne, pretože na
 nami používaných operačných systémoch ide o neplatný znak v rámci
 názvov súborov.)
importknižnica.*;publicclassVytvorAnimovanýGIFextendsGRobot{// Inštancia obrázka, do ktorej budú ukladané snímky animácie lopty// a ktorá výslednú animáciu uloží do formátu GIF.privateObrázokanimovanýObrázok;// Zoznam modrých farieb použitých na tieňovanie lopty.privatefinalZoznam<Farba> farby =newZoznam<Farba>(newFarba(0,0,224),newFarba(16,16,232),newFarba(32,32,240),newFarba(48,48,248),newFarba(64,64,255));// Táto metóda je schopná nakresliť loptu vrátane jej prípadnej// deformácie.privatevoidkresliLoptu(doublesploštenieX,doublesploštenieY) {// Vždy pred kreslením lopty sa aktuálny obsah animovaného obrázka// vymaže:animovanýObrázok.vymaž();// Najprv spracujeme tieňovanie lopty. Na to treba obmedziť oblasť// kreslenia do obrázka na požadovaný tvar, čo zariadia nasledujúce// tri príkazy:nekresliTvary();kresliDo(elipsa(40+ sploštenieX,40+ sploštenieY));kresliTvary();// Nasledujúci blok kreslí tieňovanie lopty:// (Poznámka: Toto by sa dalo riešiť ajnáterom.)doublemenej =0;skoč(-12+ sploštenieX,12+ sploštenieY);for(Farbafarba : farby) {farba(farba);kruh(60+ menej); menej -=12; }skoč(12- sploštenieX, -12- sploštenieY);// Rozmažeme kresbu a zrušíme obmedzenie kreslenia do oblasti:animovanýObrázok.rozmaž(12);kresliVšade();// Na záver prekreslíme obrysy lopty, aby sme trochu zamaskovali// nie celkom esteticky rozmazané okraje:farba(farby.prvý());elipsa(40+ sploštenieX,40+ sploštenieY);farba(farby.daj(1));elipsa(40+ sploštenieX -1.5,40+ sploštenieY -1.5);elipsa(40+ sploštenieX -3.0,40+ sploštenieY -3.0); }// Odľahčená verzia metódy kresliaca nedeformovanú loptu.privatevoidkresliLoptu() { kresliLoptu(0,0); }// Súkromný konštruktor.privateVytvorAnimovanýGIF() {// Rozmer plátna bude o málo väčší oproti rozmeru obrázka:super(140,240);// Vypneme automatické prekresľovanieSvet.nekresli();// Vytvoríme nový obrázok, do ktorého bude ukladaná animácia;// určíme, že trvanie zobrazenia každej snímky bude 40 ms// a vykonáme nevyhnutné nastavenia robota, čo zahŕňa aj// presmerovanie jeho kreslenia do animovaného obrázka:animovanýObrázok =newObrázok(120,220); animovanýObrázok.trvanie(0.040);hrúbkaČiary(3);kresliDoObrázka(animovanýObrázok);zdvihniPero();skry();// Posunieme robot dozadu (nižšie na obrazovke) a začneme animáciu:dozadu(52);// Prvá (päťsnímková) fáza animácie deformuje loptu pri dopade:for(inti =0; i <=4; ++i) { kresliLoptu(2.0* i, -2.0* i);dozadu(2.0); animovanýObrázok.pridajSnímku(); }// Pri návrate deformovanej lopty do pôvodného tvaru jednu snímku// preskočíme…dopredu(2.0);// …a animujeme už len štyri fázy:for(inti =3; i >=0; --i) { kresliLoptu(2.0* i, -2.0* i);dopredu(2.0); animovanýObrázok.pridajSnímku(); }// Ďalšia fáza je výskok lopty do výšky:for(inti =14; i >=0; --i) { kresliLoptu();dopredu(1.0* i); animovanýObrázok.pridajSnímku(); }// A posledná fáza je jej návrat na zem:for(inti =0; i <=14; ++i) { kresliLoptu();dozadu(1.0* i); animovanýObrázok.pridajSnímku(); }// Vrátime robot domov, obnovíme mu kreslenie na plátno// a uložíme a spustíme animáciu:domov();kresliNaPodlahu(); animovanýObrázok.ulož("lopta.gif",true); animovanýObrázok.spusti();// Spustíme časovač:Svet.spustiČasovač(0.020); }// Reakcia na časovač – pravidelne prekresľuje animovaný obrázok, ktorého// animácia je vykonávaná automaticky (vnútornými mechanizmami sveta).@Overridepublicvoidtik() {if(Svet.neboloPrekreslené()) {podlaha.vymažGrafiku();obrázok(animovanýObrázok);Svet.prekresli(); } }// Hlavná metóda.publicstaticvoidmain(String... args) {// Skrytie sveta (okna aplikácie):Svet.skry();// Vytvorenie anonymnej inštancie tejto triedy (konštruktor triedy// odvodenej od robota vždy zabezpečí vytvorenie aplikácie):newVytvorAnimovanýGIF();// Automatické nastavenie veľkosti a polohy okna sveta// (t. j. aplikácie) a jeho zobrazenie:Svet.zbaľ();Svet.vystreď();Svet.zobraz(); } }
Výsledok:

 
Výsledný
 obrázok – lopta.gif.
Príklad:
Sekvenciu súborov vo formáte PNG vytvoríte, ak namiesto názvu súboru zadáte šablónu v nasledujúcom tvare (dôležitá je prítomnosť aspoň jednej hviezdičky – zvýraznené červenou):
    «prefix»*[«ľubovoľné znaky»*]«postfix».png
Príklady platných šablón a ukážky názvov prvých dvoch a niekoľkých ďalších náhodne zvolených súborov snímok v animovanej sekvencii (ak by animácia mala potrebný rozsah, čo najmä v poslednom prípade hraničí s reálnosťou):
    srdce*.png – srdce1.png,
 srdce2.png… srdce10.png…
    lopta-**.png – lopta-01.png,
 lopta-02.png… lopta-10.png…
 lopta-102.png…
    _algoritmus-****_.png –
 _algoritmus-0001_.png,
 _algoritmus-0002_.png…
 _algoritmus-0010_.png…
 _algoritmus-0102_.png…
 _algoritmus-1024_.png…
 _algoritmus-22800_.png…
    Sekvencia_*2345*.PNG –
 Sekvencia_000001.PNG,
 Sekvencia_000002.PNG…
 Sekvencia_000010.PNG…
 Sekvencia_000102.PNG…
 Sekvencia_001024.PNG…
 Sekvencia_022800.PNG…
 Sekvencia_10000000.PNG…
Na príkladoch je vidieť, že v šablóne je podstatný výskyt
 prvého a posledného znaku *, pričom môže ísť aj
 o ten istý znak (ak je jediný). Prípadné znaky medzi nimi sú
 z pohľadu obsahu ignorované a do úvahy je vzatý len ich celkový
 počet, ktorý prispeje k určeniu počtu cifier číslovania v názvoch
 súborov snímok animácie.
Pozor! Ak sa týmto spôsobom pokúsite
 uložiť obrázok, ktorý nemá definovanú ani jednu snímku animácie,
 tak táto metóda uloží jediný súbor s poradovým číslom nula a ak
 je tento súbor nájdený metódou čítaj(súbor)
 pri pokuse o čítanie sekvencie súborov so zhodnou šablónou, tak ho
 prečíta ako neanimovaný obrázok a už sa nepokúša hľadať ďalšie
 súbory vyhovujúce kritériám šablóny názvov súborov animovanej
 sekvencie.
Poznámka: Od verzie 2.18 sa PNG sekvencie
 dajú jednoducho zapisovať aj do archívu (ZIP).
 Výhodou je uchovanie celej animácie v jednom súbore, úspora
 vnútornej pamäte programovacieho rámca a tiež automatické uchovanie
 informácií o časovaní snímok (v samostatnej položke archívu).
 Pozri aj príklad v opise metódy Obrázok.čítaj(archív, názovPoložky).
Podobne funguje komunikácia pri určovaní výsledného počtu snímok
 ak je druhý parameter tejto metódy (prepísať) rovný
 true a na pevnom disku jestvuje sekvencia s vyšším
 alebo nulovým počtom snímok, tak pri zápise táto metóda vymaže
 súbor s poradovým číslom nula a/alebo súbor s najbližším vyšším
 poradovým číslom po skončení aktuálnej sekvencie. Tým je zaručené,
 že metóda čítaj(súbor) prečíta rovnaký počet
 snímok aký má aktuálna sekvencia.
importknižnica.*;publicclassVytvorSekvenciuPNGextendsGRobot{// Tieto konštanty určia rozmery indikátora stavu zobrazeného// a aktualizovaného na obrazovke počas tvorby a zápisu animácie do// sekvencie PNG súborov (v skutočnosti ide o polovičné hodnoty):privatefinalstaticdoublevýškaIndikátora =20.0;privatefinalstaticdoublešírkaIndikátora =160.0;// Táto konštanta určuje požadovaný počet snímok animácie (ak nie je podiel// 360.0 / početSnímok celé číslo, tak sa môže skutočný počet zvýšiť// o jednu snímku):privatefinalstaticintpočetSnímok =250;// Inštancia obrázka, do ktorej budú ukladané snímky vytváranej animácie// a ktorá ju uloží do seknvencie PNG súborov:privateObrázokanimovanýObrázok;
// Kreslenie indikátora priebehu.privatevoidkresliIndikátor(doublehotovo) {// Prepočítame percentuálnu hodnotu na počet pixelov:hotovo *= šírkaIndikátora;// Nastavíme hrúbku čiary tvarov indikátora:hrúbkaČiary(3.0);// Nakreslenie šedej výplne tej časti indikátora, ktorá reprezentuje// nedokončenú časť úlohy:farba(šedá);vyplňObdĺžnik(šírkaIndikátora, výškaIndikátora);// Nakreslenie čierneho obrysu rovnakej časti indikátora:farba(čierna);kresliObdĺžnik(šírkaIndikátora, výškaIndikátora);// Presunutie robota na správne miesto tak, aby bola „dokončená časť“// indikátora kreslená presne od ľavého okraja celého indikátora:skoč(hotovo - šírkaIndikátora,0);// Nakreslenie zelenej výplne tej časti indikátora, ktorá reprezentuje// dokončenú časť úlohy:farba(zelená);vyplňObdĺžnik(hotovo, výškaIndikátora);// Nakreslenie čierneho obrysu rovnakej časti indikátora:farba(čierna); kresliObdĺžnik(hotovo, výškaIndikátora); }// Metóda slúžiaca na vytvorenie animácie. Prijíma počet bodov, cez ktoré// má prechádzať animovaná krivka a požadovaný počet snímok (na túto// hodnotu máme zároveň definovanú konštantu; do tejto metódy ju posielame,// aby bola univerzálnejšia – vystrihnuteľná a použiteľná v inej// aplikácii).privatevoidvytvorAnimáciu(intpočetBodov,intpočetSnímok) {// Pole bodov, cez ktoré prechádza animovaná krivka:Bod[] čiara =newBod[početBodov];// Uloženie prvého bodu do poľa (zámerne je umiestnený mimo plátna,// aby nebolo vidno začiatok krivky – pôsobilo by to rušivo):skočNa(0, -Svet.výška() -10); čiara[0] =poloha();// Pridanie požadovaného počtu náhodných bodov// (okrem prvého a posledného):for(inti =1; i < početBodov -1; ++i) {náhodnáPoloha(); čiara[i] =poloha(); }// Uloženie posledného bodu do poľa (tiež je umiestnený mimo plátna,// aby nebolo vidno koniec krivky):skočNa(0,Svet.výška() +10); čiara[početBodov -1] =poloha();// Pole farieb použitých na nakreslenie krivky:Farba[] farby =newFarba[početBodov];// Stanovenie začiatočnej a koncovej farby krivky:Farbaprvá = červená;Farbaposledná = žltá;// Vypočítanie farebného prechodu medzi začiatočnou a koncovou farbou// s použitím lineárnej interpolácie na jednotlivé farebné zložky// (vznikne tým lineárny farebný gradient):for(inti =0; i < početBodov; ++i) farby[i] =newFarba( (int)Svet.lineárnaInterpolácia( prvá.červená(), posledná.červená(), (double)i / (double)početBodov), (int)Svet.lineárnaInterpolácia( prvá.zelená(), posledná.zelená(), (double)i / (double)početBodov), (int)Svet.lineárnaInterpolácia( prvá.modrá(), posledná.modrá(), (double)i / (double)početBodov));// Vypočítanie uhla, ktorý bude slúžiť ako prírastok riadiaceho uhla// animácie. Riadiaci uhol bude nadobúdať hodnoty medzi nulou// a tristošesťdesiat stupňami a tento meniaci sa uhol bude postupne// určovať počiatočné pootočenie robota kresliaceho krivku v rámci// jednotlivých snímok. Okrem tohto parametra sa na animovaných// snímkach nemení nič. Zvyšok algoritmu kreslenia krivky je úplne// rovnaký – prejsť všetkými bodmi, ktoré boli náhodne zvolené vyššie.doubleprírastok =360.0/ početSnímok;// Výroba jednotlivých snímok animácie:for(doubleuhol =0.0; uhol <360.0; uhol += prírastok) {// Vymazanie aktuálnej snímky:animovanýObrázok.vymaž();// Zahájenie niekoľkých cyklov kreslenia krivky, počas ktorých// bude rozmazávaná a opätovne prekresľovaná:for(intj =0; j <10; ++j) {// Presmerujeme kreslenie robota do animovaného obrázka:kresliDoObrázka(animovanýObrázok);// Nastavíme hrúbku kreslenej čiary:hrúbkaČiary(5.0/ (double)(j +1));// Skočíme na začiatok krivky:skočNa(čiara[0]);farba(farby[0]);smer(uhol);// Ak na snímke jestvuje kresba krivky (ak toto nie je prvá// snímka), tak ju rozmažeme:if(0!= j) animovanýObrázok.rozmaž(10,čierna);// Nakreslíme farebnú krivku (štruktúra try-catch je// potrebná, lebo metóda choďNaPoOblúku môže zlyhať; my však// jej prípadné zlyhanie ignorujeme):for(inti =1; i < početBodov; ++i)try{farba(farby[i]);choďNaPoOblúku(čiara[i]); }catch(Exceptione) {// (Prípadné chyby ignorujeme…)}// Vrátime robot domov, obnovíme mu kreslenie na plátno// podlahy:domov();kresliNaPodlahu();// Prekreslíme indikátor:kresliIndikátor((0.8* (uhol + ((prírastok * (double)(j +1)) /10.0))) /360.0);// A tiež svet (aby sa zmena indikátora prejavila):Svet.prekresli(); }// Tu prekreslíme snímku viac ráz cez seba. Keďže obsahuje mnoho// polopriehľadných bodov, má to význam. Výsledkom bude// zvýraznenie poloriehľadných bodov, ktoré vznikli pri rozmazaní.for(inti =0; i <2; ++i) animovanýObrázok.kresli(animovanýObrázok);// Pridáme snímku do animovaného obrázka:animovanýObrázok.pridajSnímku(); } }// Súkromný konštruktor.privateVytvorSekvenciuPNG() {// Upravíme rozmer plátna (ktorý zároveň určí rozmer obrázka):super(640,480);// Skryjeme robot:skry();// Vypneme automatické prekresľovanie:Svet.nekresli();// Automatické nastavenie veľkosti a polohy okna sveta// (t. j. aplikácie) a jeho zobrazenie:Svet.zbaľ();Svet.vystreď();// Vytvoríme nový obrázok, do ktorého bude ukladaná animácia:animovanýObrázok =newObrázok(Svet.šírka(),Svet.výška());// Určíme, že trvanie zobrazenia každej snímky bude 40 ms:animovanýObrázok.trvanie(0.040);// Nakreslíme počiatočný stav indikátora (prázdny):kresliIndikátor(0.0);// Prekreslíme svet, aby sa indikátor zobrazil používateľovi:Svet.prekresli();// Spustíme časomieru, pretože sme zvedaví ako dlho bude trvať// generovanie animácie:Svet.spustiČasomieru();// Spustíme výrobu animácie:vytvorAnimáciu(50, početSnímok);// Zastavíme časomieru a necháme výsledok vypísať na konzolu// (výpis sa zobrazí v okne terminálu BlueJa):doublečas =Svet.zastavČasomieru();System.out.println("Tvorba animácie trvala: "+Math.round(čas /60) +" min "+F(čas %60,2) +" s");// Opäť spustíme časomieru, lebo sme zvedaví ako dlho bude trvať// ukladanie PNG sekvencie:Svet.spustiČasomieru();// Vytvoríme priečinok, do ktorého bude sekvencia ukladaná:Súbor.novýPriečinok("sekvencia");// Uložíme sekvenciu obrázkov podľa šablóny (šablóna obsahuje názov// podpriečinka „sekvencia“):animovanýObrázok.ulož("sekvencia/nahodne-ciary-***.png",true);// Opäť zastavíme časomieru a vypíšeme výsledok (tiež na konzolu):čas =Svet.zastavČasomieru();System.out.println("Vytváranie sekvencie súborov trvalo: "+Math.round(čas /60) +" min "+F(čas %60,2) +" s");// Možno je to pre niekoho zbytočné, ale nakoniec nakreslíme// indikátor v úplne dokončenom stave (ak by náhodou zopár// nasledujúcich príkazov trvalo dlhšie):podlaha.vymažGrafiku(); kresliIndikátor(1.0);Svet.prekresli();// Vrátime robot domov, aby bola animácia kreslená korektne:domov();// A spustíme animáciu aj časovač:animovanýObrázok.spusti();Svet.spustiČasovač(0.040);// Na záver nastavíme čiernu farbu pozadia:Svet.farbaPozadia(čierna); }// Táto reakcia je automaticky spúšťaná počas zápisu (alebo čítania)// animovanej PNG sekvencie. Používame ju na aktualizovanie informácie// o stave zápisu zobrazenej na obrazovke pre používateľa.@Overridepublicvoidsekvencia(intkódSpracovania,Stringzdroj,Stringcieľ,longstav,longcelkovo) {// Pred každým kreslení indikátora vymažeme grafiku podlahy// a vrátime robot domov:podlaha.vymažGrafiku();domov();// Vypočítame percento dokončenia s tým, že 80 % bolo vykonaných// pri tvorbe animácie, takže teraz zobrazujeme už len priebeh zvyšných// 20 %:kresliIndikátor(0.8+ ((0.2* (double)stav) / (double)celkovo));// Prekreslíme obrazovku:Svet.prekresli(); }// Reakcia na časovač – pravidelne prekresľuje animovaný obrázok, ktorého// animácia je vykonávaná automaticky (vnútornými mechanizmami sveta).@Overridepublicvoidtik() {if(Svet.neboloPrekreslené()) {podlaha.vymažGrafiku();obrázok(animovanýObrázok);Svet.prekresli(); } }// Hlavná metóda.publicstaticvoidmain(String... args) {// Vytvorenie anonymnej inštancie tejto triedy (konštruktor triedy// odvodenej od robota vždy zabezpečí vytvorenie aplikácie):newVytvorSekvenciuPNG(); } }
Opis priebehu a výsledku:
Počas tvorby animácie bude v okne sveta aktualizovaný grafický ukazovateľ stavu činnosti:

 
Grafický ukazovateľ stavu
 činnosti.
Kód spracovania reakcie sekvencia sme v príklade nepoužili. V tomto
 prípade mal hodnotu konštanty ZÁPIS_PNG_SEKVENCIE. (V prípade ukladania animáce do formátu GIF
 je hodnota rovná hodnote konštanty
 ZÁPIS_GIF_ANIMÁCIE.)
Podľa nami nameraných hodnôt trvalo vytváranie sekvencie od štyroch do šesť a pol minúty. Po skončení fázy generovania (80 % ukazovateľa) pokračuje aplikácia fázou ukladania sekvencie do súboru (zvyšných 20 % ukazovateľa). Podľa nami nameraných hodnôt trvalo ukladanie sekvencie asi minútu a štyridsať sekúnd (s rozptylom desať sekúnd).
Výsledkom vykonania tohto príkladu bude sekvencia súborov vo
 formáte PNG vytvorená na disku v priečinku sekvencie.
 Prvý súbor bude mať názov nahodne-ciary-001.png
 a posledný nahodne-ciary-251.png.
Po dokončení bude v okne aplikácie spustená vytvorená animácia.
|  |  | 
| Ukážky možného vzhľadu vytvorenej animáce – výsledok každého generovania je unikátny (plátno ukážok je úmyselne zmenšené). | |
Na 32-bitových operačných systémoch sa môže stať, že aplikácia nebude mať dostatok pamäte na vykonanie. V takom prípade skúste cez príkazový riadok operačného systému spustiť aplikáciu nasledujúcim príkazom potvrdeným v priečinku s preloženou aplikáciou:
java -Xmx1g VytvorSekvenciuPNG
súbor – názov súboru s požadovanou príponouprepísať – ak je true, prípadný jestvujúci
     súbor bude prepísaný, inak sa správa rovnako ako metóda
     ulož(String súbor)GRobotException – ak súbor jestvuje a parameter prepísať
     je false alebo ak bol zadaný názov súboru
     s neplatnou príponoupublic knižnica.apacheAntZIP.ZipEntry[] ulož(Archív archív, String názovPoložky)
Uloží obsah obrázka do archívu ako položku so zadaným názvom. Archív musí byť vopred otvorený na zápis. Ak je názov položky šablóna PNG sekvencie, tak bude do archívu pridaných toľko položiek, koľko by bolo vytvorených súborov sekvencie, pričom ich názvy budú korešpondovať s názvami súborov sekvencie. Ďalej pre túto metódu platí súhrn relevantných informácií uvedených v opisoch nasledujúcich dvoch metód:
ulož(súbor,
 prepísať);Archív.pridajPoložku(názovPoložky, údajePoložky).Upozornenie: Táto metóda je použiteľná len v prípade, že je archív otvorený na zápis.
Pozri aj príklad v opise metódy Obrázok.čítaj(archív, názovPoložky).
archív – inštancia archívu, do ktorého má byť tento obrázok
     pridaný ako položkanázovPoložky – názov položky v archíve alebo šablóna názvov
     položiek, ak chceme zapísať PNG sekvenciu animácieZipEntry na vykonanie prípadných
     ďalších úprav (nastavenie komentárov položiek, úprava ich dátumu
     podľa vlastných potrieb a podobne)GRobotException – ak bol zadaný názov súboru s neplatnou
     príponou, ak archív nie je otvorený na zápis, ak bol názov
     položky zamlčaný (bola zadaná hodnota null)
     alebo v prípade pokusu o vloženie duplicitnej položkyčítaj(Archív, String), 
Archív.obrázok(String), 
Archív.pridajPoložku(String, Obrázok)public knižnica.apacheAntZIP.ZipEntry[] uloz(Archív archív, String názovPoložky)
 Alias pre
 Alias pre ulož.
public boolean doSchránky()
Vloží obsah tohto obrázka do schránky.
Upozornenie: Obrázok je uchovaný v schránke len počas činnosti aplikácie robota. Po zatvorení okna sveta, je obrázok zo schránky odstránený.
true ak bola operácia úspešnáSchránka.obrázok(Image)public boolean doSchranky()
 Alias pre
 Alias pre doSchránky.
public static boolean porovnaj(Image obrázok1, Image obrázok2)
Porovná obsahy dvoch zadaných inštancií obrázkov. V prípade,
 že sú oba argumenty tejto metódy tým istým obrázkom, tak je bez
 ďalšej kontroly vrátená hodnota true. Ak ide o rôzne
 objekty obrázkov, tak bude overená zhoda ich obsahu. Najskôr sú
 porovnané rozmery obrázkov a ak sú zhodné, tak sú porovnané ich
 rastre. Potom je podľa toho, či sú obsahovo zhodné alebo nie,
 vrátená hodnota true alebo false.
obrázok1 – prvý porovnávaný obrázokobrázok2 – druhý porovnávaný obrázoktrue, inak
     falsepublic boolean porovnaj(Image inýObrázok)
Porovná obsah tejto a zadanej inštancie obrázka. Najskôr sú
 overené rozmery obrázkov a ak sú zhodné, tak sú porovnané ich
 rastre a podľa toho, či sú obsahovo zhodné alebo nie, je vrátená
 hodnota true alebo false.
inýObrázok – obrázok, s ktorým je porovnávaný obsah tejto
     inštancietrue, inak falsepublic boolean máVlnenie()
Overí, či je definovaná inštancia vlnenia pre tento obrázok.
true ak je inštancia vlnenia definovaná;
     false v opačnom prípadevlnenie(), 
jestvujúceVlnenie(), 
pridajVlnenie(), 
pridajVlnenie(boolean), 
pridajVlnenie(int), 
pridajVlnenie(int, boolean), 
odstráňVlnenie()public boolean maVlnenie()
 Alias pre
 Alias pre máVlnenie.
public Vlnenie vlnenie()
Vráti inštanciu vlnenia pre tento obrázok,
 aby bolo možné s vlnením ďalej pracovať. Ak vlnenie nie je pre
 tento obrázok definované, tak metóda definuje nové neaktívne
 vlnenie s predvolenou úrovňou útlmu 26. (Overiť
 to, či je definovaná inštancia vlnenia, je možné pomocou metódy
 máVlnenie.) Naopak, metóda
 jestvujúceVlnenie vráti inštanciu
 vlnenia len v takom prípade, že jestvuje. (V opačnom
 prípade vráti metóda jestvujúceVlnenie hodnotu null.)
Poznámka: Aby mohlo byť vlnenie automaticky vykonávané, tak v prípade vytvorenia novej inštancie ju táto metóda automaticky registruje vo svete grafického robota.
Upozornenie: Ak svet grafického robota
 nemá aktívny časovač, tak vlnenie
 nebude fungovať ani po jeho aktivácii. Táto metóda nespúšťa
 časovač (ani vlnenie) automaticky! Účelom automatického
 vytvorenia inštancie vlnenia touto metódou v prípade jej
 neprítomnosti je len zabránenie vzniku chýb. Táto metóda nemá
 nahradiť metódu pridajVlnenie.
Vlnenie
     definovanej pre tento obrázok aj v takom prípade, že pred jej
     volaním nebola inštancia definovanámáVlnenie(), 
jestvujúceVlnenie(), 
pridajVlnenie(), 
pridajVlnenie(boolean), 
pridajVlnenie(int), 
pridajVlnenie(int, boolean), 
odstráňVlnenie()public Vlnenie jestvujúceVlnenie()
Táto metóda vráti inštanciu vlnenia len v prípade, že jestvuje.
 V opačnom prípade vráti hodnotu null, čo môže viesť
 ku vzniku výnimky, ak sa programátor pokúsi použiť vrátenú
 hodnotu bez overenia. Naopak, vrátenie inštancie
 vlnenia aj v prípade, že ešte nebolo
 definované zaručuje metóda vlnenie.
nullmáVlnenie(), 
vlnenie(), 
pridajVlnenie(), 
pridajVlnenie(boolean), 
pridajVlnenie(int), 
pridajVlnenie(int, boolean), 
odstráňVlnenie()public Vlnenie jestvujuceVlnenie()
 Alias pre
 Alias pre jestvujúceVlnenie.
public Vlnenie existujúceVlnenie()
 Alias pre
 Alias pre jestvujúceVlnenie.
public Vlnenie existujuceVlnenie()
 Alias pre
 Alias pre jestvujúceVlnenie.
public Vlnenie definovanéVlnenie()
 Alias pre
 Alias pre jestvujúceVlnenie.
public Vlnenie definovaneVlnenie()
 Alias pre
 Alias pre jestvujúceVlnenie.
public void pridajVlnenie()
Pridá alebo zresetuje vlnenie tohto obrázka. Ak nie je definované
 alebo aktívne vlnenie pre tento obrázok, tak volanie tejto metódy
 vytvorí a/alebo aktivuje novú inštanciu vlnenia s predvolenou
 úrovňou útlmu 26.
Poznámka: Aby mohlo byť vlnenie automaticky vykonávané, tak v prípade vytvorenia novej inštancie ju táto metóda automaticky registruje vo svete grafického robota.
Ak by svet grafického robota nemal aktívny časovač, tak by vlnenie nemohlo fungovať, preto je časovač touto metódou spúšťaný automaticky.
Inštanciu vlnenia je možné získať a pracovať s ňou pomocou
 metódy vlnenie alebo jestvujúceVlnenie.
Pozor! Ak vlnenie nie je definované,
 tak metóda vlnenie definuje nové neaktívne
 vlnenie s predvolenou úrovňou útlmu 26. Overiť to, či
 je definovaná inštancia vlnenia, je možné pomocou metódy
 máVlnenie. Metóda
 jestvujúceVlnenie vráti inštanciu
 vlnenia len v prípade, že jestvuje. V opačnom prípade vráti hodnotu
 null, čo môže viesť ku vzniku výnimky, ak sa
 programátor pokúsi použiť vrátenú hodnotu bez overenia.
Ak už je definovaná inštancia vlnenia, tak ju volanie tejto
 metódy zresetuje upokojením hladiny a nastavením predvolenej
 úrovne útlmu 26.
 (Aktivácia je vykonaná v každom prípade.)
public void pridajVlnenie(boolean ajČasovač)
Pridá alebo zresetuje vlnenie tohto obrázka. Ak nie je definované
 alebo aktívne vlnenie pre tento obrázok, tak volanie tejto metódy
 vytvorí a/alebo aktivuje novú inštanciu vlnenia s predvolenou
 úrovňou útlmu 26.
Poznámka: Aby mohlo byť vlnenie automaticky vykonávané, tak v prípade vytvorenia novej inštancie ju táto metóda automaticky registruje vo svete grafického robota.
Pozor! Ak svet grafického robota nemá
 aktívny časovač, tak vlnenie
 nebude fungovať. Táto metóda dovoľuje určiť, či má alebo nemá
 byť časovač spustený automaticky. Umožňuje to parameter
 ajČasovač.
Inštanciu vlnenia je možné získať a pracovať s ňou pomocou
 metódy vlnenie alebo jestvujúceVlnenie.
Pozor! Ak vlnenie nie je definované,
 tak metóda vlnenie definuje nové neaktívne
 vlnenie s predvolenou úrovňou útlmu 26. Overiť to, či
 je definovaná inštancia vlnenia, je možné pomocou metódy
 máVlnenie. Metóda
 jestvujúceVlnenie vráti inštanciu
 vlnenia len v prípade, že jestvuje. V opačnom prípade vráti hodnotu
 null, čo môže viesť ku vzniku výnimky, ak sa
 programátor pokúsi použiť vrátenú hodnotu bez overenia.
Ak už je definovaná inštancia vlnenia, tak ju volanie tejto
 metódy zresetuje upokojením hladiny a nastavením predvolenej
 úrovne útlmu 26.
 (Aktivácia je vykonaná v každom prípade.)
ajČasovač – ak je hodnota tohto parametra rovná
     true, tak je v prípade jeho nečinnosti
     automaticky spustený časovačmáVlnenie(), 
vlnenie(), 
jestvujúceVlnenie(), 
pridajVlnenie(), 
pridajVlnenie(int), 
pridajVlnenie(int, boolean), 
odstráňVlnenie()public void pridajVlnenie(int útlm)
Pridá alebo zresetuje vlnenie tohto obrázka. Ak nie je definované
 alebo aktívne vlnenie pre tento obrázok, tak volanie tejto metódy
 vytvorí a/alebo aktivuje novú inštanciu vlnenia so zadanou úrovňou
 útlmu (pozri aj Vlnenie.útlm(útlm)).
Poznámka: Aby mohlo byť vlnenie automaticky vykonávané, tak v prípade vytvorenia novej inštancie ju táto metóda automaticky registruje vo svete grafického robota.
Ak by svet grafického robota nemal aktívny časovač, tak by vlnenie nemohlo fungovať, preto je časovač touto metódou spúšťaný automaticky.
Inštanciu vlnenia je možné získať a pracovať s ňou pomocou
 metódy vlnenie alebo jestvujúceVlnenie.
Pozor! Ak vlnenie nie je definované,
 tak metóda vlnenie definuje nové neaktívne
 vlnenie s predvolenou úrovňou útlmu 26. Overiť to, či
 je definovaná inštancia vlnenia, je možné pomocou metódy
 máVlnenie. Metóda
 jestvujúceVlnenie vráti inštanciu
 vlnenia len v prípade, že jestvuje. V opačnom prípade vráti hodnotu
 null, čo môže viesť ku vzniku výnimky, ak sa
 programátor pokúsi použiť vrátenú hodnotu bez overenia.
Ak už je definovaná inštancia vlnenia, tak ju volanie tejto metódy zresetuje upokojením hladiny a nastavením zadanej úrovne útlmu. (Aktivácia je vykonaná v každom prípade.)
útlm – požadovaná úroveň útlmu vlnenia; odporúčané sú
     hodnoty v rozmedzí 0 – 30; pozri aj Vlnenie.útlm(útlm)máVlnenie(), 
vlnenie(), 
jestvujúceVlnenie(), 
pridajVlnenie(), 
pridajVlnenie(boolean), 
pridajVlnenie(int, boolean), 
odstráňVlnenie(), 
Vlnenie.útlm(int)public void pridajVlnenie(int útlm,
                          boolean ajČasovač)
Pridá alebo zresetuje vlnenie tohto obrázka. Ak nie je definované
 alebo aktívne vlnenie pre tento obrázok, tak volanie tejto metódy
 vytvorí a/alebo aktivuje novú inštanciu vlnenia so zadanou úrovňou
 útlmu (pozri aj Vlnenie.útlm(útlm)).
Poznámka: Aby mohlo byť vlnenie automaticky vykonávané, tak v prípade vytvorenia novej inštancie ju táto metóda automaticky registruje vo svete grafického robota.
Pozor! Ak svet grafického robota nemá
 aktívny časovač, tak vlnenie
 nebude fungovať. Táto metóda dovoľuje určiť, či má alebo nemá
 byť časovač spustený automaticky. Umožňuje to parameter
 ajČasovač.
Inštanciu vlnenia je možné získať a pracovať s ňou pomocou
 metódy vlnenie alebo jestvujúceVlnenie.
Pozor! Ak vlnenie nie je definované,
 tak metóda vlnenie definuje nové neaktívne
 vlnenie s predvolenou úrovňou útlmu 26. Overiť to, či
 je definovaná inštancia vlnenia, je možné pomocou metódy
 máVlnenie. Metóda
 jestvujúceVlnenie vráti inštanciu
 vlnenia len v prípade, že jestvuje. V opačnom prípade vráti hodnotu
 null, čo môže viesť ku vzniku výnimky, ak sa
 programátor pokúsi použiť vrátenú hodnotu bez overenia.
Ak už je definovaná inštancia vlnenia, tak ju volanie tejto metódy zresetuje upokojením hladiny a nastavením zadanej úrovne útlmu. (Aktivácia je vykonaná v každom prípade.)
útlm – požadovaná úroveň útlmu vlnenia; odporúčané sú
     hodnoty v rozmedzí 0 – 30; pozri aj Vlnenie.útlm(útlm)ajČasovač – ak je hodnota tohto parametra rovná
     true, tak je v prípade jeho nečinnosti
     automaticky spustený časovačmáVlnenie(), 
vlnenie(), 
jestvujúceVlnenie(), 
pridajVlnenie(), 
pridajVlnenie(boolean), 
pridajVlnenie(int), 
odstráňVlnenie(), 
Vlnenie.útlm(int)public void odstráňVlnenie()
Ukončí vlnenie a úplne odstráni inštanciu vlnenia tohto obrázka z prostredia programovacieho rámca GRobot.
public void odstranVlnenie()
 Alias pre
 Alias pre odstráňVlnenie.
public double rýchlosť()
Vráti aktuálnu rýchlosť prehrávania animácie (bez ohľadu na to,
 či je práve animácia spustená alebo nie). Rýchlosť je vyjadrená
 pomerne. Hodnota 1.0 znamená skutočnú rýchlosť určenú
 hodnotami trvania zobrazenia snímok
 animácie, 2.0 znamená dvojnásobnú rýchlosť a tak
 podobne. Záporná hodnota znamená, že animácia je prehrávaná
 pospiatku.
public double rychlost()
 Alias pre
 Alias pre rýchlosť.
public double rýchlosťAnimácie()
Vráti aktuálnu rýchlosť prehrávania animácie (bez ohľadu na to,
 či je práve animácia spustená alebo nie). Rýchlosť je vyjadrená
 pomerne. Hodnota 1.0 znamená skutočnú rýchlosť určenú
 hodnotami trvania zobrazenia snímok
 animácie, 2.0 znamená dvojnásobnú rýchlosť a tak
 podobne. Záporná hodnota znamená, že animácia je prehrávaná
 pospiatku.
public double rychlostAnimacie()
 Alias pre
 Alias pre rýchlosťAnimácie.
public void rýchlosť(double nováRýchlosť)
Upraví rýchlosť prehrávania animácie (bez ohľadu na to, či je
 práve animácia spustená alebo nie). Rýchlosť je vyjadrená pomerne.
 Hodnota 1.0 znamená skutočnú rýchlosť určenú hodnotami
 trvania zobrazenia snímok animácie,
 2.0 znamená dvojnásobnú rýchlosť a tak podobne. Záporná
 hodnota znamená, že animácia bude prehrávaná pospiatku a nula
 znamená, že animácia má byť zastavená (pričom pôvodná rýchlosť
 prehrávania nebude zmenená).
nováRýchlosť – nová rýchlosť animácie; záporná hodnota
     znamená smer prehrávania animácie pospiatku; nulová hodnota
     nezmení skutočnú rýchlosť prehrávania, ale len zastaví
     vykonávanie animácie (ak prebiehalo)public void rychlost(double nováRýchlosť)
 Alias pre
 Alias pre rýchlosť.
public void rýchlosťAnimácie(double nováRýchlosť)
Upraví rýchlosť prehrávania animácie (bez ohľadu na to, či je
 práve animácia spustená alebo nie). Rýchlosť je vyjadrená pomerne.
 Hodnota 1.0 znamená skutočnú rýchlosť určenú hodnotami
 trvania zobrazenia snímok animácie,
 2.0 znamená dvojnásobnú rýchlosť a tak podobne. Záporná
 hodnota znamená, že animácia bude prehrávaná pospiatku a nula
 znamená, že animácia má byť zastavená (pričom pôvodná rýchlosť
 prehrávania nebude zmenená).
nováRýchlosť – nová rýchlosť animácie; záporná hodnota
     znamená smer prehrávania animácie pospiatku; nulová hodnota
     nezmení skutočnú rýchlosť prehrávania, ale len zastaví
     vykonávanie animácie (ak prebiehalo)public void rychlostAnimacie(double nováRýchlosť)
 Alias pre
 Alias pre rýchlosťAnimácie.
public int početSnímok()
Vráti aktuálny počet snímok animácie uloženej v tomto obrázku. Nula znamená, že tento obrázok nie je animovaný.
Každá nová snímka je vnútorne reprezentovaná ako samostatná
 kópia grafickej informácie obrázka, ktorá môže byť prenesená
 z alebo do hlavnej grafiky obrázka. Tento proces prenosu môže byť
 jednostranný (počas animácie) alebo obojstranný (pri zmene snímky
 alebo pri ukladaní alebo čítaní obrázka zo súboru). To znamená, že
 ak nie je spustená animácia, tak sa medzi snímkami môžeme posúvať
 metódami prváSnímka, ďalšiaSnímka, predchádzajúcaSnímka,
 predchádzajúcaSnímka a snímka(ktorá) a vtedy je zaručené, že sa pri posune medzi snímkami
 zároveň stihnú aktualizovať grafické informácie, ktoré boli
 medzičasom vykonané v hlavnej grafike obrázka. Naopak, ak je
 animácia spustená, môže kedykoľvek nastať prepísanie hlavnej
 grafiky grafikou niektorej snímky a prípadné zmeny sa nemusia
 stihnúť uložiť. Počas procesu animácie (ktorý je automaticky
 vykonávaný na pozadí) sa totiž údaje z hlavnej grafiky
 z optimalizačných dôvodov neuchovávajú späť do snímok.
public int pocetSnimok()
 Alias pre
 Alias pre početSnímok.
public void pridajSnímku()
Pridá novú snímku na koniec animácie s aktuálnou (naposledy použitou) hodnotou trvania zobrazenia a s aktuálnou grafikou obrázka.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
public void pridajSnimku()
 Alias pre
 Alias pre pridajSnímku.
public void pridajSnímku(Image obrázok)
Pridá novú snímku na koniec animácie s aktuálnou (naposledy použitou) hodnotou trvania zobrazenia a so zadanou grafikou.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
obrázok – grafika novej snímkypublic void pridajSnimku(Image obrázok)
 Alias pre
 Alias pre pridajSnímku.
public void pridajSnímku(Image obrázok, double trvanie)
Pridá novú snímku na koniec animácie so zadanou grafikou a so zadanou hodnotou trvania jej zobrazenia.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
obrázok – grafika novej snímkytrvanie – čas zobrazenia snímky v sekundách s presnosťou
     na tisícinypublic void pridajSnimku(Image obrázok, double trvanie)
 Alias pre
 Alias pre pridajSnímku.
public void vložSnímku(int indexSnímky)
Vloží novú snímku animácie na zadanú pozíciu s aktuálnou (naposledy použitou) hodnotou trvania zobrazenia a s aktuálnou grafikou obrázka.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)public void vlozSnimku(int indexSnímky)
 Alias pre
 Alias pre vložSnímku.
public void vložSnímku(int indexSnímky,
                       Image obrázok)
Vloží novú snímku animácie na zadanú pozíciu s aktuálnou (naposledy použitou) hodnotou trvania zobrazenia a so zadanou grafikou.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)obrázok – grafika novej snímkypublic void vlozSnimku(int indexSnímky,
                       Image obrázok)
 Alias pre
 Alias pre vložSnímku.
public void vložSnímku(int indexSnímky,
                       Image obrázok,
                       double trvanie)
Vloží novú snímku animácie na zadanú pozíciu so zadanou grafikou a so zadanou hodnotou trvania jej zobrazenia.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)obrázok – grafika novej snímkytrvanie – čas zobrazenia snímky v sekundách s presnosťou
     na tisícinypublic void vlozSnimku(int indexSnímky,
                       Image obrázok,
                       double trvanie)
 Alias pre
 Alias pre vložSnímku.
public void vymažSnímku()
Vymaže aktuálnu snímku animácie a aktivuje najbližšiu dostupnú snímku. Ak to bola posledná snímka v obrázku, tak zostane nastavená jej grafika a prípadná prebiehajúca animácia sa zastaví.
public void vymazSnimku()
 Alias pre
 Alias pre vymažSnímku.
public void vymažSnímku(int indexSnímky)
Vymaže zadanú snímku animácie a ak to bola aktívna snímka, tak aktivuje najbližšiu dostupnú snímku. Ak to bola posledná zostávajúca snímka v tomto obrázku, tak zostane nastavená jej grafika a prípadná prebiehajúca animácia sa zastaví.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)public void vymazSnimku(int indexSnímky)
 Alias pre
 Alias pre vymažSnímku.
public void ďalšiaSnímka()
Aktivuje nasledujúcu snímku animácie.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
public void dalsiaSnimka()
 Alias pre
 Alias pre ďalšiaSnímka.
public void predchádzajúcaSnímka()
Aktivuje predchádzajúcu snímku animácie.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
public void predchadzajucaSnimka()
 Alias pre
 Alias pre predchádzajúcaSnímka.
public void prváSnímka()
Aktivuje prvú snímku animácie.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
public void prvaSnimka()
 Alias pre
 Alias pre prváSnímka.
public void poslednáSnímka()
Aktivuje poslednú snímku animácie.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
public void poslednaSnimka()
 Alias pre
 Alias pre poslednáSnímka.
public void snímka(int indexSnímky)
Aktivuje zadanú snímku animácie.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)public void snimka(int indexSnímky)
 Alias pre
 Alias pre snímka.
public int snímka()
Vráti index aktívnej snímky animácie.
public int snimka()
 Alias pre
 Alias pre snímka.
public double trvanie()
Zistí hodnotu trvania zobrazenia aktívnej snímky. (Prípadne aktuálnu naposledy použitú hodnotu trvania, ak animácia nemá žiadne snímky.)
public double trvanie(int indexSnímky)
Zistí hodnotu trvania zobrazenia zadanej snímky. (Prípadne aktuálnu naposledy použitú hodnotu trvania, ak animácia nemá žiadne snímky.)
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)public double trvanieZobrazeniaSnímky()
Zistí hodnotu trvania zobrazenia aktívnej snímky. (Prípadne aktuálnu naposledy použitú hodnotu trvania, ak animácia nemá žiadne snímky.)
public double trvanieZobrazeniaSnimky()
 Alias pre
 Alias pre trvanieZobrazeniaSnímky.
public double trvanieZobrazeniaSnímky(int indexSnímky)
Zistí hodnotu trvania zobrazenia zadanej snímky. (Prípadne aktuálnu naposledy použitú hodnotu trvania, ak animácia nemá žiadne snímky.)
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)public double trvanieZobrazeniaSnimky(int indexSnímky)
 Alias pre
 Alias pre trvanieZobrazeniaSnímky.
public void trvanie(double trvanie)
Nastaví novú hodnotu trvania aktívnej snímky.
trvanie – nový čas zobrazenia aktívnej snímky v sekundách
     s presnosťou na tisícinypublic void trvanie(int indexSnímky,
                    double trvanie)
Nastaví novú hodnotu trvania zadanej snímky.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)trvanie – nový čas zobrazenia cieľovej snímky v sekundách
     s presnosťou na tisícinypublic void trvanieZobrazeniaSnímky(double trvanie)
Nastaví novú hodnotu trvania aktívnej snímky.
trvanie – nový čas zobrazenia aktívnej snímky v sekundách
     s presnosťou na tisícinypublic void trvanieZobrazeniaSnimky(double trvanie)
 Alias pre
 Alias pre trvanieZobrazeniaSnímky.
public void trvanieZobrazeniaSnímky(int indexSnímky,
                                    double trvanie)
Nastaví novú hodnotu trvania zadanej snímky.
indexSnímky – index cieľovej snímky; platí to, čo pri všetkých
     metódach pracujúcich s indexmi snímok – ak je táto hodnota
     väčšia alebo rovná než je aktuálny počet snímok, tak bude
     prepočítaná
     tak, aby ukazovala na adekvátne vzdialenú snímku v rámci
     cyklickej animácie (čiže hodnota rovná počtu snímok bude
     presmerovaná na prvú snímku – s indexom nula, hodnota o jedno
     vyššia na druhú – s indexom dva
     a tak ďalej); záporné hodnoty budú prepočítané v opačnom
     smere (od konca animácie)trvanie – nový čas zobrazenia cieľovej snímky v sekundách
     s presnosťou na tisícinypublic void trvanieZobrazeniaSnimky(int indexSnímky,
                                    double trvanie)
 Alias pre
 Alias pre trvanieZobrazeniaSnímky.
public boolean animujeSa()
Zistí, či je práve spustená animácia obrázka.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
true ak je práve spustená animácia obrázka,
     false v opačnom prípadepublic int opakovaniaAnimácie()
Zistí, koľko opakovaní zostáva do ukončenia animácie. Hodnota
 -1 znamená, že animácia má byť prehrávaná
 donekonečna.
-1 v prípade nekonečne sa opakujúcej animáciepublic int opakovaniaAnimacie()
 Alias pre
 Alias pre opakovaniaAnimácie.
public int početOpakovaní()
Zistí, koľko opakovaní zostáva do ukončenia animácie. Hodnota
 -1 znamená, že animácia má byť prehrávaná
 donekonečna.
-1 v prípade nekonečne sa opakujúcej animáciepublic int pocetOpakovani()
 Alias pre
 Alias pre početOpakovaní.
public void opakovaniaAnimácie(int početOpakovaní)
Ak má tento obrázok nenulový počet snímok animácie, tak táto
 metóda nastaví nový počet opakovaní animácie zostávajúci do
 ukončenia animácie a to bez ohľadu na to, či je animácia spustená
 alebo nie. Hodnota -1 znamená, že animácia má byť
 prehrávaná donekonečna. Ak je zadaná nula, tak prípadná spustená
 animácia bude zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void opakovaniaAnimacie(int početOpakovaní)
 Alias pre
 Alias pre opakovaniaAnimácie.
public void početOpakovaní(int početOpakovaní)
Ak má tento obrázok nenulový počet snímok animácie, tak táto
 metóda nastaví nový počet opakovaní animácie zostávajúci do
 ukončenia animácie a to bez ohľadu na to, či je animácia spustená
 alebo nie. Hodnota -1 znamená, že animácia má byť
 prehrávaná donekonečna. Ak je zadaná nula, tak prípadná spustená
 animácia bude zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void pocetOpakovani(int početOpakovaní)
 Alias pre
 Alias pre početOpakovaní.
public void spusti()
Spustí animáciu s nekonečným počtom opakovaní v naposledy použitom smere prehrávania. Ak bola animácia už spustená, tak iba nastaví nekonečný počet opakovaní.
public void spustiAnimáciu()
Spustí animáciu s nekonečným počtom opakovaní v naposledy použitom smere prehrávania. Ak bola animácia už spustená, tak iba nastaví nekonečný počet opakovaní.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
public void spustiAnimaciu()
 Alias pre
 Alias pre spustiAnimáciu.
public void spusti(int početOpakovaní)
Spustí animáciu so zadaným počtom opakovaní v naposledy použitom smere prehrávania. Ak bola animácia už spustená, tak iba nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimáciu(int početOpakovaní)
Spustí animáciu so zadaným počtom opakovaní v naposledy použitom smere prehrávania. Ak bola animácia už spustená, tak iba nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimaciu(int početOpakovaní)
 Alias pre
 Alias pre spustiAnimáciu.
public void spustiDopredu()
Spustí animáciu dopredu s nekonečným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania a nastaví nekonečný počet opakovaní.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
public void spustiAnimáciuDopredu()
Spustí animáciu dopredu s nekonečným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania a nastaví nekonečný počet opakovaní.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
public void spustiAnimaciuDopredu()
 Alias pre
 Alias pre spustiAnimáciuDopredu.
public void spustiDopredu(int početOpakovaní)
Spustí animáciu dopredu so zadaným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania a nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimáciuDopredu(int početOpakovaní)
Spustí animáciu dopredu so zadaným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania a nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimaciuDopredu(int početOpakovaní)
 Alias pre
 Alias pre spustiAnimáciuDopredu.
public void spustiPospiatku()
Spustí animáciu pospiatku s nekonečným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania (pospiatku) a nastaví nekonečný počet opakovaní.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
public void spustiAnimáciuPospiatku()
Spustí animáciu pospiatku s nekonečným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania (pospiatku) a nastaví nekonečný počet opakovaní.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
public void spustiAnimaciuPospiatku()
 Alias pre
 Alias pre spustiAnimáciuPospiatku.
public void spustiPospiatku(int početOpakovaní)
Spustí animáciu pospiatku so zadaným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania (pospiatku) a nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimáciuPospiatku(int početOpakovaní)
Spustí animáciu pospiatku so zadaným počtom opakovaní. Ak bola animácia už spustená, tak iba upraví smer prehrávania (pospiatku) a nastaví zadaný počet opakovaní. Ak je zadaný počet opakovaní rovný nule, tak je animácia zastavená.
Upozornenie: Počítadlo opakovaní sa vzťahuje na momenty reštartovania animácie, to znamená, že hodnota počítadla je znížená po prejdení animácie z konca na začiatok alebo naopak, podľa smeru prehrávania animácie. To znamená, že ak nie je nastavená správna snímka (začiatočná alebo koncová podľa smeru prehrávania), tak sa môže animácia skončiť hneď po jej spustení (ak malo byť vykonané len jedno opakovanie) alebo sa nevykoná celá, podľa toho, ktorá snímka bola práve aktívna.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
početOpakovaní – počet opakovaní animácie, po ktorom sa
     animácia ukončí; hodnota -1 je rezervovaná pre
     nekonečný počet opakovaní (v skutočnosti akákoľvek zadaná
     záporná hodnota nastaví počet opakovaní na hodnotu
     -1); hodnota 0 spôsobí zastavenie
     animácie (ak náhodou prebieha)public void spustiAnimaciuPospiatku(int početOpakovaní)
 Alias pre
 Alias pre spustiAnimáciuPospiatku.
public void zastav()
Zastaví prehrávanie animácie tohto obrázka.
Poznámka: Pozri aj informácie o snímkach
 uvedené v opise metódy početSnímok (tieto
 informácie súvisia aj s vykonávaním animácie).
Táto metóda je vo viacerých prípadoch spúšťaná automaticky.
 Napríklad po dokončení všetkých opakovaní animácie, nastavení počtu opakovaní alebo rýchlosti
 prehrávania animácie na nulu, vymazaní všetkých snímok animácie a podobne. Ak animácia
 prebiehala, tak vykonanie tejto metódy spustí prekryté reakcie
 robota zastavenieAnimácie a/alebo rovnomennú reakciu aktívnej obsluhy
 udalostí – zastavenieAnimácie.
public void zastavAnimáciu()
 Alias pre
 Alias pre zastav.
public void zastavAnimaciu()
 Alias pre
 Alias pre zastav.