Upozornenie
Toto je pôvodné prvé vydanie dokumentácie pre verziu knižnice grafického robota 1.0 beta. V súčasnosti už nie je aktuálne.
Novšie vydanie dokumentácie pre verziu 1.50 je publikované na nasledujúcej adrese:
http://cec.truni.sk/horvath/GRobot/
public class Robot extends Object
Táto dokumentácia je podporným materiálom na vyučovanie úvodu do programovania v Jave s podporou skupiny tried grafického robota. Obsahuje úplný opis všetkých tried a metód vrátane príkladov použitia. (Materiál môže byť priebežne aktualizovaný, preto odporúčame sledovať tieto stránky.) Novšie verzie robota (máme na mysli fungujúcu skupinu tried) budú publikované na stránkach autora (buď samostatne, alebo v rámci generátora projektov pre BlueJ, ktorý spomíname neskôr).
Skupina tried robota má uľahčiť vstup do problematiky programovania. Programovanie je široká oblasť. Vstup do tejto problematiky s použitím „čistého“ jazyka Java považujeme za náročný, preto vznikla táto podporná skupina tried. Aby bol tento nástroj použiteľný, bolo nevyhnutné vypracovanie kompletnej dokumentácie, ktorú ponúkame na týchto stránkach.
Grafický robot je skonštruovaný vo svete s dvoma plátnami, na ktoré môže kresliť. Jeho funkcionalitu zabezpečuje najmä
hlavná trieda Robot
. Okrem nej jestvuje vo svete robota vyše
tucet ďalších tried, ktoré podporujú fungovanie robotov, sveta, oboch plátien a ďalších prvkov, akými sú
napríklad obrázky, zvuky,
farby, zoznamy, udalosti, súbory a podobne…
Niektoré triedy sú takpovediac „zapuzdrovacie“ – zapuzdrujú a rozširujú funkcionalitu pôvodných tried Javy (projekt robota vnútorne importuje asi 70 tried Javy – z nich vystupujú na povrch len niektoré). Zapuzdrovacie triedy vznikli prirodzeným vývojom – na zjednodušenie používania robota. Vhodne doĺňajú jeho funkcionalitu a rozširujú jeho možnosti.
Nasledovný príklad ukazuje ako naprogramovať robota tak, aby nakreslil trojuholník (rovnostranný):
for
(int
i =0
; i <3
; ++i) {dopredu
(50.0
);doprava
(120.0
); }
Výsledok kreslenia trojuholníka
Príklad trikrát zopakuje dvojicu príkazov na pohyb robota o 50 bodov dopredu a otočenie o 120° doprava. Tým dostaneme trojuholník. (Na zamyslenie: prečo sa otáčame o 120°? Keď príklad chceme prepracovať tak, aby sa ním dal nakresliť ľubovoľný pravidelný n-uholník, musíme poznať odpoveď na túto otázku… Predtým, než sa pozriete na riešenie, skúste porozmýšľať…)
Príklad sme prepracovali tak, aby kreslil ľubovoľný pravidelný n-uholník so želanou dĺžkou strany. Zaviedli sme dve pomocné premenné, ktorých hodnoty stačí zmeniť:
int
početUhlov =3
;double
dĺžkaStrany =50.0
;for
(int
i =0
; i < početUhlov; ++i) {dopredu
(dĺžkaStrany);doprava
(360.0
/ početUhlov); }
Všetky príklady v rámci tejto dokumentácie je nutné umiestniť do triedy. Vhodná je napríklad nasledovná schéma:
(Poznámka: rovnakú schému generuje aj šablóna „Hlavná
trieda aplikácie“ v slovenskom preklade softvéru BlueJ a tak isto aj
generátor projektov od autora skupiny
tried Robot
, ktorý nájdete na jeho stránkach. Spomínaný generátor projektov uľahčuje študentom vytvorenie nového
projektu BlueJ
a následný import skupiny tried Robot do projektu, ktorý by inak museli
vykonávať ručne.)
public
class
«názov triedy»
extends
Robot {public
«názov triedy»
() {«sem vložte kód príkladu»
}public
static
void
main(String[] args) {new
«názov triedy»
(); } }
Za «názov triedy» treba doplniť vhodný názov – mal by vystihovať podstatu (toho, čo trieda robí). Na miesto «sem vložte kód príkladu» treba vložiť príklad… Vyššie uvedený príklad s kreslením trojuholníka vyzerá v schéme triedy takto:
public
class
Trojuholníkextends
Robot {public
Trojuholník() { }public
static
void
main(String[] args) {new
Trojuholník(); } }
Funkčné prvky tried môžeme rozdeliť do dvoch základných kategórií:
Metódy sa starajú o fungovanie objektu počas jeho bytia, konštruktory
spolupracujú pri vytváraní nového objektu. Konštruktor je vlastne
špeciálnou odrodou metódy, ktorá nesmie mať určený žiadny návratový typ
a musí sa volať rovnako ako trieda. Podľa toho ich ľahko rozlíšime.
Nasledovný príklad definuje jednoduchú triedu Šípka
s konštruktorom a metódou:
public
class
Šípka
extends
Robot {public
Šípka
() { definujVlastnýTvar(); }private
void
definujVlastnýTvar() {vlastnýTvar
(new
VlastnýTvar
() {public
void
kresli
(Robot r) {doprava
(15
);dopredu
(20
);doprava
(150
);dopredu
(20
);// …
} }); } }
Okrem tohto rozdelenia, môžeme metódy rozdeliť do ďalších kategórií
podľa účelu. Z programátorského fyzického hľadiska (z pohľadu jazyka
Java) medzi nimi rozdiel nie je, ale z programátorského
logického[1] hľadiska (z pohľadu programátora) ten rozdiel
(prinajmenšom pre každého skúsenejšieho programátora) vidno. Jasne sa
rysujú najmä dva druhy metód – takzvané „gettery“ a „settery“, čo je
nepreložiteľný názov vyplývajúci z účelu metód. Getter (z anglického
„get“ – vziať) číta hodnotu vlastnosti a setter (z anglického „set“ –
nastaviť) ju, naopak, zapisuje. Jednou z hlavných myšlienok objektovo
orientovaného programovania vždy bolo mať súkromné vlastnosti a verejné
metódy, ktoré s nimi pracujú. Z toho sa vyvinuli gettery a settery, ktoré
síce nenašli pevné zakotvenie priamo v jazyku Java, ale programátori ich
odlišujú od „klasických“ metód. Našiel sa aj zaužívaný spôsob vyjadrenia
tejto skutočnosti v programe – najjednoduchší možný – v názve metódy.
Gettery začínajú anglickým „get“ a settery „set“… Takto by vyzeral
jednoduchý príklad triedy Osoba
s vlastnosťou vek
a príslušným getterom a setterom:
[1] – termín „logický“ je v počítačovej terminológii často používaný ako opak „fyzického“; logický môže znamenať všeobecný, nekonkrétny, patriaci do istej množiny, vytvorený pre isté potreby… naopak fyzický znamená kokrétny, pevný, daný…
public
class
Osoba {private
int
vek;public
int
getVek() {return
vek; }public
void
setVek(int
vek) {if
(vek <0
)throw
new
IllegalArgumentException("Vek nesmie byť záporný"
);this
.vek = vek; } }
V slovenskom názve anglické slovká get a set nevyzerajú príliš dobre,
preto sme sa rozhodli ich v rámci projektu grafického robota zamlčať.
Namiesto toho používame v rámci dokumentácie ikonu na getter
a
na setter. Funkčnosť metód sa tým, samozrejme, nemení,
ibaže bez explicitného uvedenia „get“ a „set“ v názve ich nie je možné na
prvý pohľad (podľa názvu) rozoznať, preto sa snažíme to kompenzovať aspoň
v dokumentácii pomocou ikon. Jestvujú vlastnosti, ktoré nemajú žiadny
setter. Z toho vyplýva, že sú určené len na čítanie. Výskyt opačného typu
vlastností (len na zápis) je v praxi veľmi zriedkavá (keďže). Obvykle by
každá vlastnosť mala mať možnosť čítania hodnoty. V robotovi sa
vlastnosti určené len na zápis nevyskytujú.
Trieda
Robot
a všetky triedy tohto balíčka majú definované veľké
množstvo takzvaných aliasov. Aliasy sú presne tým, čo slovo
„alias“ vyjadruje – prezývkami. Potreba ich vzniku vyplynula z častých
(mnohokrát zbytočných) omylov začínajúcich programátorov pri používaní
robota. Tie súviseli s nejednoznačnosťou slovenského jazyka, v ktorom
jestvuje množstvo synoným (dopredu, vpred, dozadu, vzad a podobne). Časom
bolo jasné, že na všetko nebude možné vytvoriť alias, preto po dosiahnutí
istej úrovne nasýtenia už ďalšie aliasy nevznikali. Avšak tie, ktoré boli
definované dovtedy, už v robotovi zostali. Alias vo väčšine prípadov iba
volá originálnu metódu (resp. kopíruje správanie originálnej triedy,
keďže aliasom môže byť i celá trieda). Z technického pohľadu to mierne
zvyšuje režijné náklady na činnosť programu, preto skúsenejším
programátorom odporúčame používať vždy originálne metódy, nie aliasy. Tak
isto, čo sa týka aliasov tried, originálne triedy sú podrobnejšie
testované, preto opäť odporúčame používať tie.
Skupina tried grafického robota je do značnej miery inšpirovaná filozofiou programovacieho jazyka Logo a jeho pokračovateľov… Logo je programovací jazyk používaný vo výučbe. Keďže originál jazyka je určený pre anglicky hovoriace deti a študentov, vzniká po svete množstvo jazykových mutácií. Spomeňme dve najdôležitejšie v slovenskom jazyku: Comenius Logo a úspešného pokračovateľa Imagine. Vo svete Loga ide o programovanie kresliacej korytnačky, takže učiaci sa môže hneď vidieť výsledky svojej snahy. Z toho je odvodený termín „korytnačia grafika“. Svet grafického robota sa snaží tieto princípy poskytnúť pre začínajúcich (i pokročilých) programujúcich v programovacom jazyku Java. Pozrime sa na stručnú históriu vývoja grafického robota…
Začalo sa to vývojom triedy Korytnačka
niekedy v auguste roku
2010. Prvé verzie triedy Korytnačka
(približne po verziu 4.0)
boli významnou mierou inšpirované triedou Turtle
autora Alfreda
Herma (Odkaz: Alfred Hermes, Turtle class, 6a, 14.12.2003,
English), ktorá je súčasťou balíka BlueJ. Boli jej
rozšírením a dá sa povedať, že s ňou boli spätne kompatibilné.
Ďalšie verzie sa od pôvodnej idey značne odchýlili, preto nebola
deklarovaná spätná kompatibilita s pôvodnou triedou Turtle
, ani
prvými verziami korytnačky. Takže môžeme povedať, že približne od verzie
4.0, ktorá vznikala niekedy koncom zimného semestra akademického roka
2010/2011, začal vývoj samostatnej triedy Korytnačka
, ktorá už
nebola postavená na jadre pôvodnej triedy Turtle
.
Na stránkach univerzity v Princetone (Zdroj: http://www.cs.princeton.edu/introcs/stdlib/)
sme našli sústavu knižníc pre študentov. Z nich nás zaujala najmä trieda
Draw
, ktorou bola inšpirovaná nová séria korytnačiek (beta verzia
nového radu bola vyvíjaná pod pracovným názvom Želva
a bola už
postavená na triedach s príponou 2D – napr. Graphics2D
…). Postupne pribúdali nové a nové zahniezdené triedy a do
stavu s funkčnou lúkou, oblohou, súbormi, udalosťami, zjednodušeným
časovačom a tak ďalej, sa trieda postupne prepracovávala od verzie 5.0
vyššie.
Priebežne prechádzala výraznými úpravami, nie všetky čiastkové verzie boli publikované. Od verzie 6.9 boli k dispozícii aliasy všetkých metód a vlastností aj bez diakritiky. Táto verzia však nikdy neopustila súkromie prostredia svojho vzniku. Priniesla množstvo novej funkcionality, ďalšie nové zahniezdené triedy, metódy, zavrhla niektoré staršie koncepty, iné ponechala… Tým sa spätná kompatibilita opäť výrazne porušila.
Verzia korytnačky 7.0 už „neuniesla“ svoje meno a na jej báze vznikol
nový projekt. Keďže študenti (neznalí histórie Loga) mali veľa otázok
ohľadom pomenovania a fungovania takto pomenovanej triedy (Korytnačka
– ako to, že kreslí – učíte nás, že názvy majú byť
výstižné…) a i samotná postupne sa rozrastajúca korytnačka sa od
pôvodného konceptu pridŕžajúceho sa Logovskej jednoduchosti značne
odchýlila, rozhodli sme, že zmena názvu a založenie nového projektu
novému konceptu iba prospeje.
Testovanie prvej beta verzie triedy Robot
0.6 sa začalo koncom
augusta 2011 – rok po začatí vývoja pôvodnej korytnačky. Koncom
septembra, po rozsiahlych úpravách a revíziách, prekročila verzia číslo
0.8 (pričom sme sa rozhodli, že verzia 1.0 bude priradená až prvej úplnej
(v 0.8 stále chýbala definícia jednej triedy) a riadne otestovanej verzii
triedy Robot
).
1. | Keogh, James: Java bez předchozích znalostí – průvodce pro samouky. 1. vyd. Brno : Computer Press, 2005. ISBN 80-251-0839-2. |
2. | Kalaš, Ivan a kol.: Informatika pre stredné školy. Bratislava : SPN, 2001. ISBN 80-08-01518-7. |
3. | Zajacová, Katarína: Základy programovania. Trnava : 2010. [online]. Dostupné na: http://cec.truni.sk/zajacova/2010_ZP_Java/index.html. |
4. | Hudeková, Dominika: Zbierka úloh v Jave. Trnava : 2012. [online]. Dostupné na: http://cec.truni.sk/hudekova/2012_ZU_Java/index.html. |
1. | Barnes, J. David – Kölling Michael: Objects First with Java: A Practical Introduction Using BlueJ: International Edition. 5/E. Canterbury, Kent : University of Kent, 2012. ISBN 978-013-283554-1. |
2. | The Java Tutorials (Learning the Java Language). Oracle, 1995, 2012. [online]. Dostupné na: http://docs.oracle.com/javase/tutorial/. |
3. | Java Platform Standard Edition 7 Documentation. Oracle. [online]. Dostupné na: http://docs.oracle.com/javase/7/docs/. |
(Poznámka: dokumentácia síce zatiaľ neprešla jazykovou
korektúrou, avšak jednou z našich priorít je používanie spisovného
jazyka. Pri tejto príležitosti si dovoľujeme
upozorniť našich súčasníkov na najčastejšie omyly pri používaní
spisovného jazyka: užívateľ/používateľ; slučka/cyklus (ak
ide o proces, tak určite cyklus, slučka je „výrobok“ (napr. pasca), nie „proces“);
klávesa/kláves (mužský rod); snímok/snímka (ženský rod); doporučovať/odporúčať (poslať doporučene môžeme zásielku na
pošte, ale nie niečo niekomu radiť); jedná sa o/ide o
(„jednať sa“ znamená v slovenčine „dohovárať sa o cene”);
nieje/nie je; veľa krát veľakrát, vo všeobecnosti: n krát,
n-tý krát, n-krát, n-týkrát, teda:
dva krát dvakrát, desiaty krát, desiatykrát…)
Modifikátor a typ | Trieda a opis |
---|---|
static class |
Robot.Farba
Trieda je určená na prácu s farbami v grafickom svete kresliaceho
robota.
|
static class |
Robot.Klaves
![]() Kláves . |
static class |
Robot.Kláves
Trieda je určená na použitie s udalosťami klávesnice (
KeyEvent ). |
static class |
Robot.Oblast
![]() Oblasť . |
static class |
Robot.Oblasť
Trieda je rozšírením triedy Javy
Area . |
static class |
Robot.Obrazok
![]() Obrázok . |
static class |
Robot.Obrázok
Obrázok je rozšírením triedy Javy
BufferedImage
nielen o funkcionalitu bežne používanú vo svete grafického robota. |
protected static class |
Robot.ObsluhaUdalosti
![]() ObsluhaUdalostí . |
protected static class |
Robot.ObsluhaUdalostí
Trieda obsluhy udalostí slúži na obsluhu rozmanitých udalostí.
|
static class |
Robot.Pismo
![]() Písmo . |
static class |
Robot.Písmo
Trieda zapuzdruje triedu Javy
Font . |
static class |
Robot.Platno
![]() Plátno . |
static class |
Robot.Plátno
|
static class |
Robot.PolozkaPonuky
![]() PoložkaPonuky . |
static class |
Robot.PoložkaPonuky
Táto trieda umožňuje vo svete grafického robota používať položky
ponuky aplikácie.
|
static class |
Robot.Schranka
![]() Schránka . |
static class |
Robot.Schránka
Táto trieda pokrýva základné činnosti so schránkou operačného systému.
|
protected static class |
Robot.SpracovanieUdalosti
![]() ObsluhaUdalostí . |
protected static class |
Robot.SpracovanieUdalostí
![]() ObsluhaUdalostí . |
protected static class |
Robot.Subor
![]() Súbor . |
protected static class |
Robot.Súbor
Trieda na prácu so súbormi.
|
static class |
Robot.Svet
Trieda, ktorá spája metódy obsluhujúce hlavné okno so statickými
metódami rôzneho významu.
|
static class |
Robot.UdajeUdalosti
![]() ÚdajeUdalostí . |
static class |
Robot.ÚdajeUdalostí
Toto je trieda disponujúca informáciami o rôznych udalostiach sveta.
|
protected static interface |
Robot.VlastnyTvar
![]() VlastnýTvar . |
protected static interface |
Robot.VlastnýTvar
Rozhranie používané pri kreslení vlastných tvarov robota.
|
static class |
Robot.Zoznam<Typ>
Zoznam je použiteľný na vytvorenie zoznamu ľubovoľných objektov.
|
static class |
Robot.Zvuk
Táto trieda dovoľuje programátorovi podrobnejšie pracovať so zvukom,
ktorý načítal pomocou metódy
načítajZvuk . |
Modifikátor a typ | Atribút a opis |
---|---|
static int |
ano
![]() áno . |
static int |
áno
Hodnota, ktorú vráti metóda v prípade, že používateľ zvolil
z predvolených odpovedí „áno“.
|
static Robot.Farba |
biela
|
static Robot.Farba |
cervena
![]() červená . |
static Robot.Farba |
cierna
![]() čierna . |
static Robot.Farba |
červená
|
static Robot.Farba |
čierna
|
static Robot.Farba |
hneda
![]() hnedá . |
static Robot.Farba |
hnedá
|
static int |
kresliCentrovane
![]() kresliCentrované . |
static int |
kresliCentrované
![]() kresliNaStred . |
static int |
kresliNaStred
Príznak centrovania textu alebo obrázka na polohu (stred) robota.
|
static int |
kresliPriamo
Príznak priameho spôsobu písania textov a kreslenia obrázkov – nerotuje,
necentruje.
|
static int |
kresliRotovane
![]() kresliRotované . |
static int |
kresliRotované
Príznak rotovania textu alebo obrázka kolmo na smer robota.
|
static int |
kresliVSmere
![]() kresliRotované . |
static int |
lave
![]() ľavé . |
static int |
ľavé
Číselná konštanta ľavého tlačidla myši (1).
|
static String |
mainDeveloper
Konštanta s menom hlavného (zatiaľ jediného) vývojára tejto verzie…
(v podstate na účel výpisu copyrightu… kto vie, či časom
pribudnú aj nejakí ďalší…)
|
static int |
majorVersion
Konštanta majoritnej verzie tohto robota.
|
static int |
minorVersion
Konštanta minoritnej verzie tohto robota.
|
static Robot.Farba |
modra
![]() modrá . |
static Robot.Farba |
modrá
|
static int |
nie
Hodnota, ktorú vráti metóda v prípade, že používateľ zvolil
z predvolených odpovedí „nie“.
|
static Robot.Farba |
oranzova
![]() oranžová . |
static Robot.Farba |
oranžová
|
static Robot.Plátno |
podlaha
Reprezentácia podlahy tohto sveta.
|
static int |
prave
![]() pravé . |
static int |
pravé
Číselná konštanta pravého tlačidla myši (3).
|
static Robot.Farba |
purpurova
![]() purpurová . |
static Robot.Farba |
purpurová
|
static char |
riadok
Znaková konštanta nového riadka.
|
static Robot.Farba |
ruzova
![]() ružová . |
static Robot.Farba |
ružová
|
static Robot.Farba |
seda
![]() šedá . |
static Robot.Schránka |
schranka
![]() schránka . |
static Robot.Schránka |
schránka
Statická inštancia triedy
Schránka . |
static int |
stredne
![]() edné . |
static int |
stredné
Číselná konštanta stredného tlačidla myši (2).
|
static Robot.Plátno |
strop
Reprezentácia stropu tohto sveta.
|
Robot.Súbor |
subor
![]() súbor . |
Robot.Súbor |
súbor
Každý robot smie otvoriť jeden textový súbor na čítanie alebo zápis.
|
static Robot.Svet |
svet
Rámec hlavného okna aplikácie.
|
static Robot.Farba |
svetlocervena
![]() svetločervená . |
static Robot.Farba |
svetločervená
|
static Robot.Farba |
svetlohneda
![]() svetlohnedá . |
static Robot.Farba |
svetlohnedá
|
static Robot.Farba |
svetlomodra
![]() svetlomodrá . |
static Robot.Farba |
svetlomodrá
|
static Robot.Farba |
svetlooranzova
![]() svetlooranžová . |
static Robot.Farba |
svetlooranžová
|
static Robot.Farba |
svetlopurpurova
![]() svetlopurpurová . |
static Robot.Farba |
svetlopurpurová
|
static Robot.Farba |
svetloruzova
![]() svetloružová . |
static Robot.Farba |
svetloružová
|
static Robot.Farba |
svetloseda
![]() svetlošedá . |
static Robot.Farba |
svetlošedá
|
static Robot.Farba |
svetlotyrkysova
![]() svetlotyrkysová . |
static Robot.Farba |
svetlotyrkysová
|
static Robot.Farba |
svetlozelena
![]() svetlozelená . |
static Robot.Farba |
svetlozelená
|
static Robot.Farba |
svetlozlta
![]() svetložltá . |
static Robot.Farba |
svetložltá
|
static Robot.Farba |
šedá
|
static Robot.Farba |
tmavocervena
![]() tmavočervená . |
static Robot.Farba |
tmavočervená
|
static Robot.Farba |
tmavohneda
![]() tmavohnedá . |
static Robot.Farba |
tmavohnedá
|
static Robot.Farba |
tmavomodra
![]() tmavomodrá . |
static Robot.Farba |
tmavomodrá
|
static Robot.Farba |
tmavooranzova
![]() tmavooranžová . |
static Robot.Farba |
tmavooranžová
|
static Robot.Farba |
tmavopurpurova
![]() tmavopurpurová . |
static Robot.Farba |
tmavopurpurová
|
static Robot.Farba |
tmavoruzova
![]() tmavoružová . |
static Robot.Farba |
tmavoružová
|
static Robot.Farba |
tmavoseda
![]() tmavošedá . |
static Robot.Farba |
tmavošedá
|
static Robot.Farba |
tmavotyrkysova
![]() tmavotyrkysová . |
static Robot.Farba |
tmavotyrkysová
|
static Robot.Farba |
tmavozelena
![]() tmavozelená . |
static Robot.Farba |
tmavozelená
|
static Robot.Farba |
tmavozlta
![]() tmavožltá . |
static Robot.Farba |
tmavožltá
|
static Robot.Farba |
tyrkysova
![]() tyrkysová . |
static Robot.Farba |
tyrkysová
|
static Robot.ÚdajeUdalostí |
udajeUdalosti
![]() údajeUdalostí . |
static Robot.ÚdajeUdalostí |
údajeUdalostí
Skupina pravidelne aktualizovaných údajov o rôznych udalostiach sveta.
|
static String |
years
Konštanta rozpätia rokov vývoja tejto verzie…
(v podstate na účel výpisu copyrightu…)
|
static int |
zavrete
![]() zavreté . |
static int |
zavreté
Hodnota, ktorú vráti metóda v prípade, že používateľ nezvolil žiadnu
možnosť a zavrel dialóg.
|
static Robot.Farba |
zelena
![]() zelená . |
static Robot.Farba |
zelená
|
static Robot.Farba |
zlta
![]() žltá . |
static int |
zrusit
![]() zrušiť . |
static int |
zrušiť
Hodnota, ktorú vráti metóda v prípade, že používateľ dialóg zrušil.
|
static Robot.Farba |
žltá
|
Konštruktor a opis |
---|
Robot()
Predvolený konštruktor nastavujúci predvolené vlastnosti robota.
|
Robot(int nováMaximálnaŠírka,
int nováMaximálnaVýška)
Konštruktor umožňujúci stanovenie iných rozmerov kresliacich plátien
(podlahy a stropu) než predvolená.
|
Robot(int nováMaximálnaŠírka,
int nováMaximálnaVýška,
String novýTitulok)
Konštruktor umožňujúci stanovenie iných rozmerov kresliacich pláten
(podlahy a stropu) než je predvolená a zmenu titulku hlavného okna
aplikácie sveta.
|
Robot(String novýTitulok)
Konštruktor umožňujúci zmenu titulku okna aplikácie sveta.
|
Modifikátor a typ | Metóda a opis |
---|---|
void |
aktivacia()
![]() aktivácia . |
void |
aktivácia()
Táto metóda je prázdna.
|
void |
aktivita()
Táto metóda je prázdna.
|
boolean |
aktivny()
![]() aktívny . |
boolean |
aktívny()
Overí, či je tento robot aktívny.
|
void |
aktivuj()
Aktivuje robota a spustí
časovač (ak nebeží).
|
void |
aktivuj(boolean ajČasovač)
Metóda má rovnaký účel ako metóda
aktivuj() s tým, že dovoľuje programátorovi určiť, či má
byť automaticky spustený
časovač (ak už nebeží). |
void |
aktivuj(int dobaAktivity)
Metóda má rovnaký účel ako metóda
aktivuj() , ibaže dovoľuje programátorovi určiť dobu
aktivity. |
void |
aktivuj(int dobaAktivity,
boolean ajČasovač)
Metóda spája funkcionalitu metód
aktivuj(dobaAktivity) a aktivuj(ajČasovač) . |
void |
bod()
Nakreslí na aktuálnej pozícii robota bod s veľkosťou podľa
aktuálnej hrúbky pera, najmenej však s veľkosťou jedného pixela.
|
boolean |
bodVCeste(double súradnicaBoduX,
double súradnicaBoduY)
Zistí, či sa aktuálne súradnice zadaného bodu nachádzajú
v uzavretej oblasti cesty, ktorá bola zaznamenaná kreslením
aktuálneho robota od posledného použitia metódy
začniCestu . |
boolean |
bodVCeste(Point2D bod)
Zistí, či sa súradnice zadaného bodu nachádzajú
v uzavretej oblasti cesty, ktorá bola zaznamenaná kreslením
aktuálneho robota od posledného použitia metódy
začniCestu . |
boolean |
bodVCeste(Robot iný)
Funguje rovnako ako metóda
bodVCeste(x, y) , len namiesto súradníc bodu je použitá poloha
zadaného robota… |
boolean |
bodVElipse(double súradnicaBoduX,
double súradnicaBoduY,
double pomer)
Zistí, či sa súradnice zadaného bodu nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi odvodenými z veľkosti robota a zadaného pomeru strán.
|
boolean |
bodVElipse(double súradnicaBoduX,
double súradnicaBoduY,
double a,
double b)
Zistí, či sa súradnice zadaného bodu nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi zadaných poloosí.
|
boolean |
bodVElipse(Point2D bod,
double pomer)
Zistí, či sa súradnice zadaného bodu nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi odvodenými od veľkosti robota a zadaného pomeru strán.
|
boolean |
bodVElipse(Point2D bod,
double a,
double b)
Zistí, či sa súradnice zadaného bodu nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi zadaných poloosí.
|
boolean |
bodVElipse(Robot iný,
double pomer)
Funguje rovnako ako metóda
bodVElipse(x, y, pomer) , len namiesto súradníc bodu je
použitá poloha zadaného robota… |
boolean |
bodVElipse(Robot iný,
double a,
double b)
Funguje rovnako ako metóda
bodVElipse(x, y, a, b) , len namiesto súradníc
bodu je použitá poloha zadaného robota… |
boolean |
bodVKruhu(double súradnicaBoduX,
double súradnicaBoduY)
Zistí, či sa súradnice zadaného bodu nachádzajú v kruhu
s polomerom veľkosti robota
a stredom na aktuálnej pozícii robota.
|
boolean |
bodVKruhu(double súradnicaBoduX,
double súradnicaBoduY,
double polomer)
Zistí, či sa súradnice zadaného bodu nachádzajú v kruhu so
zadaným polomerom stredom na aktuálnej pozícii robota.
|
boolean |
bodVKruhu(Point2D bod)
Zistí, či sa súradnice zadaného bodu nachádzajú v kruhu
s polomerom veľkosti robota
a stredom na aktuálnej pozícii robota.
|
boolean |
bodVKruhu(Point2D bod,
double polomer)
Zistí, či sa súradnice zadaného bodu nachádzajú v kruhu so
zadaným polomerom stredom na aktuálnej pozícii robota.
|
boolean |
bodVKruhu(Robot iný)
Funguje rovnako ako metóda
bodVKruhu(x, y) , len namiesto súradníc bodu je použitá poloha
zadaného robota… |
boolean |
bodVKruhu(Robot iný,
double polomer)
Funguje rovnako ako metóda
bodVKruhu(x, y, polomer) , len namiesto súradníc bodu je
použitá poloha zadaného robota… |
boolean |
bodVObdlzniku(double súradnicaBoduX,
double súradnicaBoduY,
double pomer)
![]() bodVObdĺžniku . |
boolean |
bodVObdlzniku(double súradnicaBoduX,
double súradnicaBoduY,
double a,
double b)
![]() bodVObdĺžniku . |
boolean |
bodVObdlzniku(Point2D bod,
double pomer)
![]() bodVObdĺžniku . |
boolean |
bodVObdlzniku(Point2D bod,
double a,
double b)
![]() bodVObdĺžniku . |
boolean |
bodVObdlzniku(Robot iný,
double pomer)
![]() bodVObdĺžniku . |
boolean |
bodVObdlzniku(Robot iný,
double a,
double b)
![]() bodVObdĺžniku . |
boolean |
bodVObdĺžniku(double súradnicaBoduX,
double súradnicaBoduY,
double pomer)
Zistí, či sa súradnice zadaného bodu nachádzajú vo obdĺžniku so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a s rozmermi podľa veľkosti robota
a zadaného pomeru strán.
|
boolean |
bodVObdĺžniku(double súradnicaBoduX,
double súradnicaBoduY,
double a,
double b)
Zistí, či sa súradnice zadaného bodu nachádzajú vo obdĺžniku so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a s rozmermi udanými ako poloosi vpísanej elipsy.
|
boolean |
bodVObdĺžniku(Point2D bod,
double pomer)
Zistí, či sa súradnice zadaného bodu nachádzajú vo obdĺžniku so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a s rozmermi podľa veľkosti robota
a zadaného pomeru strán.
|
boolean |
bodVObdĺžniku(Point2D bod,
double a,
double b)
Zistí, či sa súradnice zadaného bodu nachádzajú vo obdĺžniku so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a s rozmermi udanými ako poloosi vpísanej elipsy.
|
boolean |
bodVObdĺžniku(Robot iný,
double pomer)
Funguje rovnako ako metóda
bodVObdĺžniku(x, y, pomer) , len namiesto súradníc bodu
je použitá poloha zadaného robota… |
boolean |
bodVObdĺžniku(Robot iný,
double a,
double b)
Funguje rovnako ako metóda
bodVObdĺžniku(x, y, a, b) , len namiesto
súradníc bodu je použitá poloha zadaného robota… |
boolean |
bodVOblasti(double súradnicaBoduX,
double súradnicaBoduY,
Robot.Oblasť oblasť)
Zistí, či sa súradnice zadaného bodu nachádzajú v zadanej
oblasti, ktorá je na účely porovnania rotovaná podľa smeru
robota (za východisko je považovaných 90°; odchýlka v kladom
alebo zápornom smere patrične rotuje oblasť) a posunutá
o súradnice robota na plátne (stred sa nachádza v bode [0, 0] –
v strede plátna).
|
boolean |
bodVOblasti(Point2D bod,
Robot.Oblasť oblasť)
Zistí, či sa súradnice zadaného bodu nachádzajú v zadanej
oblasti, ktorá je na účely porovnania rotovaná podľa smeru
robota (za východisko je považovaných 90°; odchýlka v kladom
alebo zápornom smere patrične rotuje oblasť) a posunutá
o súradnice robota na plátne (stred sa nachádza v bode [0, 0] –
v strede plátna).
|
boolean |
bodVOblasti(Robot iný,
Robot.Oblasť oblasť)
Funguje rovnako ako metóda
bodVOblasti(x, y, oblasť) , len namiesto súradníc bodu
je použitá poloha zadaného robota… |
boolean |
bodVoStvorci(double súradnicaBoduX,
double súradnicaBoduY)
![]() bodVoŠtvorci . |
boolean |
bodVoStvorci(double súradnicaBoduX,
double súradnicaBoduY,
double polomer)
![]() bodVoŠtvorci . |
boolean |
bodVoStvorci(Point2D bod)
![]() bodVoŠtvorci . |
boolean |
bodVoStvorci(Point2D bod,
double polomer)
![]() bodVoŠtvorci . |
boolean |
bodVoStvorci(Robot iný)
![]() bodVoŠtvorci . |
boolean |
bodVoStvorci(Robot iný,
double polomer)
![]() bodVoŠtvorci . |
boolean |
bodVoŠtvorci(double súradnicaBoduX,
double súradnicaBoduY)
Zistí, či sa súradnice zadaného bodu nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom podľa veľkosti robota.
|
boolean |
bodVoŠtvorci(double súradnicaBoduX,
double súradnicaBoduY,
double polomer)
Zistí, či sa súradnice zadaného bodu nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom udaným polomerom vpísanej kružnice.
|
boolean |
bodVoŠtvorci(Point2D bod)
Zistí, či sa súradnice zadaného bodu nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom podľa veľkosti robota.
|
boolean |
bodVoŠtvorci(Point2D bod,
double polomer)
Zistí, či sa súradnice zadaného bodu nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom udaným polomerom vpísanej kružnice.
|
boolean |
bodVoŠtvorci(Robot iný)
Funguje rovnako ako metóda
bodVoŠtvorci(x, y) , len namiesto súradníc bodu je použitá poloha
zadaného robota… |
boolean |
bodVoŠtvorci(Robot iný,
double polomer)
Funguje rovnako ako metóda
bodVoŠtvorci(x, y, polomer) , len namiesto súradníc bodu
je použitá poloha zadaného robota… |
boolean |
bodVPosobisku(double súradnicaBoduX,
double súradnicaBoduY)
![]() bodVPôsobisku . |
boolean |
bodVPosobisku(Point2D bod)
![]() bodVPôsobisku . |
boolean |
bodVPosobisku(Robot iný)
![]() bodVPôsobisku . |
boolean |
bodVPôsobisku(double súradnicaBoduX,
double súradnicaBoduY)
Zistí, či sa aktuálne súradnice zadaného bodu nachádzajú
v oblasti obdĺžnika, v rámci ktorého bolo zaznamenané kreslenie
aktuálnym robotom.
|
boolean |
bodVPôsobisku(Point2D bod)
Zistí, či sa súradnice zadaného bodu nachádzajú v oblasti
obdĺžnika, v rámci ktorého bolo zaznamenané kreslenie aktuálnym
robotom.
|
boolean |
bodVPôsobisku(Robot iný)
Funguje rovnako ako metóda
bodVPôsobisku(x, y) , len namiesto súradníc bodu je použitá
poloha zadaného robota… |
boolean |
bodVTvare(double súradnicaBoduX,
double súradnicaBoduY,
Shape tvar)
Zistí, či sa súradnice zadaného bodu nachádzajú v zadanom
tvare.
|
boolean |
bodVTvare(Point2D bod,
Shape tvar)
Zistí, či sa súradnice zadaného bodu nachádzajú v zadanom
tvare.
|
boolean |
bodVTvare(Robot iný,
Shape tvar)
Funguje rovnako ako metóda
bodVTvare(x, y, tvar) , len namiesto súradníc bodu
je použitá poloha zadaného robota… |
Shape |
cesta()
Ukončí záznam cesty a vráti cestu ako tvar.
|
Shape |
cestu()
![]() cesta . |
Shape |
cesty()
![]() cesta . |
void |
ciel(double x,
double y)
![]() cieľ . |
void |
cieľ(double x,
double y)
Zapne automatické smerovanie do cieľa.
|
void |
ciel(double x,
double y,
boolean spusti)
![]() cieľ . |
void |
cieľ(double x,
double y,
boolean spusti)
Metóda má rovnaký účel ako metóda
cieľ(x, y) , ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný). |
void |
ciel(double x,
double y,
boolean spusti,
boolean zastavVCieli)
![]() cieľ . |
void |
cieľ(double x,
double y,
boolean spusti,
boolean zastavVCieli)
Metóda má rovnaký účel ako metóda
cieľ(x, y) , ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa. |
void |
ciel(Point2D bod)
![]() cieľ . |
void |
cieľ(Point2D bod)
Zapne automatické smerovanie do cieľa.
|
void |
ciel(Point2D bod,
boolean spusti)
![]() cieľ . |
void |
cieľ(Point2D bod,
boolean spusti)
|
void |
ciel(Point2D bod,
boolean spusti,
boolean zastavVCieli)
![]() cieľ . |
void |
cieľ(Point2D bod,
boolean spusti,
boolean zastavVCieli)
|
void |
ciel(Robot iný)
![]() cieľ . |
void |
cieľ(Robot iný)
Zapne automatické smerovanie do cieľa.
|
void |
ciel(Robot iný,
boolean spusti)
![]() cieľ . |
void |
cieľ(Robot iný,
boolean spusti)
Metóda má rovnaký účel ako metóda
cieľ(Robot) , ibaže umožňuje programátorovi určiť, či
smie byť tento robot automaticky spustený (aktivovaný). |
void |
ciel(Robot iný,
boolean spusti,
boolean zastavVCieli)
![]() cieľ . |
void |
cieľ(Robot iný,
boolean spusti,
boolean zastavVCieli)
Metóda má rovnaký účel ako metóda
cieľ(Robot) , ibaže umožňuje programátorovi určiť, či
smie byť tento robot automaticky spustený (aktivovaný) a či má zastaviť po dosiahnutí cieľa. |
void |
ciel(Shape tvar)
![]() cieľ . |
void |
cieľ(Shape tvar)
Zapne automatické smerovanie do cieľa, ktorý je určený
stredom hraníc[1] zadaného tvaru Javy (
Shape ). |
void |
ciel(Shape tvar,
boolean spusti)
![]() cieľ . |
void |
cieľ(Shape tvar,
boolean spusti)
Metóda má rovnaký účel ako metóda
cieľ(tvar) , ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný). |
void |
ciel(Shape tvar,
boolean spusti,
boolean zastavVCieli)
![]() cieľ . |
void |
cieľ(Shape tvar,
boolean spusti,
boolean zastavVCieli)
Metóda má rovnaký účel ako metóda
cieľ(tvar) , ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa. |
boolean |
cielAktivny()
![]() cieľAktívny . |
boolean |
cieľAktívny()
Zistí, či je robot práve v režime smerovania do cieľa.
|
void |
cielNaMys()
![]() cieľNaMyš . |
void |
cielNaMys(boolean spusti)
![]() cieľNaMyš . |
void |
cielNaMys(boolean spusti,
boolean zastavVCieli)
![]() cieľNaMyš . |
void |
cieľNaMyš()
Zapne automatické smerovanie do cieľa, ktorý bude určený
aktuálnymi súradnicami myši.
|
void |
cieľNaMyš(boolean spusti)
Metóda má rovnaký účel ako metóda
cieľNaMyš() , ibaže umožňuje programátorovi určiť, či smie
byť robot automaticky spustený
(aktivovaný). |
void |
cieľNaMyš(boolean spusti,
boolean zastavVCieli)
Metóda má rovnaký účel ako metóda
cieľNaMyš() , ibaže umožňuje programátorovi určiť, či smie
byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa. |
double |
cielX()
![]() cieľX . |
double |
cieľX()
Vráti x-ovú súradnicu naposledy definovaného cieľa.
|
double |
cielY()
![]() cieľY . |
double |
cieľY()
Vráti y-ovú súradnicu naposledy definovaného cieľa.
|
void |
deaktivacia()
![]() deaktivácia . |
void |
deaktivácia()
Táto metóda je prázdna.
|
void |
deaktivuj()
Deaktivuje robota (napr. po vypršaní doby aktivity).
|
void |
dolava(double uhol)
![]() doľava . |
void |
doľava(double uhol)
![]() vľavo . |
double |
domaX()
![]() |
void |
domaX(double x)
![]() |
double |
domaY()
![]() |
void |
domaY(double y)
![]() |
void |
domov()
Presunie robota „domov“ – na štartovaciu pozíciu, obráti
predvoleným smerom.
|
void |
domov(double novýUholDoma)
Presne ako
domov , len s tým rozdielom, že
robotovi nastaví nový štartovací smer. |
void |
domov(double novéXDoma,
double novéYDoma)
Presne ako
domov , len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu. |
void |
domov(double novéXDoma,
double novéYDoma,
double novýUholDoma)
Presne ako
domov , len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu a smer. |
void |
domov(Point2D nováPolohaDoma)
Presne ako
domov , len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu. |
void |
domov(Point2D nováPolohaDoma,
double novýUholDoma)
Presne ako
domov , len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu a smer. |
void |
domov(Robot iný)
Prevezme všetky parametre domovskej pozície od zadaného
robota a zároveň ich aplikuje.
|
void |
doprava(double uhol)
![]() vpravo . |
void |
dopredu(double dĺžka)
Prikáže robotovi, aby sa posunul dopredu o zadaný počet
bodov v aktuálnom smere.
|
void |
dosiahnutieCiela()
![]() dosiahnutieCieľa . |
void |
dosiahnutieCieľa()
Táto metóda je prázdna.
|
void |
dozadu(double dĺžka)
![]() vzad . |
Shape |
elipsa(double pomer)
Nakreslí na mieste robota elipsu pootočenú v smere robota
s veľkosťou odvodenou od veľkosti
robota podľa zadaného stranového pomeru.
|
Shape |
elipsa(double a,
double b)
Nakreslí na mieste robota elipsu so zadanými rozmermi pootočenú
v smere robota.
|
Shape |
elipsu(double pomer)
![]() elipsa . |
Shape |
elipsu(double a,
double b)
![]() elipsa . |
Shape |
elipsy(double pomer)
![]() elipsa . |
Shape |
elipsy(double a,
double b)
![]() elipsa . |
Robot.Farba |
farba()
![]() |
Robot.Farba |
farba(int r,
int g,
int b)
Nastav farbu pera robota.
|
Robot.Farba |
farba(int r,
int g,
int b,
int a)
Nastav farbu pera robota.
|
void |
farba(Object nováFarba)
Toto je klon metódy
farba(Robot.Farba) . |
void |
farba(Robot.Farba nováFarba)
![]() |
Robot.Farba |
farbaBodu()
Zistí farbu bodu (jedného pixela) aktívneho plátna robota
(podlahy alebo stropu) v mieste, kde robot práve stojí.
|
boolean |
farbaBodu(Robot.Farba farba)
Zistí, či farba bodu (jedného pixela) aktívneho plátna robota
(podlahy alebo stropu) v mieste, kde robot práve stojí je zhodná
so zadanou farbou.
|
Robot.Farba |
farbaNaMyši()
Zistí farbu bodu (jedného pixela) aktívneho plátna robota
(podlahy alebo stropu) na súradniciach myši.
|
boolean |
farbaNaMyši(Robot.Farba farba)
Zistí, či je farba bodu (jedného pixela) aktívneho plátna robota
(podlahy alebo stropu) na súradniciach myši zhodná so zadanou
farbou.
|
double |
hrubkaCiary()
![]() hrúbkaČiary . |
void |
hrubkaCiary(double nováHrúbka)
![]() hrúbkaČiary . |
double |
hrúbkaČiary()
![]() |
void |
hrúbkaČiary(double nováHrúbka)
![]() |
double |
hrubkaPera()
![]() hrúbkaPera . |
double |
hrúbkaPera()
![]() |
void |
hrubkaPera(double nováHrúbka)
![]() hrúbkaPera . |
void |
hrúbkaPera(double nováHrúbka)
![]() |
void |
chod(double Δx,
double Δy)
![]() choď . |
void |
choď(double Δx,
double Δy)
Prikáže robotovi, aby sa na posunul o zadaný počet bodov
v horizontálnom a vertikálnom smere.
|
void |
chodNa(double novéX,
double novéY)
![]() choďNa . |
void |
choďNa(double novéX,
double novéY)
Prikáže robotovi, aby prešiel na konkrétne súradnice na
podlahe (strope).
|
void |
chodNa(Point2D nováPoloha)
![]() choďNa . |
void |
choďNa(Point2D nováPoloha)
Prikáže robotovi, aby prešiel na konkrétne súradnice na
podlahe (strope).
|
void |
chodNa(Robot iný)
![]() choďNa . |
void |
choďNa(Robot iný)
Prikáže tomuto robotovi, aby prešiel na aktuálnu polohu
iného robota.
|
void |
chodNa(Shape tvar)
![]() choďNa . |
void |
choďNa(Shape tvar)
Prikáže robotovi, aby prešiel do stredu hraníc[1]
zadaného tvaru.
|
void |
chodNaMys()
![]() choďNaMyš . |
void |
choďNaMyš()
Prikáže robotovi, aby na podlahe (strope) prešiel na
aktuálne súradnice myši.
|
void |
chodPoObluku(double uhol,
double polomer)
![]() choďPoOblúku . |
void |
choďPoOblúku(double uhol,
double polomer)
Pohne robotom po oblúku so zadaným polomerom o zadaný
uhol.
|
boolean |
jeNad(Robot ktorý)
![]() somZa . |
boolean |
jePod(Robot ktorý)
![]() somPred . |
boolean |
jePred(Robot ktorý)
![]() somZa . |
boolean |
jeZa(Robot ktorý)
![]() somPred . |
boolean |
koliduje(Robot iný)
Táto metóda je v štádiu testovania
a jej funkcionalita sa ešte môže meniť…
Zistí, či tento a zadaný robot vzájomne „kolidujú“, t.j. či
došlo k ich zrážke.
|
Robot.Oblasť |
koliznaOblast()
![]() kolíznaOblasť . |
Robot.Oblasť |
kolíznaOblasť()
![]() null , ak oblasť nebola definovaná. |
void |
koliznaOblast(Robot.Oblasť kolíznaOblasť)
![]() kolíznaOblasť . |
void |
kolíznaOblasť(Robot.Oblasť kolíznaOblasť)
![]() koliduje . |
boolean |
kreslenieTvarovPovolene()
![]() kreslenieTvarovPovolené |
boolean |
kreslenieTvarovPovolené()
Zistí, či je kreslenie tvarov povolené alebo zakázané.
|
void |
kresli()
Táto metóda je prázdna.
|
void |
kresliCestu()
Nakreslí zaznamenanú cestu aktuálnou farbou a hrúbkou čiary
a ukončí záznam cesty.
|
void |
kresliDo(Shape tvar)
Obmedzí akékoľvek kreslenie na aktívne plátno robota (podlahu
alebo strop) na plochu zadaného útvaru (
Shape ). |
void |
kresliDoObrazka(Robot.Obrázok obrázok)
![]() kresliNaObrázok . |
void |
kresliDoObrázka(Robot.Obrázok obrázok)
![]() kresliNaObrázok . |
boolean |
kreslimDoObrazka(Robot.Obrázok obrázok)
![]() kreslímNaObrázok . |
boolean |
kreslímDoObrázka(Robot.Obrázok obrázok)
![]() kreslímNaObrázok . |
boolean |
kreslimNaObrazok(Robot.Obrázok obrázok)
![]() kreslímNaObrázok . |
boolean |
kreslímNaObrázok(Robot.Obrázok obrázok)
Zistí, či je kreslenie tohto robota presmerované do určeného
obrázka.
|
boolean |
kreslimNaPodlahu()
![]() kreslímNaPodlahu . |
boolean |
kreslímNaPodlahu()
Overí, či tento robot kreslí na podlahu, teda, či je podlaha
aktívnym plátnom robota.
|
boolean |
kreslimNaStrop()
![]() kreslímNaStrop . |
boolean |
kreslímNaStrop()
Overí, či tento robot kreslí na strop, teda, či je strop
aktívnym plátnom robota.
|
void |
kresliNaObrazok(Robot.Obrázok obrázok)
![]() kresliNaObrázok . |
void |
kresliNaObrázok(Robot.Obrázok obrázok)
Presmeruje kreslenie tohto robota do určeného obrázka.
|
void |
kresliNaPodlahu()
Po použití tejto metódy bude tento robot kresliť na plátno
podlahy (predvolený stav).
|
void |
kresliNaStrop()
Po použití tejto metódy bude tento robot kresliť na plátno
stropu.
|
void |
kresliPosobisko()
![]() kresliPôsobisko . |
void |
kresliPôsobisko()
Zvýrazní oblasť obdĺžnika – pôsobisko, v rámci ktorého robot
kreslil od svojho vzniku alebo od posledného použitia niektorej
z metód
domov . |
void |
kresliTvary()
Povolí kreslenie tvarov a písanie textov robotom (predvolený
stav).
|
void |
kresliUtvary()
![]() kresliTvary . |
void |
kresliÚtvary()
![]() kresliTvary . |
void |
kresliVsade()
![]() kresliVšade . |
void |
kresliVšade()
Zruší oblasť na obmedzenie kreslenia na aktívne plátno (podlahu
alebo strop).
|
Shape |
kruh()
Nakreslí na mieste robota kruh s polomerom veľkosti robota.
|
Shape |
kruh(double polomer)
Nakreslí na mieste robota kruh so zadaným polomerom.
|
Shape |
kruhu()
![]() kruh . |
Shape |
kruhu(double polomer)
![]() kruh . |
Shape |
kruznica()
![]() kružnica . |
Shape |
kruznica(double polomer)
![]() kružnica . |
Shape |
kruznice()
![]() kružnica . |
Shape |
kruznice(double polomer)
![]() kružnica . |
Shape |
kruznicu()
![]() kružnica . |
Shape |
kruznicu(double polomer)
![]() kružnica . |
Shape |
kružnica()
Nakreslí na mieste robota kružnicu s polomerom veľkosti robota.
|
Shape |
kružnica(double polomer)
Nakreslí na mieste robota kružnicu so zadaným polomerom.
|
Shape |
kružnice()
![]() kružnica . |
Shape |
kružnice(double polomer)
![]() kružnica . |
Shape |
kružnicu()
![]() kružnica . |
Shape |
kružnicu(double polomer)
![]() kružnica . |
double |
maximalnaRychlost()
![]() maximálnaRýchlosť . |
double |
maximálnaRýchlosť()
![]() |
void |
maximalnaRychlost(double maximálnaRýchlosť)
![]() maximálnaRýchlosť . |
void |
maximálnaRýchlosť(double maximálnaRýchlosť)
![]() |
double |
maximalnaRychlostOtacania()
![]() maximálnaUhlováRýchlosť . |
void |
maximalnaRychlostOtacania(double maximálnaUhlováRýchlosť)
![]() maximálnaUhlováRýchlosť . |
double |
maximálnaRýchlosťOtáčania()
![]() maximálnaUhlováRýchlosť . |
void |
maximálnaRýchlosťOtáčania(double maximálnaUhlováRýchlosť)
![]() maximálnaUhlováRýchlosť . |
double |
maximalnaUhlovaRychlost()
![]() maximálnaUhlováRýchlosť . |
double |
maximálnaUhlováRýchlosť()
![]() |
void |
maximalnaUhlovaRychlost(double maximálnaUhlováRýchlosť)
![]() maximálnaUhlováRýchlosť . |
void |
maximálnaUhlováRýchlosť(double maximálnaUhlováRýchlosť)
![]() |
boolean |
mysVCeste()
![]() myšVCeste . |
boolean |
mysVElipse(double pomer)
![]() mysVElipse . |
boolean |
mysVElipse(double a,
double b)
![]() mysVElipse . |
boolean |
mysVKruhu()
![]() myšVKruhu . |
boolean |
mysVKruhu(double polomer)
![]() myšVKruhu . |
boolean |
mysVObdlzniku(double pomer)
![]() myšVObdĺžniku . |
boolean |
mysVObdlzniku(double a,
double b)
![]() myšVObdĺžniku . |
boolean |
mysVOblasti(Robot.Oblasť oblasť)
![]() myšVOblasti . |
boolean |
mysVoStvorci()
![]() myšVoŠtvorci . |
boolean |
mysVoStvorci(double polomer)
![]() myšVoŠtvorci . |
boolean |
mysVPosobisku()
![]() myšVPôsobisku . |
boolean |
myšVCeste()
Zistí, či sa aktuálne súradnice myši nachádzajú v uzavretej
oblasti cesty, ktorá bola zaznamenaná kreslením aktuálneho
robota od posledného použitia metódy
začniCestu . |
boolean |
myšVElipse(double pomer)
Zistí, či sa aktuálne súradnice myši nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi podľa veľkosti
robota a zadaného pomeru poloosí.
|
boolean |
myšVElipse(double a,
double b)
Zistí, či sa aktuálne súradnice myši nachádzajú v elipse
pootočenej v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi zadaných poloosí.
|
boolean |
myšVKruhu()
Zistí, či sa aktuálne súradnice myši nachádzajú v kruhu so
stredom na aktuálnej pozícii robota a polomerom s veľkosťou robota.
|
boolean |
myšVKruhu(double polomer)
Zistí, či sa aktuálne súradnice myši nachádzajú v kruhu so
stredom na aktuálnej pozícii robota a zadaným polomerom.
|
boolean |
myšVObdĺžniku(double pomer)
Zistí, či sa aktuálne súradnice myši nachádzajú v obdĺžniku
pootočenom v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi podľa veľkosti
robota a zadaného pomeru strán.
|
boolean |
myšVObdĺžniku(double a,
double b)
Zistí, či sa aktuálne súradnice myši nachádzajú v obdĺžniku
pootočenom v smere robota, so stredom na aktuálnej pozícii
robota a s rozmermi udanými ako poloosi vpísanej elipsy.
|
boolean |
myšVOblasti(Robot.Oblasť oblasť)
Zistí, či sa aktuálne súradnice myši nachádzajú v zadanej
oblasti, ktorá je na účely porovnania rotovaná podľa smeru
robota (za východisko je považovaných 90°; odchýlka v kladom
alebo zápornom smere patrične rotuje oblasť) a posunutá
o súradnice robota na plátne (stred sa nachádza v bode [0, 0] –
v strede plátna).
|
boolean |
myšVoŠtvorci()
Zistí, či sa aktuálne súradnice myši nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom podľa veľkosti robota.
|
boolean |
myšVoŠtvorci(double polomer)
Zistí, či sa aktuálne súradnice myši nachádzajú vo štvorci so
stredom na aktuálnej pozícii robota, rotovanom v smere robota
a rozmerom udaným polomerom vpísanej kružnice.
|
boolean |
myšVPôsobisku()
Zistí, či sa aktuálne súradnice myši nachádzajú v oblasti
obdĺžnika, v rámci ktorého bolo zaznamenané kreslenie aktuálnym
robotom.
|
void |
nad(Robot ktorého)
![]() pred . |
void |
nahodnaPoloha()
![]() náhodnáPoloha . |
void |
náhodnáPoloha()
Umiestni robota na náhodnú pozíciu na plátne.
|
void |
nahodnaPozicia()
![]() náhodnáPoloha . |
void |
náhodnáPozícia()
![]() náhodnáPoloha . |
void |
nahodnySmer()
![]() náhodnýSmer . |
void |
náhodnýSmer()
Otočí robota náhodným smerom.
|
void |
nahodnyUhol()
![]() náhodnýSmer . |
void |
náhodnýUhol()
![]() náhodnýSmer . |
void |
naSpodok()
Presunie tohto robota do úplného pozadia v rámci všetkých
robotov.
|
void |
naVrch()
Presunie tohto robota do úplného popredia v rámci všetkých
robotov.
|
boolean |
neaktivny()
![]() aktívny . |
boolean |
neaktívny()
Overí, či je tento robot neaktívny.
|
void |
nekresliDo(Shape tvar)
Vytvára obmedzenie na kreslenie na aktívne plátno robota
(podlahu alebo strop).
|
void |
nekresliPosobisko()
![]() nekresliPôsobisko . |
void |
nekresliPôsobisko()
Skryje zvýraznenie oblasti pôsobiska, ktoré bolo zapnuté metódou
kresliPôsobisko . |
void |
nekresliTvary()
Zakáže kreslenie tvarov (kružnice, elipsy,
štvorca, obdĺžnika…) a písanie textu robotom, aby príslušné metódy mohli
byť využité na iné účely, napríklad na obmedzenie kreslenia.
|
void |
nekresliUtvary()
![]() nekresliTvary . |
void |
nekresliÚtvary()
![]() nekresliTvary . |
void |
nizsie()
![]() nižšie . |
void |
nižšie()
Presunie tohto robota o úroveň nižšie v rámci poradia kreslenia
robotov.
|
void |
novyDomov()
![]() novýDomov . |
void |
novýDomov()
Zapamätá si aktuálnu pozíciu a smer ako nový domov.
|
void |
novyDomov(double novýUholDoma)
![]() novýDomov . |
void |
novýDomov(double novýUholDoma)
Nastaví robotovi nový domovský smer.
|
void |
novyDomov(double novéXDoma,
double novéYDoma)
![]() novýDomov . |
void |
novýDomov(double novéXDoma,
double novéYDoma)
Nastaví robotovi novú domovskú pozíciu.
|
void |
novyDomov(double novéXDoma,
double novéYDoma,
double novýUholDoma)
![]() novýDomov . |
void |
novýDomov(double novéXDoma,
double novéYDoma,
double novýUholDoma)
Nastaví robotovi novú domovskú pozíciu a smer.
|
void |
novyDomov(Point2D nováPolohaDoma)
![]() novýDomov . |
void |
novýDomov(Point2D nováPolohaDoma)
Nastaví robotovi novú domovskú pozíciu.
|
void |
novyDomov(Point2D nováPolohaDoma,
double novýUholDoma)
![]() novýDomov . |
void |
novýDomov(Point2D nováPolohaDoma,
double novýUholDoma)
Nastaví robotovi novú domovskú pozíciu a smer.
|
void |
novyDomov(Robot iný)
![]() novýDomov . |
void |
novýDomov(Robot iný)
Prevezme všetky parametre domovskej pozície od zadaného
robota.
|
Shape |
obdlznik(double pomer)
![]() obdĺžnik . |
Shape |
obdlznik(double a,
double b)
![]() obdĺžnik . |
Shape |
obdlznika(double pomer)
![]() obdĺžnik . |
Shape |
obdlznika(double a,
double b)
![]() obdĺžnik . |
Shape |
obdĺžnik(double pomer)
Nakreslí na mieste robota obdĺžnik určený rozmerom vpísanej
elipsy a obrátený v smere robota.
|
Shape |
obdĺžnik(double a,
double b)
Nakreslí na mieste robota obdĺžnik určený rozmerom vpísanej
elipsy a obrátený v smere robota.
|
Shape |
obdĺžnika(double pomer)
![]() obdĺžnik . |
Shape |
obdĺžnika(double a,
double b)
![]() obdĺžnik . |
void |
obkresliCestu()
Obkreslí oblasť zaznamenanej cesty uzavretou čiarou, použije pri
tom aktuálnu farbu a hrúbku čiary a ukončí záznam cesty.
|
void |
obkresliOblast(Robot.Oblasť oblasť)
![]() obkresliOblasť . |
void |
obkresliOblasť(Robot.Oblasť oblasť)
Obkreslí zadanú oblasť hrúbkou a farbou čiary nastavenú pre
tohto robota, rotovanú podľa smeru robota (za východisko je
považovaných 90°; odchýlka v kladom alebo zápornom smere
patrične rotuje oblasť) a posunutú o súradnice robota na plátne
(stred sa nachádza v bode [0, 0] – v strede plátna).
|
void |
obrazok(Image obrázok)
![]() obrázok . |
void |
obrázok(Image obrázok)
Nakreslí obrázok na pozícii robota podľa aktuálneho spôsobu
kreslenia.
|
void |
obrazok(Image obrázok,
int spôsobKreslenia)
![]() obrázok . |
void |
obrázok(Image obrázok,
int spôsobKreslenia)
Nakreslí obrázok na pozícii robota podľa zadaného spôsobu
kreslenia.
|
void |
obrazok(String súbor)
![]() obrázok . |
void |
obrázok(String súbor)
Nakreslí obrázok na pozícii robota podľa aktuálneho spôsobu
kreslenia.
|
void |
obrazok(String súbor,
int spôsobKreslenia)
![]() obrázok . |
void |
obrázok(String súbor,
int spôsobKreslenia)
Nakreslí obrázok na pozícii robota podľa zadaného spôsobu
kreslenia.
|
void |
otoc(double uhol)
![]() otoč . |
void |
otoc(double Δx,
double Δy)
![]() otoč . |
void |
otoc(double Δx,
double Δy,
double najviacO)
![]() otoč . |
void |
otoc(Robot iný)
![]() otoč . |
void |
otoc(Robot iný,
double najviacO)
![]() otoč . |
void |
otocNa(double x,
double y)
![]() otočNa . |
void |
otocNa(double x,
double y,
double najviacO)
![]() otočNa . |
void |
otocNa(Point2D bod)
![]() otočNa . |
void |
otocNa(Point2D bod,
double najviacO)
![]() otočNa . |
void |
otocNa(Robot iný)
![]() otočNa . |
void |
otocNa(Robot iný,
double najviacO)
![]() otočNa . |
void |
otocNa(Shape tvar)
![]() otočNa . |
void |
otocNa(Shape tvar,
double najviacO)
![]() otočNa . |
void |
otocNaMys()
![]() otočNaMyš . |
void |
otocNaMys(double najviacO)
![]() otočNaMyš . |
void |
otocO(double uhol)
![]() otoč . |
void |
otoč(double uhol)
Nasmeruje (otočí) robota rovnakým smerom, ako určuje zadaný
uhol.
|
void |
otoč(double Δx,
double Δy)
Nasmeruje robota smerom zadaným pomocou súradníc [Δx, Δy].
|
void |
otoč(double Δx,
double Δy,
double najviacO)
Funguje podobne ako metóda
otoč , ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla. |
void |
otoč(Robot iný)
Nasmeruje tohto robota rovnakým smerom, akým je otočený
zadaný robot.
|
void |
otoč(Robot iný,
double najviacO)
Funguje podobne ako metóda
otoč , ibaže
obmedzuje uhol pootočenia daným smerom – neotočí robota
okamžite podľa smeru iného robota, iba ním pootočí
o maximálnu zadanú hodnotu uhla. |
void |
otočNa(double x,
double y)
Nasmeruje robota smerom na zadané súradnice [x, y] na
podlahe (strope).
|
void |
otočNa(double x,
double y,
double najviacO)
Funguje podobne ako metóda
otočNa , ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla. |
void |
otočNa(Point2D bod)
Nasmeruje robota smerom na zadané súradnice na podlahe
(strope).
|
void |
otočNa(Point2D bod,
double najviacO)
Funguje podobne ako metóda
otočNa , ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla. |
void |
otočNa(Robot iný)
Nasmeruje tohto robota smerom k zadanému robotovi.
|
void |
otočNa(Robot iný,
double najviacO)
Funguje podobne ako metóda
otočNa ,
ibaže obmedzuje uhol pootočenia daným smerom – neotočí tohto
robota okamžite smerom k inému robotovi, iba ho pootočí
daným smerom o maximálnu zadanú hodnotu uhla. |
void |
otočNa(Shape tvar)
Nasmeruje tohto robota smerom do stredu hraníc[1]
zadaného tvaru.
|
void |
otočNa(Shape tvar,
double najviacO)
Funguje podobne ako metóda
otočNa ,
ibaže obmedzuje uhol pootočenia daným smerom – neotočí tohto
robota okamžite smerom do stredu hraníc[1] tvaru,
iba ho pootočí daným smerom o maximálnu zadanú hodnotu uhla. |
void |
otočNaMyš()
Nasmeruje robota smerom na aktuálne súradnice myši.
|
void |
otočNaMyš(double najviacO)
Funguje podobne ako metóda
otočNaMyš ,
ibaže obmedzuje uhol pootočenia – neotočí tohto robota
okamžite smerom k súradniciam myši, iba ho pootočí daným
smerom o maximálnu zadanú hodnotu uhla. |
void |
otočO(double uhol)
Otočí robota o zadaný uhol (proti smeru hodinových
ručičiek).
|
void |
pasivita()
Táto metóda je prázdna.
|
boolean |
peroPolozene()
![]() peroPoložené . |
Boolean |
peroPolozeneDoma()
![]() peroPoloženéDoma . |
boolean |
peroPoložené()
Zistí aktuálnu polohu pera.
|
Boolean |
peroPoloženéDoma()
Overí, či robot pri prechode na domovskú pozíciu položí
pero na plátno.
|
boolean |
peroZdvihnute()
![]() peroZdvihnuté . |
boolean |
peroZdvihnuté()
Zistí aktuálnu polohu pera.
|
Boolean |
peroZdvihnuteDoma()
![]() peroZdvihnutéDoma . |
Boolean |
peroZdvihnutéDoma()
Overí, či robot pri prechode na domovskú pozíciu zdvihne
pero z plátna.
|
Robot.Pismo |
pismo()
![]() písmo . |
Robot.Písmo |
písmo()
![]() |
void |
pismo(Object novéPísmo)
![]() písmo . |
void |
písmo(Object novéPísmo)
Toto je klon metódy
písmo(Písmo) . |
void |
pismo(Robot.Písmo novéPísmo)
![]() písmo . |
void |
písmo(Robot.Písmo novéPísmo)
![]() |
Robot.Pismo |
pismo(String názov,
int veľkosť)
![]() písmo . |
Robot.Písmo |
písmo(String názov,
int veľkosť)
Nastav nový typ písma, ktorým bude robot písať.
|
void |
pod(Robot ktorého)
![]() za . |
Point2D.Double |
poloha()
![]() Point2D.Double . |
void |
poloha(Point2D poloha)
![]() |
boolean |
polohaPera()
Zistí aktuálnu polohu pera.
|
void |
polohaPera(boolean polož)
Zdvihne alebo položí pero na základe zadanej pravdivostnej
hodnoty –
true položí pero, false
zdvihne pero. |
Boolean |
polohaPeraDoma()
Zistí, či sa mení stav pera pri prechode na domovskú pozíciu
robota.
|
void |
polohaPeraDoma(Boolean položené)
Nastaví správanie zmeny polohy pera po prechode domov na
základe zadaného objektu typu
Boolean . |
double |
polohaX()
![]() |
void |
polohaX(double novéX)
![]() |
double |
polohaY()
![]() |
void |
polohaY(double novéY)
![]() |
void |
polozPero()
![]() položPero . |
void |
polozPeroDoma()
![]() položPeroDoma . |
void |
položPero()
Položí pero tohto robota na plátno podlahy alebo stropu.
|
void |
položPeroDoma()
Spôsobí, že odteraz vždy pri použití niektorej modifikácie
metódy
domov položí robot pero na plátno. |
void |
posunDolava(double dĺžka)
![]() posuňDoľava . |
void |
posuňDoľava(double dĺžka)
![]() posuňVľavo . |
void |
posunDoprava(double dĺžka)
![]() posuňDoprava . |
void |
posuňDoprava(double dĺžka)
![]() posuňVpravo . |
void |
posunVlavo(double dĺžka)
![]() posuňVľavo . |
void |
posuňVľavo(double dĺžka)
Prikáže robotovi, aby sa posunul vľavo o zadaný počet bodov
(vzhľadom na aktuálnu orientáciu).
|
void |
posunVpravo(double dĺžka)
![]() posuňVpravo . |
void |
posuňVpravo(double dĺžka)
Prikáže robotovi, aby sa posunul vpravo o zadaný počet
bodov (vzhľadom na aktuálnu orientáciu).
|
void |
posunVSmere(double smer,
double dĺžka)
![]() posuňVSmere . |
void |
posuňVSmere(double smer,
double dĺžka)
Prikáže robotovi, aby sa posunul v zadanom smere o zadaný
počet bodov.
|
void |
pracuj()
Táto metóda je automaticky spúšťaná
časovačom . |
void |
pred(Robot ktorého)
Presunie tohto robota pred zadaného robota (z pohľadu zobrazenia
robotov).
|
void |
predvolenaFarba()
![]() predvolenáFarba . |
void |
predvolenáFarba()
Nastav farbu pera na predvolenú farbu.
|
void |
predvolenaHrubkaCiary()
![]() predvolenáHrúbkaČiary . |
void |
predvolenáHrúbkaČiary()
Nastav hrúbku čiary pera na predvolenú.
|
void |
predvolenaHrubkaPera()
![]() predvolenáHrúbkaPera . |
void |
predvolenáHrúbkaPera()
Nastav hrúbku čiary pera na predvolenú.
|
void |
predvolenePismo()
![]() predvolenéPísmo . |
void |
predvolenéPísmo()
Nastav predvolený typ písma, ktorým bude robot písať.
|
void |
predvolenyTvar()
![]() predvolenýTvar . |
void |
predvolenýTvar()
Nastaví predvolený tvar robota.
|
void |
predvolenyTvar(boolean vyplnený)
![]() predvolenýTvar . |
void |
predvolenýTvar(boolean vyplnený)
Nastaví predvolený tvar robota.
|
void |
prepíšBod()
Prepíše farebné zložky a zložku priehľadnosti bodu na aktuálnej
pozícii robota aktuálnou farbou robota.
|
void |
prepusti()
![]() uvoľni . |
void |
prepusti(Robot.Oblasť oblasť)
![]() uvoľni . |
double |
priehladnost()
![]() priehľadnosť . |
double |
priehľadnosť()
![]() |
void |
priehladnost(double priehľadnosť)
![]() priehľadnosť . |
void |
priehľadnosť(double priehľadnosť)
![]() |
void |
prijatieVyzvy(Robot autor,
int kľúč)
![]() prijatieVýzvy . |
void |
prijatieVýzvy(Robot autor,
int kľúč)
Táto metóda je prázdna.
|
void |
rozbehniSa()
Metóda slúži na aktiváciu robota, ktorý má nenulové
zrýchlenie.
|
void |
rozbehniSa(double zrýchlenie)
Metóda nastaví robotovi zadané zrýchlenie a v prípade zadania
nenulovej hodnoty automaticky aktivuje robota.
|
void |
rozbehniSa(double zrýchlenie,
boolean aktivuj)
Metóda nastaví robotovi zadané zrýchlenie a zároveň dovoľuje
programátorovi určiť, či má byť robot v prípade zadania
nenulovej hodnoty zrýchlenia automaticky aktivovaný.
|
void |
rozbehniSa(double zrýchlenie,
double maximálnaRýchlosť)
Metóda nastaví robotovi nové hodnoty zrýchlenia a maximálnej rýchlosti a v prípade
zadania nenulovej hodnoty zrýchlenia automaticky aktivuje
robota.
|
void |
rozbehniSa(double zrýchlenie,
double maximálnaRýchlosť,
boolean aktivuj)
Metóda nastaví robotovi nové hodnoty zrýchlenia a maximálnej rýchlosti a dovoľuje
programátorovi určiť, či má byť robot v prípade zadania
nenulovej hodnoty zrýchlenia automaticky aktivovaný.
|
double |
rozmer()
![]() veľkosť . |
void |
rozmer(double veľkosť)
![]() veľkosť . |
double |
rychlost()
![]() rýchlosť . |
double |
rýchlosť()
![]() |
void |
rychlost(double rýchlosť)
![]() rýchlosť . |
void |
rýchlosť(double rýchlosť)
|
void |
rychlost(double rýchlosť,
boolean aktivuj)
![]() rýchlosť . |
void |
rýchlosť(double rýchlosť,
boolean aktivuj)
Nastaví robotovi novú hodnotu rýchlosti a dovolí
programátorovi rozhodnúť, či má byť robot automaticky
aktivovaný.
|
double |
rychlostOtacania()
![]() uhlováRýchlosť . |
void |
rychlostOtacania(double uhlováRýchlosť)
![]() uhlováRýchlosť . |
void |
rychlostOtacania(double uhlováRýchlosť,
boolean aktivuj)
![]() uhlováRýchlosť . |
double |
rýchlosťOtáčania()
![]() uhlováRýchlosť . |
void |
rýchlosťOtáčania(double uhlováRýchlosť)
![]() uhlováRýchlosť . |
void |
rýchlosťOtáčania(double uhlováRýchlosť,
boolean aktivuj)
![]() uhlováRýchlosť . |
void |
skoc(double Δx,
double Δy)
![]() skoč . |
void |
skocNa(double novéX,
double novéY)
![]() skočNa . |
void |
skocNa(Point2D nováPoloha)
![]() skočNa . |
void |
skocNa(Robot iný)
![]() skočNa . |
void |
skocNa(Shape tvar)
![]() skočNa . |
void |
skocNaMys()
![]() skočNaMyš . |
void |
skoč(double Δx,
double Δy)
Prikáže robotovi, aby sa na na podlahe (strope) preskočil
o zadaný počet bodov v horizontálnom a vertikálnom smere.
|
void |
skočNa(double novéX,
double novéY)
Prikáže robotovi, aby preskočil na konkrétne súradnice na
podlahe (strope).
|
void |
skočNa(Point2D nováPoloha)
Prikáže robotovi, aby preskočil na konkrétne súradnice na
podlahe (strope).
|
void |
skočNa(Robot iný)
Prikáže tomuto robotovi, aby preskočil na polohu iného
robota.
|
void |
skočNa(Shape tvar)
Prikáže robotovi, aby preskočil do stredu
hraníc[1] zadaného tvaru.
|
void |
skočNaMyš()
Prikáže robotovi, aby v rámci podlahy (stropu) preskočil na
aktuálne súradnice myši.
|
void |
skonciCestu()
![]() skončiCestu . |
void |
skončiCestu()
Ukončí záznam cesty a ponechá ju na ďalšie použitie.
|
void |
skry()
Skryje tohto robota.
|
void |
skryDoma()
Spôsobí, že odteraz sa robot vždy pri použití niektorej
modifikácie metódy
domov skryje. |
boolean |
skryty()
![]() skrytý . |
boolean |
skrytý()
Zistí, či je robot viditeľný alebo skrytý.
|
Boolean |
skrytyDoma()
![]() skrytýDoma . |
Boolean |
skrytýDoma()
Zistí, či sa mení viditeľnosť robota pri prechode na
domovskú pozíciu.
|
double |
smer()
![]() |
void |
smer(double uhol)
![]() |
double |
smer(double Δx,
double Δy)
Zistí smer k bodu zadanému pomocou odchýlok súradníc
v horizontálnom a vertikáklom smere [Δx, Δy].
|
double |
smerDoma()
![]() |
void |
smerDoma(double uhol)
![]() |
double |
smerNa(double x,
double y)
Zistí smer (uhol) z aktuálneho miesta robota smerom na
zadané súradnice [x, y].
|
double |
smerNa(Point2D bod)
Zistí smer (uhol) z aktuálneho miesta robota smerom na
súradnice zadaného bodu.
|
double |
smerNa(Robot iný)
Zistí smer (uhol) z aktuálneho miesta robota smerom ku
zadanému robotovi.
|
double |
smerNa(Shape tvar)
Zistí smer (uhol) z aktuálneho miesta robota smerom do,
stredu hraníc[1] zadaného tvaru.
|
double |
smerNaMys()
![]() smerNaMyš . |
double |
smerNaMyš()
Zistí smer (uhol) z aktuálneho miesta robota smerom
k aktuálnym súradniciam myši.
|
boolean |
somNad(Robot ktorým)
![]() somPred . |
boolean |
somPod(Robot ktorým)
![]() somZa . |
boolean |
somPred(Robot ktorým)
Overí, či je tento robot pred zadaným robotom.
|
boolean |
somZa(Robot ktorým)
Overí, či je tento robot za zadaným robotom.
|
void |
spojnica(Robot cieľ)
Vytvorí alebo upraví parametre jestvujúcej spojnice medzi týmto
a zadaným robotom.
|
void |
spojnica(Robot cieľ,
double hrúbka)
Vytvorí alebo upraví parametre jestvujúcej spojnice medzi týmto
a zadaným robotom.
|
void |
spojnica(Robot cieľ,
double hrúbka,
Robot.Farba farba)
Vytvorí alebo upraví parametre jestvujúcej spojnice medzi týmto
a zadaným robotom.
|
void |
spojnica(Robot cieľ,
Robot.Farba farba)
Vytvorí alebo upraví parametre jestvujúcej spojnice medzi týmto
a zadaným robotom.
|
int |
sposobKreslenia()
![]() spôsobKreslenia . |
void |
sposobKreslenia(int novýSpôsobKreslenia)
![]() spôsobKreslenia . |
int |
spôsobKreslenia()
![]() |
void |
spôsobKreslenia(int novýSpôsobKreslenia)
![]() |
void |
spustenie()
Táto metóda je prázdna.
|
void |
spusti()
Aktivuje robota alternatívnym spôsobom a spustí časovač (ak nebeží).
|
void |
spusti(boolean ajČasovač)
Metóda má rovnaký účel ako metóda
spusti()
s tým, že dovoľuje programátorovi určiť, či má byť
automaticky spustený
časovač (ak už nebeží). |
void |
spusti(int dobaAktivity)
Metóda má rovnaký účel ako metóda
spusti() , ibaže dovoľuje programátorovi určiť dobu
aktivity. |
void |
spusti(int dobaAktivity,
boolean ajČasovač)
Metóda spája funkcionalitu metód
spusti(dobaAktivity) a spusti(ajČasovač) . |
Shape |
stvorca()
![]() štvorec . |
Shape |
stvorca(double polomer)
![]() štvorec . |
Shape |
stvorec()
![]() štvorec . |
Shape |
stvorec(double polomer)
![]() štvorec . |
double |
suradnicaX()
![]() súradnicaX() . |
double |
súradnicaX()
![]() polohaX() . |
void |
suradnicaX(double novéX)
![]() súradnicaX(double) . |
void |
súradnicaX(double novéX)
![]() polohaX(double) . |
double |
suradnicaY()
![]() súradnicaY() . |
double |
súradnicaY()
![]() polohaY() . |
void |
suradnicaY(double novéY)
![]() súradnicaY(double) . |
void |
súradnicaY(double novéY)
![]() polohaY(double) . |
Shape |
štvorca()
![]() štvorec . |
Shape |
štvorca(double polomer)
![]() štvorec . |
Shape |
štvorec()
Nakreslí na mieste robota štvorec určený rozmerom vpísanej
kružnice s polomerom veľkosti robota a obrátený v smere robota.
|
Shape |
štvorec(double polomer)
Nakreslí na mieste robota štvorec určený rozmerom vpísanej
kružnice a obrátený v smere robota.
|
Shape |
text(String text)
Napíše[1] zadaný text na pozícii robota podľa
aktuálneho spôsobu kreslenia (pozri:
spôsobKreslenia ) alebo vytvorí tvar
obrysu zadaného textu (čo záleží od toho, či je tento robot
momentálne zamestnaný
alebo nie a či je zakázané
kreslenie tvarov) (pozri vysvetlenie pri návratovej hodnote). |
Shape |
text(String text,
int spôsobKreslenia)
Napíše[1] zadaný text na pozícii robota podľa
zadaného spôsobu kreslenia alebo vytvorí tvar obrysu zadaného
textu.
|
double |
uhlovaRychlost()
![]() uhlováRýchlosť . |
double |
uhlováRýchlosť()
![]() |
void |
uhlovaRychlost(double uhlováRýchlosť)
![]() uhlováRýchlosť . |
void |
uhlováRýchlosť(double uhlováRýchlosť)
![]() |
void |
uhlovaRychlost(double uhlováRýchlosť,
boolean aktivuj)
![]() uhlováRýchlosť . |
void |
uhlováRýchlosť(double uhlováRýchlosť,
boolean aktivuj)
Nastaví novú hodnotu hodnotu uhlovej rýchlosti (rýchlosti
otáčania) tohto robota.
|
double |
uhloveZrychlenie()
![]() uhlovéZrýchlenie . |
double |
uhlovéZrýchlenie()
![]() |
void |
uhloveZrychlenie(double uhlovéZrýchlenie)
![]() uhlovéZrýchlenie . |
void |
uhlovéZrýchlenie(double uhlovéZrýchlenie)
![]() |
void |
uhloveZrychlenie(double uhlovéZrýchlenie,
boolean aktivuj)
![]() uhlovéZrýchlenie . |
void |
uhlovéZrýchlenie(double uhlovéZrýchlenie,
boolean aktivuj)
Metóda funguje rovnako ako metóda
uhlovéZrýchlenie(double
uhlovéZrýchlenie) , ale dovoľuje programátorovi určiť, či
smie byť robot (v prípade zadania nenulového zrýchlenia)
aktivovaný. |
double |
uhol()
![]() |
void |
uhol(double uhol)
![]() |
double |
uhol(double Δx,
double Δy)
![]() smer . |
double |
uholDoma()
![]() |
void |
uholDoma(double uhol)
![]() |
double |
uholNa(double x,
double y)
![]() smerNa . |
double |
uholNa(Point2D bod)
![]() smerNa . |
double |
uholNa(Robot iný)
![]() smerNa . |
double |
uholNa(Shape tvar)
![]() smerNa . |
double |
uholNaMys()
![]() smerNaMyš . |
double |
uholNaMyš()
![]() smerNaMyš . |
void |
ukaz()
![]() ukáž . |
void |
ukazDoma()
![]() viditeľnýDoma . |
void |
ukáž()
Zobrazí tohto robota.
|
void |
ukážDoma()
Spôsobí, že odteraz sa robot vždy pri použití niektorej
modifikácie metódy
domov zobrazí. |
void |
upravCiel(double x,
double y)
![]() upravCieľ . |
void |
upravCieľ(double x,
double y)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(double x,
double y,
boolean spusti)
![]() upravCieľ . |
void |
upravCieľ(double x,
double y,
boolean spusti)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Point2D bod)
![]() upravCieľ . |
void |
upravCieľ(Point2D bod)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Point2D bod,
boolean spusti)
![]() upravCieľ . |
void |
upravCieľ(Point2D bod,
boolean spusti)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Robot iný)
![]() upravCieľ . |
void |
upravCieľ(Robot iný)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Robot iný,
boolean spusti)
![]() upravCieľ . |
void |
upravCieľ(Robot iný,
boolean spusti)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice,
inak má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Shape tvar)
![]() upravCieľ . |
void |
upravCieľ(Shape tvar)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice
smerom do stredu hraníc[1] zadaného tvaru, inak
má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCiel(Shape tvar,
boolean spusti)
![]() upravCieľ . |
void |
upravCieľ(Shape tvar,
boolean spusti)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice
smerom do stredu hraníc[1] zadaného tvaru, inak
má rovnaký efekt ako volanie metódy
cieľ . |
void |
upravCielNaMys()
![]() upravCieľNaMyš . |
void |
upravCielNaMys(boolean spusti)
![]() upravCieľNaMyš . |
void |
upravCieľNaMyš()
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice
podľa aktuálnych súradníc myši, inak má rovnaký efekt ako
volanie metódy
cieľNaMyš . |
void |
upravCieľNaMyš(boolean spusti)
Ak je smerovanie do cieľa aktívne, upraví cieľové súradnice
podľa aktuálnych súradníc myši, inak má rovnaký efekt ako
volanie metódy
cieľNaMyš . |
void |
upravPriehladnost(double zmena)
![]() upravPriehľadnosť . |
void |
upravPriehľadnosť(double zmena)
Upraví úroveň (ne)priehľadnosti tohto robota.
|
void |
uvolni()
![]() uvoľni . |
void |
uvoľni()
Automaticky uvoľní robota z úloh tvorby (prípadne kreslenia)
oblasti.
|
void |
uvolni(Robot.Oblasť oblasť)
![]() uvoľni . |
void |
uvoľni(Robot.Oblasť oblasť)
Uvoľní tohto robota z úloh tvorby (prípadne kreslenia) zadanej
oblasti.
|
double |
velkost()
![]() veľkosť . |
double |
veľkosť()
![]() |
void |
velkost(double veľkosť)
![]() veľkosť . |
void |
veľkosť(double veľkosť)
![]() |
boolean |
viditelny()
![]() viditeľný . |
boolean |
viditeľný()
Zistí, či je robot viditeľný alebo skrytý.
|
Boolean |
viditelnyDoma()
![]() viditeľnýDoma . |
Boolean |
viditeľnýDoma()
Zistí, či sa mení viditeľnosť robota pri prechode na
domovskú pozíciu.
|
void |
vlastnyTvar(Image obrázok)
![]() vlastnýTvar . |
void |
vlastnýTvar(Image obrázok)
Zmení tvar robota z klasického tvaru na zadaný obrázok.
|
void |
vlastnyTvar(Robot.VlastnyTvar tvar)
![]() vlastnýTvar . |
void |
vlastnýTvar(Robot.VlastnýTvar tvar)
Umožní kresliť vlastný tvar robota namiesto klasického tvaru.
|
void |
vlastnyTvar(String súbor)
![]() vlastnýTvar . |
void |
vlastnýTvar(String súbor)
Zmení tvar robota z klasického tvaru na zadaný obrázok.
|
void |
vlavo(double uhol)
![]() vľavo . |
void |
vľavo(double uhol)
Prikáže robotovi, aby sa obrátil o zadaný uhol proti smeru
hodinových ručičiek.
|
void |
vpravo(double uhol)
Prikáže robotovi, aby sa obrátil o zadaný uhol v smere
hodinových ručičiek.
|
void |
vpred(double dĺžka)
![]() dopredu . |
void |
vylejFarbu()
Robot vyleje na svojej pozícii na aktívne plátno alebo do
obrázka, kam bolo presmerované jeho kreslenie, svoju
farbu, ktorá sa odtiaľ rozšíri po okraje
okolitej kresby.
|
void |
vyplnCestu()
![]() vyplňCestu . |
void |
vyplňCestu()
Vyplní zaznamenanú cestu aktuálnou farbou robota a ukončí záznam
cesty.
|
Shape |
vyplnElipsu(double pomer)
![]() vyplňElipsu . |
Shape |
vyplňElipsu(double pomer)
Vyplní elipsu so stredom na mieste robota, pootočenú v smere
robota, s veľkosťou odvodenou od veľkosti robota podľa zadaného stranového pomeru.
|
Shape |
vyplnElipsu(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplňElipsu(double a,
double b)
Vyplní elipsu so zadanými rozmermi, so stredom na mieste robota
a pootočenú v smere robota.
|
Shape |
vyplnenaElipsa(double pomer)
![]() vyplňElipsu . |
Shape |
vyplnenáElipsa(double pomer)
![]() vyplňElipsu . |
Shape |
vyplnenaElipsa(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplnenáElipsa(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplnenehoObdlznika(double pomer)
![]() vyplňObdĺžnik . |
Shape |
vyplnenehoObdlznika(double a,
double b)
![]() vyplňObdĺžnik . |
Shape |
vyplnenéhoObdĺžnika(double pomer) |
Shape |
vyplnenéhoObdĺžnika(double a,
double b) |
Shape |
vyplnenehoStvorca()
![]() vyplňŠtvorec . |
Shape |
vyplnenehoStvorca(double polomer)
![]() vyplňŠtvorec . |
Shape |
vyplnenéhoŠtvorca()
![]() vyplňŠtvorec . |
Shape |
vyplnenéhoŠtvorca(double polomer)
![]() vyplňŠtvorec . |
Shape |
vyplnenejElipsy(double pomer)
![]() vyplňElipsu . |
Shape |
vyplnenejElipsy(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplnenuElipsu(double pomer)
![]() vyplňElipsu . |
Shape |
vyplnenúElipsu(double pomer)
![]() vyplňElipsu . |
Shape |
vyplnenuElipsu(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplnenúElipsu(double a,
double b)
![]() vyplňElipsu . |
Shape |
vyplnenyObdlznik(double pomer)
![]() vyplňObdĺžnik . |
Shape |
vyplnenyObdlznik(double a,
double b)
![]() vyplňObdĺžnik . |
Shape |
vyplnenýObdĺžnik(double pomer)
![]() vyplňObdĺžnik . |
Shape |
vyplnenýObdĺžnik(double a,
double b)
![]() vyplňObdĺžnik . |
Shape |
vyplnenyStvorec()
![]() vyplňŠtvorec . |
Shape |
vyplnenyStvorec(double polomer)
![]() vyplňŠtvorec . |
Shape |
vyplnenýŠtvorec()
![]() vyplňŠtvorec . |
Shape |
vyplnenýŠtvorec(double polomer)
![]() vyplňŠtvorec . |
Shape |
vyplnObdlznik(double pomer)
![]() vyplňObdĺžnik . |
Shape |
vyplnObdlznik(double a,
double b)
![]() vyplňObdĺžnik . |
Shape |
vyplňObdĺžnik(double pomer)
Vyplní obdĺžnik so stredom na mieste robota, obrátený v smere
robota a určený rozmermi vpísanej elipsy.
|
Shape |
vyplňObdĺžnik(double a,
double b)
Vyplní obdĺžnik so stredom na mieste robota, obrátený v smere
robota a určený rozmermi vpísanej elipsy.
|
void |
vyplnOblast(Robot.Oblasť oblasť)
![]() vyplňOblasť . |
void |
vyplňOblasť(Robot.Oblasť oblasť)
Vyplní plochu zadanej oblasti farbou nastavenou pre tohto
robota, pričom vypĺňanú oblasť rotuje podľa smeru robota (za
východisko je považovaných 90°; odchýlka v kladom alebo zápornom
smere patrične rotuje oblasť) a posúva o súradnice robota na
plátne (stred sa nachádza v bode [0, 0] – v strede plátna).
|
void |
vyplnOblast(Robot.Oblasť oblasť,
BufferedImage obrázok)
![]() vyplňOblasť . |
void |
vyplňOblasť(Robot.Oblasť oblasť,
BufferedImage obrázok)
Vyplní plochu zadanej oblasti zadanou textúrou, pričom oblasť
rotuje podľa smeru[1] robota a posúva
o súradnice[2] robota na plátne.
|
void |
vyplnOblast(Robot.Oblasť oblasť,
String súbor)
![]() vyplňOblasť . |
void |
vyplňOblasť(Robot.Oblasť oblasť,
String súbor)
Vyplní plochu zadanej oblasti zadanou textúrou, pričom oblasť
rotuje podľa smeru[1] robota a posúva
o súradnice[2] robota na plátne.
|
Shape |
vyplnStvorec()
![]() vyplňŠtvorec . |
Shape |
vyplnStvorec(double polomer)
![]() vyplňŠtvorec . |
Shape |
vyplňŠtvorec()
Vyplní štvorec so stredom na mieste robota, obrátený v smere
robota a určený polomerom vpísanej kružnice s polomerom
veľkosti robota.
|
Shape |
vyplňŠtvorec(double polomer)
Vyplní štvorec so stredom na mieste robota, obrátený v smere
robota a určený polomerom vpísanej kružnice.
|
void |
vyssie()
![]() vyššie . |
void |
vyššie()
Presunie tohto robota o úroveň vyššie v rámci poradia kreslenia
robotov.
|
void |
vyzviRobotov()
Spustením tejto metódy sa pre každého robota (podľa ich
aktuálneho poradia) vykoná reakcia
prijatieVýzvy , pričom
autorom výzvy bude tento robot a hodnota argumentu
kľúč bude rovná -1 . |
void |
vyzviRobotov(int kľúč)
Spustením tejto metódy sa pre každého robota (podľa ich
aktuálneho poradia) vykoná reakcia
prijatieVýzvy , pričom
autorom výzvy bude tento robot. |
void |
vyzviRobotov(int kľúč,
boolean obrátene)
Spustením tejto metódy sa pre každého robota (podľa ich
aktuálneho poradia) vykoná reakcia
prijatieVýzvy , pričom
autorom výzvy bude tento robot. |
void |
vzad(double dĺžka)
Prikáže robotovi, aby cúvol z aktuálneho miesta o zadaný
počet bodov (v aktuálnom smere).
|
double |
vzdialenost()
![]() vzdialenosť . |
double |
vzdialenosť()
Zistí, aká je vzdialenosť tohto robota od stredu súradnicovej
sústavy.
|
double |
vzdialenostK(double súradnicaBoduX,
double súradnicaBoduY)
![]() vzdialenosťOd . |
double |
vzdialenosťK(double súradnicaBoduX,
double súradnicaBoduY)
![]() vzdialenosťOd . |
double |
vzdialenostK(Point2D bod)
![]() vzdialenosťOd . |
double |
vzdialenosťK(Point2D bod)
![]() vzdialenosťOd . |
double |
vzdialenostK(Robot iný)
![]() vzdialenosťOd . |
double |
vzdialenosťK(Robot iný)
![]() vzdialenosťOd . |
double |
vzdialenostK(Shape tvar)
![]() vzdialenosťOd . |
double |
vzdialenosťK(Shape tvar)
![]() vzdialenosťOd . |
double |
vzdialenostKMysi()
![]() vzdialenosťOdMyši . |
double |
vzdialenosťKMyši()
![]() vzdialenosťOdMyši . |
double |
vzdialenostOd(double súradnicaBoduX,
double súradnicaBoduY)
![]() vzdialenosťOd . |
double |
vzdialenosťOd(double súradnicaBoduX,
double súradnicaBoduY)
Zistí vzdialenosť medzi týmto robotom a zadanými súradnicami na
podlahe (strope).
|
double |
vzdialenostOd(Point2D bod)
![]() vzdialenosťOd . |
double |
vzdialenosťOd(Point2D bod)
Zistí vzdialenosť medzi týmto robotom a zadaným bodom na
podlahe (strope).
|
double |
vzdialenostOd(Robot iný)
![]() vzdialenosťOd . |
double |
vzdialenosťOd(Robot iný)
Zistí vzdialenosť medzi týmto a zadaným (iným) robotom.
|
double |
vzdialenostOd(Shape tvar)
![]() vzdialenosťOd . |
double |
vzdialenosťOd(Shape tvar)
Zistí vzdialenosť medzi týmto robotom a stredom
hraníc[1] zadaného tvaru.
|
double |
vzdialenostOdMysi()
![]() vzdialenosťOdMyši . |
double |
vzdialenosťOdMyši()
Zistí vzdialenosť medzi týmto robotom a aktuálnymi súradnicami
myši.
|
void |
za(Robot ktorého)
Presunie tohto robota za zadaného robota (z pohľadu zobrazenia
robotov).
|
void |
zabrzdi()
Prikáže robotovi začať brzdiť a automaticky zastaviť pri dosiahnutí nulovej rýchlosti.
|
void |
zabrzdi(double zrýchlenie)
Prikáže robotovi začať brzdiť so zadaným „zrýchlením“
(spomalením) a automaticky zastaviť
pri dosiahnutí nulovej rýchlosti.
|
void |
zacniCestu()
![]() začniCestu . |
void |
začniCestu()
Začne záznam cesty robota.
|
void |
zachovajPeroDoma()
Odteraz nebude stav pera pri použití niektorej modifikácie
metódy
domov nijako ovplyvňovaný. |
void |
zachovajViditelnostDoma()
![]() zachovajViditeľnosťDoma . |
void |
zachovajViditeľnosťDoma()
Odteraz nebude viditeľnosť robota pri použití niektorej
modifikácie metódy
domov nijako
ovplyvňovaná. |
void |
zamestnaj(Robot.Oblasť oblasť)
Zamestná tohto robota na účely tvorby, prípadne kreslenia,
zadanej oblasti.
|
boolean |
zamestnany()
![]() zamestnaný . |
boolean |
zamestnaný()
Overí, či je tento robot zamestnaný na potreby niektorej
oblasti.
|
boolean |
zamestnany(Robot.Oblasť oblasť)
![]() zamestnaný . |
boolean |
zamestnaný(Robot.Oblasť oblasť)
Overí, či je tento robot zamestnaný na potreby danej oblasti.
|
void |
zastav()
Deaktivuje robota (napr. po dosiahnutí cieľa).
|
void |
zastavenie()
Táto metóda je prázdna.
|
boolean |
zastaviPoSpomaleni()
![]() zastavíPoSpomalení . |
boolean |
zastavíPoSpomalení()
Zistí, či má robot prikázané automaticky zastaviť pri najbližšom dosiahnutí nulovej
rýchlosti.
|
boolean |
zastaviVCieli()
![]() zastavíVCieli . |
boolean |
zastavíVCieli()
Zistí, či má robot prikázané automaticky zastaviť po dosiahnutí cieľa.
|
void |
zastavPoSpomaleni()
![]() zastavPoSpomalení . |
void |
zastavPoSpomalení()
Prikáže robotovi, aby najbližšie, keď dosiahne nulovú
rýchlosť automaticky zastavil.
|
void |
zdvihniPero()
Zdvihne pero tohto robota z plátna podlahy alebo stropu.
|
void |
zdvihniPeroDoma()
Spôsobí, že odteraz vždy pri použití niektorej modifikácie
metódy
domov zdvihne robot pero z plátna. |
void |
zobraz()
![]() ukáž . |
void |
zobrazDoma()
Spôsobí, že odteraz sa robot vždy pri použití niektorej
modifikácie metódy
domov zobrazí. |
boolean |
zobrazeny()
![]() zobrazený . |
boolean |
zobrazený()
Zistí, či je robot viditeľný alebo skrytý.
|
Boolean |
zobrazenyDoma()
![]() zobrazenýDoma . |
Boolean |
zobrazenýDoma()
Zistí, či sa mení viditeľnosť robota pri prechode na
domovskú pozíciu.
|
void |
zrusCestu()
![]() zrušCestu . |
void |
zrusCiel()
![]() zrušCieľ . |
void |
zrusCiel(boolean zastav)
![]() zrušCieľ . |
void |
zrusSledovanieCiela()
![]() zrušCieľ . |
void |
zrusSledovanieCiela(boolean zastav)
![]() zrušCieľ . |
void |
zrušCestu()
Ukončí a zmaže záznam cesty.
|
void |
zrušCieľ()
Vypne smerovanie do cieľa zapnuté niektorým z klonov metódy
cieľ . |
void |
zrušCieľ(boolean zastav)
Vypne smerovanie do cieľa zapnuté niektorým z klonov
metódy
cieľ . |
void |
zrušSledovanieCieľa()
![]() zrušCieľ . |
void |
zrušSledovanieCieľa(boolean zastav)
![]() zrušCieľ . |
void |
zrušSpojnicu(Robot cieľ)
Zruší jestvujúcu spojnicu medzi týmto a zadaným robotom.
|
double |
zrychlenie()
![]() zrýchlenie . |
double |
zrýchlenie()
![]() |
void |
zrychlenie(double zrýchlenie)
![]() zrýchlenie . |
void |
zrýchlenie(double zrýchlenie)
![]() |
void |
zrychlenie(double zrýchlenie,
boolean aktivuj)
![]() zrýchlenie . |
void |
zrýchlenie(double zrýchlenie,
boolean aktivuj)
Metóda funguje rovnako ako metóda
zrýchlenie(double zrýchlenie) , ale dovoľuje programátorovi
určiť, či smie byť robot (v prípade zadania nenulového
zrýchlenia) aktivovaný. |
double |
zrychlenieOtacnia()
![]() uhlovéZrýchlenie . |
void |
zrychlenieOtacnia(double uhlovéZrýchlenie)
![]() uhlovéZrýchlenie . |
void |
zrychlenieOtacnia(double uhlovéZrýchlenie,
boolean aktivuj)
![]() uhlovéZrýchlenie . |
double |
zrýchlenieOtáčania()
![]() uhlovéZrýchlenie . |
void |
zrýchlenieOtáčania(double uhlovéZrýchlenie)
![]() uhlovéZrýchlenie . |
void |
zrýchlenieOtáčania(double uhlovéZrýchlenie,
boolean aktivuj)
![]() uhlovéZrýchlenie . |
public static final Robot.Farba biela
public static final Robot.Farba svetlošedá
public static final Robot.Farba svetloseda
svetlošedá
.public static final Robot.Farba šedá
public static final Robot.Farba seda
šedá
.public static final Robot.Farba tmavošedá
public static final Robot.Farba tmavoseda
tmavošedá
.public static final Robot.Farba čierna
public static final Robot.Farba cierna
čierna
.public static final Robot.Farba svetločervená
public static final Robot.Farba svetlocervena
svetločervená
.public static final Robot.Farba červená
public static final Robot.Farba cervena
červená
.public static final Robot.Farba tmavočervená
public static final Robot.Farba tmavocervena
tmavočervená
.public static final Robot.Farba svetlozelená
public static final Robot.Farba svetlozelena
svetlozelená
.public static final Robot.Farba zelená
public static final Robot.Farba zelena
zelená
.public static final Robot.Farba tmavozelená
public static final Robot.Farba tmavozelena
tmavozelená
.public static final Robot.Farba svetlomodrá
public static final Robot.Farba svetlomodra
svetlomodrá
.public static final Robot.Farba modrá
public static final Robot.Farba modra
modrá
.public static final Robot.Farba tmavomodrá
public static final Robot.Farba tmavomodra
tmavomodrá
.public static final Robot.Farba svetlotyrkysová
public static final Robot.Farba svetlotyrkysova
svetlotyrkysová
.public static final Robot.Farba tyrkysová
public static final Robot.Farba tyrkysova
tyrkysová
.public static final Robot.Farba tmavotyrkysová
public static final Robot.Farba tmavotyrkysova
tmavotyrkysová
.public static final Robot.Farba svetlopurpurová
public static final Robot.Farba svetlopurpurova
svetlopurpurová
.public static final Robot.Farba purpurová
public static final Robot.Farba purpurova
purpurová
.public static final Robot.Farba tmavopurpurová
public static final Robot.Farba tmavopurpurova
tmavopurpurová
.public static final Robot.Farba svetložltá
public static final Robot.Farba svetlozlta
svetložltá
.public static final Robot.Farba žltá
Farba
(
224
,
224
,
0
)
).
(Poznámka: pozorné oko si môže všimnúť, že odtiene žltej sú definované z iných pomerov zložiek r, g, b, než odtiene iných základných farieb (červenej, zelenej, modrej…). Jednoduchým experimentom sa nám podarilo ukázať, že vnímanie „žltej“ je natoľko špecifické, že na to, aby bola vnímaná ako skutočne „žltá“, musí byť veľmi jasná. Preto pôvodná jasnožltá je teraz definovaná ako žltá a jej odtiene k nej majú veľmi blízko. Sami sa môžete presvedčiť, že na monitore pôsobia tmavšie odtiene „žltej“ ako žltozelená, olivová, lilavá, khaky… Ide čiastočne o psychochromatickú záležitosť a vplyv môže mať aj to, že vo farebnom priestore sRGB farba „žltá“ ako taká nejestvuje – je miešaná zo zložiek červenej a zelenej. Technická žltá nie je to isté ako žltá vnímaná ľuďmi.)
public static final Robot.Farba zlta
žltá
.public static final Robot.Farba tmavožltá
public static final Robot.Farba tmavozlta
tmavožltá
.public static final Robot.Farba svetlohnedá
public static final Robot.Farba svetlohneda
svetlohnedá
.public static final Robot.Farba hnedá
public static final Robot.Farba hneda
hnedá
.public static final Robot.Farba tmavohnedá
public static final Robot.Farba tmavohneda
tmavohnedá
.public static final Robot.Farba svetlooranžová
public static final Robot.Farba svetlooranzova
svetlooranžová
.public static final Robot.Farba oranžová
public static final Robot.Farba oranzova
oranžová
.public static final Robot.Farba tmavooranžová
public static final Robot.Farba tmavooranzova
tmavooranžová
.public static final Robot.Farba svetloružová
public static final Robot.Farba svetloruzova
svetloružová
.public static final Robot.Farba ružová
public static final Robot.Farba ruzova
ružová
.public static final Robot.Farba tmavoružová
public static final Robot.Farba tmavoruzova
tmavoružová
.public static final int kresliPriamo
spôsobKreslenia
, text
alebo obrázok
.public static final int kresliNaStred
spôsobKreslenia
, text
alebo obrázok
.public static final int kresliRotované
spôsobKreslenia
,
text
alebo obrázok
.public static final int kresliRotovane
kresliRotované
.public static final int kresliCentrované
kresliNaStred
.public static final int kresliCentrovane
kresliCentrované
.public static final int kresliVSmere
kresliRotované
.public static final int ľavé
tlačidloMyši()
,
tlačidloMyši(ktoré)
,
tlačidloMyšiDole(ktoré)
alebo
tlačidloMyšiHore(ktoré)
.public static final int lave
ľavé
.public static final int stredné
tlačidloMyši()
,
tlačidloMyši(ktoré)
, tlačidloMyšiDole(ktoré)
alebo
tlačidloMyšiHore(ktoré)
.public static final int stredne
edné
.public static final int pravé
tlačidloMyši()
,
tlačidloMyši(ktoré)
,
tlačidloMyšiDole(ktoré)
alebo
tlačidloMyšiHore(ktoré)
.public static final int prave
pravé
.public static final int majorVersion
public static final int minorVersion
public static final String years
public static final String mainDeveloper
public static final char riadok
vypíš
.)public static final int zavreté
otázka
.)public static final int zavrete
zavreté
.public static final int zrušiť
otázka
.)public static final int zrusit
zrušiť
.public static final int áno
otázka
.)public static final int ano
áno
.public static final int nie
otázka
.)public static final Robot.Svet svet
public static final Robot.Plátno podlaha
public static final Robot.Plátno strop
public final Robot.Súbor súbor
Robot.Súbor
.public final Robot.Súbor subor
súbor
.public static final Robot.Schránka schránka
Schránka
.public static final Robot.Schránka schranka
schránka
.public static final Robot.ÚdajeUdalostí údajeUdalostí
public static final Robot.ÚdajeUdalostí udajeUdalosti
údajeUdalostí
.public Robot()
(Poznámka: každý vytvorený robot je automaticky
zaradený na koniec vnútorného zoznamu robotov. Poradie v tomto
zozname je možné dodatočne ovplyvniť metódami
naVrch
, naSpodok
,
vyššie
, nižšie
,
pred
a za
.)
public Robot(String novýTitulok)
novýTitulok
– nový titulok hlavného oknapublic Robot(int nováMaximálnaŠírka, int nováMaximálnaVýška)
(Upozornenie: zväčšovanie rozmerov plátna znižuje výkonnosť aplikácie.)
nováMaximálnaŠírka
– nová maximálna šírka kresliacich plátiennováMaximálnaVýška
– nová maximálna výška kresliacich plátienpublic Robot(int nováMaximálnaŠírka, int nováMaximálnaVýška, String novýTitulok)
(Upozornenie: zväčšovanie rozmerov plátna znižuje výkonnosť aplikácie.)
nováMaximálnaŠírka
– nová maximálna šírka kresliacich plátiennováMaximálnaVýška
– nová maximálna výška kresliacich plátiennovýTitulok
– nový titulok hlavného oknapublic double hrúbkaPera()
public double hrubkaPera()
hrúbkaPera
.public double hrúbkaČiary()
public double hrubkaCiary()
hrúbkaČiary
.public void hrúbkaPera(double nováHrúbka)
nováHrúbka
– hrúbka čiary peraRuntimeException
– ak je hrúbka čiary pera zápornápublic void hrubkaPera(double nováHrúbka)
hrúbkaPera
.public void hrúbkaČiary(double nováHrúbka)
nováHrúbka
– hrúbka čiary peraRuntimeException
– ak je hrúbka čiary pera zápornápublic void hrubkaCiary(double nováHrúbka)
hrúbkaČiary
.public void predvolenáHrúbkaPera()
public void predvolenaHrubkaPera()
predvolenáHrúbkaPera
.public void predvolenáHrúbkaČiary()
public void predvolenaHrubkaCiary()
predvolenáHrúbkaČiary
.public Robot.Farba farba()
Farba
)public void farba(Robot.Farba nováFarba)
Farba
.public void farba(Object nováFarba)
farba(Robot.Farba)
. Farba je
nastavená len v prípade, že v premennej typu Object
(zadanej ako parameter) je uložená inštancia triedy Farba
alebo Color
.public Robot.Farba farba(int r, int g, int b)
r
– červená zložka novej farby; celé číslo v rozsahu
0 – 255g
– zelená zložka novej farby; celé číslo v rozsahu
0 – 255b
– modrá zložka novej farby; celé číslo v rozsahu
0 – 255Farba
– nová farba perafarba(Robot.Farba)
public Robot.Farba farba(int r, int g, int b, int a)
r
– červená zložka novej farby; celé číslo v rozsahu
0 – 255g
– zelená zložka novej farby; celé číslo v rozsahu
0 – 255b
– modrá zložka novej farby; celé číslo v rozsahu
0 – 255a
– úroveň (ne)priehľadnosti novej farby; celé číslo
v rozsahu 0 – 255 (0 – neviditeľná farba; 255 –
nepriehľadná farba)Farba
– nová farba perafarba(Robot.Farba)
public void predvolenáFarba()
public void predvolenaFarba()
predvolenáFarba
.public boolean polohaPera()
true
ak je pero položené,
false
v opačnom prípadepolohaPera(boolean)
,
peroZdvihnuté()
,
peroPoložené()
,
zdvihniPero()
,
položPero()
public boolean peroZdvihnuté()
true
ak je pero zdvihnuté z plátna,
false
v opačnom prípadepolohaPera()
,
polohaPera(boolean)
,
peroPoložené()
,
zdvihniPero()
,
položPero()
public boolean peroZdvihnute()
peroZdvihnuté
.public boolean peroPoložené()
true
ak je pero položené,
false
v opačnom prípadepolohaPera()
,
polohaPera(boolean)
,
peroZdvihnuté()
,
zdvihniPero()
,
položPero()
public boolean peroPolozene()
peroPoložené
.public void polohaPera(boolean polož)
true
položí pero, false
zdvihne pero.polož
– true
/false
polohaPera()
,
peroZdvihnuté()
,
peroPoložené()
,
zdvihniPero()
,
položPero()
public void zdvihniPero()
položPero
.polohaPera()
,
polohaPera(boolean)
,
peroZdvihnuté()
,
peroPoložené()
,
položPero()
public void položPero()
zdvihniPero
.polohaPera()
,
polohaPera(boolean)
,
peroZdvihnuté()
,
peroPoložené()
,
zdvihniPero()
public void polozPero()
položPero
.public boolean viditeľný()
zobraz
a skry
.
(To znamená, že ak je napríklad robot skrytý za nejakým
objektom, táto metóda to nezistí.)true
ak je robot viditeľný, false
v opačnom prípadezobrazený()
,
skrytý()
,
ukáž()
,
zobraz()
,
skry()
public boolean viditelny()
viditeľný
.public boolean zobrazený()
zobraz
a skry
.
(To znamená, že ak je napríklad robot skrytý za nejakým
objektom, táto metóda to nezistí.)true
ak je robot zobrazený, false
v opačnom prípadeviditeľný()
,
skrytý()
,
ukáž()
,
zobraz()
,
skry()
public boolean zobrazeny()
zobrazený
.public boolean skrytý()
zobraz
a skry
.
(To znamená, že ak je napríklad robot skrytý za nejakým
objektom, táto metóda to nezistí.)true
ak je robot skrytý, false
v opačnom prípadeviditeľný()
,
zobrazený()
,
ukáž()
,
zobraz()
,
skry()
public boolean skryty()
skrytý
.public void ukáž()
skry
.viditeľný()
,
zobrazený()
,
skrytý()
,
zobraz()
,
skry()
public void ukaz()
ukáž
.public void zobraz()
ukáž
.public void skry()
viditeľný()
,
zobrazený()
,
skrytý()
,
ukáž()
,
zobraz()
public double priehľadnosť()
priehľadnosť(double)
,
upravPriehľadnosť(double)
public double priehladnost()
priehľadnosť
.public void priehľadnosť(double priehľadnosť)
1.0
).
Úroveň 0.0 znamená, že robot by nemal byť zobrazený, avšak
vždy dôjde minimálne k pokusu o jeho nakreslenie. Keď chceme
robota skutočne skryť, použijeme metódu skry
.
Úroveň 1.0 znamená, že robot bude zobrazený bez úpravy
priehľadnosti.
priehľadnosť
– nová úroveň priehľadnosti (0.0 – 1.0)priehľadnosť()
,
upravPriehľadnosť(double)
public void priehladnost(double priehľadnosť)
priehľadnosť
.public void upravPriehľadnosť(double zmena)
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)
upravPriehľadnosť
.public Robot.Písmo písmo()
Robot.Písmo
– aktuálny typ písmapublic Robot.Pismo pismo()
písmo
.public void písmo(Robot.Písmo novéPísmo)
novéPísmo
– objekt typu Robot.Písmo
určujúci nový typ
písma robotapublic void pismo(Robot.Písmo novéPísmo)
písmo
.public void písmo(Object novéPísmo)
písmo(Písmo)
. Písmo bude
aplikované len v prípade, že parameter je objekt triedy
Robot.Písmo
.public Robot.Písmo písmo(String názov, int veľkosť)
názov
– názov písma; môže byť všeobecný názov
logického písma (Dialog, DialogInput, Monospaced,
Serif, SansSerif…) alebo názov
konkrétneho písma (Times New Roman, Arial…)veľkosť
– veľkosť písma v bodochRobot.Písmo
určujúci nový typ písma
robotapublic Robot.Pismo pismo(String názov, int veľkosť)
písmo
.public void predvolenéPísmo()
public void predvolenePismo()
predvolenéPísmo
.public double polohaX()
public double polohaY()
public double súradnicaX()
polohaX()
.public double suradnicaX()
súradnicaX()
.public double súradnicaY()
polohaY()
.public double suradnicaY()
súradnicaY()
.public void polohaX(double novéX)
novéX
– nová x-ová súradnicapublic void polohaY(double novéY)
novéY
– nová y-ová súradnicapublic void súradnicaX(double novéX)
polohaX(double)
.public void suradnicaX(double novéX)
súradnicaX(double)
.public void súradnicaY(double novéY)
polohaY(double)
.public void suradnicaY(double novéY)
súradnicaY(double)
.public Point2D.Double poloha()
Point2D.Double
. Vrátený
objekt nie je pravidelne aktualizovaný. Vždy, keď potrebujete
získať aktuálne súradnice robota, musíte znova volať túto
metódu a získať nový objekt typu Point2D.Double
s aktuálnymi
súradnicami.Point2D.Double
obsahujúci aktuálne súradnice robotapublic void poloha(Point2D poloha)
Point2D
. Robot
sa presunie na zadané súradnice, nekreslí pri tom čiaru,
ani nezmení svoju aktuálnu orientáciu (smer).poloha
– objekt typu Point2D
obsahujúci nové súradnice robotapublic double uhol()
public double smer()
public void uhol(double uhol)
uhol
– uhol smeru robota (nula znamená vpravo,
deväťdesiat hore a tak ďalej)public void smer(double uhol)
uhol
– uhol smeru robota (nula znamená vpravo,
deväťdesiat hore a tak ďalej)public void otoč(double uhol)
uhol
alebo smer
. Jej predpokladaný účel je, napríklad, nasledovný:
otoč
(inýRobot.smer
());
Táto metóda nemá verziu obmedzujúcu maximálny uhol
pootočenia (ako napríklad: otoč(Robot, double)
),
pretože by pri definícii nastal konflikt s metódou otoč(Δx, Δy)
.
uhol
– uhol smeru robota (nula znamená vpravo,
deväťdesiat hore a tak ďalej)otoč(double, double)
,
otočO(double)
public void otoc(double uhol)
otoč
.public void náhodnáPoloha()
public void nahodnaPoloha()
náhodnáPoloha
.public void náhodnáPozícia()
náhodnáPoloha
.public void nahodnaPozicia()
náhodnáPoloha
.public void náhodnýSmer()
public void nahodnySmer()
náhodnýSmer
.public void náhodnýUhol()
náhodnýSmer
.public void nahodnyUhol()
náhodnýSmer
.public void domov()
zdvihniPeroDoma
,
položPeroDoma
, zobrazDoma
, skryDoma
,
tak zdvihne alebo položí pero a skryje alebo zobrazí
robota.
Upozornenie: v metóde kreslenia vlastného tvaru
kresli
ignorujú všetky
klony tejto metódy skutočnú domovskú polohu a smer robota,
namiesto toho pracujú s údajmi jeho polohy a smeru pred
začatím kreslenia vlastného tvaru. Preto je možné metódy
návratu na domovskú pozíciu v rámci kreslenia vlasntých
tvarov robota využívať na rýchly návrat a otočenie
kresliaceho robota na aktuálnu pozíciu a smer.
public void domov(double novýUholDoma)
domov
, len s tým rozdielom, že
robotovi nastaví nový štartovací smer.
Poznámka: počas kreslenia vlastného tvaru je nový štartovací smer platný len do skončenia kreslenia vlastného tvaru.
novýUholDoma
– nový smer robotapublic void domov(double novéXDoma, double novéYDoma)
domov
, len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu.
Poznámka: počas kreslenia vlastného tvaru je nová štartovacia pozícia platná len do skončenia kreslenia vlastného tvaru.
novéXDoma
– nová x-ová súradnica domovskej pozícienovéYDoma
– nová y-ová súradnica domovskej pozíciepublic void domov(double novéXDoma, double novéYDoma, double novýUholDoma)
domov
, len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu a smer.
Poznámka: počas kreslenia vlastného tvaru sú nový štartovací smer a pozícia platné len do skončenia kreslenia vlastného tvaru.
novéXDoma
– nová x-ová súradnica domovskej pozícienovéYDoma
– nová y-ová súradnica domovskej pozícienovýUholDoma
– nový smer robotapublic void domov(Point2D nováPolohaDoma)
domov
, len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu.
Poznámka: počas kreslenia vlastného tvaru je nová štartovacia pozícia platná len do skončenia kreslenia vlastného tvaru.
nováPolohaDoma
– bod určujúci nové súradnice
domovskej pozície v súradnicovom priestore robotapublic void domov(Point2D nováPolohaDoma, double novýUholDoma)
domov
, len s tým rozdielom, že
robotovi nastaví novú štartovaciu pozíciu a smer.
Poznámka: počas kreslenia vlastného tvaru sú nový štartovací smer a pozícia platné len do skončenia kreslenia vlastného tvaru.
nováPolohaDoma
– bod určujúci nové súradnice
domovskej pozície v súradnicovom priestore robotanovýUholDoma
– nový smer robotapublic void domov(Robot iný)
Poznámka: počas kreslenia vlastného tvaru platí, že: (1) od iného robota nie sú prevzaté žiadne údaje o viditeľnosti robota a polohe pera; (2) nový štartovací smer a pozícia sú platné len do skončenia kreslenia vlastného tvaru.
iný
– iný robotpublic void novýDomov()
public void novyDomov()
novýDomov
.public void novýDomov(double novýUholDoma)
novýUholDoma
– nový smer robotapublic void novyDomov(double novýUholDoma)
novýDomov
.public void novýDomov(double novéXDoma, double novéYDoma)
novéXDoma
– nová x-ová súradnica domovskej pozícienovéYDoma
– nová y-ová súradnica domovskej pozíciepublic void novyDomov(double novéXDoma, double novéYDoma)
novýDomov
.public void novýDomov(double novéXDoma, double novéYDoma, double novýUholDoma)
novéXDoma
– nová x-ová súradnica domovskej pozícienovéYDoma
– nová y-ová súradnica domovskej pozícienovýUholDoma
– nový smer robotapublic void novyDomov(double novéXDoma, double novéYDoma, double novýUholDoma)
novýDomov
.public void novýDomov(Point2D nováPolohaDoma)
nováPolohaDoma
– nová domovská pozícia
(v súradnicovom priestore robota)public void novýDomov(Point2D nováPolohaDoma, double novýUholDoma)
nováPolohaDoma
– nová domovská pozícia
(v súradnicovom priestore robota)novýUholDoma
– nový smer robotapublic void novýDomov(Robot iný)
iný
– iný robotpublic double domaX()
public double domaY()
public double uholDoma()
public double smerDoma()
public void domaX(double x)
x
– nová domovská x-ová súradnica robotapublic void domaY(double y)
y
– nová domovská y-ová súradnica robotapublic void uholDoma(double uhol)
uhol
– nový domovský smer (uhol) robotapublic void smerDoma(double uhol)
uhol
– nový domovský smer (uhol) robotapublic Boolean polohaPeraDoma()
Boolean
s hodnotou true
, ak zdvihnuté,
s hodnotou false
, ak sa po prechode stav pera
nemení, metóda vráti null
.Boolean
alebo
null
polohaPeraDoma(Boolean)
,
peroZdvihnutéDoma()
,
peroPoloženéDoma()
,
zdvihniPeroDoma()
,
položPeroDoma()
,
zachovajPeroDoma()
public Boolean peroZdvihnutéDoma()
Boolean
s hodnotou true
, ak je
položené, tak s hodnotou false
, ak sa po prechode
domov stav pera nemení metóda vráti null
.Boolean
alebo
null
polohaPeraDoma()
,
polohaPeraDoma(Boolean)
,
peroPoloženéDoma()
,
zdvihniPeroDoma()
,
položPeroDoma()
,
zachovajPeroDoma()
public Boolean peroZdvihnuteDoma()
peroZdvihnutéDoma
.public Boolean peroPoloženéDoma()
Boolean
s hodnotou true
, ak je
zdvihnuté, tak s hodnotou false
, ak sa po
prechode stav pera nemení metóda vráti null
.Boolean
alebo
null
polohaPeraDoma()
,
polohaPeraDoma(Boolean)
,
peroZdvihnutéDoma()
,
zdvihniPeroDoma()
,
položPeroDoma()
,
zachovajPeroDoma()
public Boolean peroPolozeneDoma()
peroPoloženéDoma
.public void polohaPeraDoma(Boolean položené)
Boolean
. Pri zadaní objektu s hodnotou true
,
bude pero položené, pri objekte s hodnotou false
bude pero zdvihnuté a pri zadaní null
, sa po
prechode domov stav pera nezmení.položené
– objekt Boolean
alebo null
polohaPeraDoma()
,
peroZdvihnutéDoma()
,
peroPoloženéDoma()
,
zdvihniPeroDoma()
,
položPeroDoma()
,
zachovajPeroDoma()
public void zdvihniPeroDoma()
domov
zdvihne robot pero z plátna.public void položPeroDoma()
domov
položí robot pero na plátno.public void polozPeroDoma()
položPeroDoma
.public void zachovajPeroDoma()
domov
nijako ovplyvňovaný.public Boolean viditeľnýDoma()
Boolean
s hodnotou true
, ak
skrytý, tak s hodnotou false
a ak sa po prechode
domov viditeľnosť nemení, metóda vráti null
.Boolean
alebo
null
zobrazenýDoma()
,
skrytýDoma()
,
ukážDoma()
,
zobrazDoma()
,
skryDoma()
,
zachovajViditeľnosťDoma()
public Boolean viditelnyDoma()
viditeľnýDoma
.public Boolean zobrazenýDoma()
Boolean
s hodnotou true
, ak
skrytý, tak s hodnotou false
a ak sa po prechode
domov viditeľnosť nemení, metóda vráti null
.Boolean
alebo
null
viditeľnýDoma()
,
skrytýDoma()
,
ukážDoma()
,
zobrazDoma()
,
skryDoma()
,
zachovajViditeľnosťDoma()
public Boolean zobrazenyDoma()
zobrazenýDoma
.public Boolean skrytýDoma()
Boolean
s hodnotou true
, ak zobrazený, tak
s hodnotou false
a ak sa po prechode domov
viditeľnosť nemení, metóda vráti null
.Boolean
alebo
null
viditeľnýDoma()
,
zobrazenýDoma()
,
ukážDoma()
,
zobrazDoma()
,
skryDoma()
,
zachovajViditeľnosťDoma()
public Boolean skrytyDoma()
skrytýDoma
.public void ukážDoma()
domov
zobrazí.public void ukazDoma()
viditeľnýDoma
.public void zobrazDoma()
domov
zobrazí.public void skryDoma()
domov
skryje.public void zachovajViditeľnosťDoma()
domov
nijako
ovplyvňovaná.viditeľnýDoma()
,
zobrazenýDoma()
,
skrytýDoma()
,
ukážDoma()
,
zobrazDoma()
,
skryDoma()
public void zachovajViditelnostDoma()
zachovajViditeľnosťDoma
.public int spôsobKreslenia()
kresliPriamo
, alebo kombinácia hodnôt kresliNaStred
a kresliRotované
text(String)
,
obrázok(String)
public int sposobKreslenia()
spôsobKreslenia
.public void spôsobKreslenia(int novýSpôsobKreslenia)
novýSpôsobKreslenia
– môže byť buď hodnota kresliPriamo
, alebo kombinácia hodnôt kresliNaStred
a kresliRotované
.text(String)
,
obrázok(String)
public void sposobKreslenia(int novýSpôsobKreslenia)
spôsobKreslenia
.public void dopredu(double dĺžka)
vzad
.dĺžka
– počet bodov, o ktorý sa má robot posunúťpublic void vpred(double dĺžka)
dopredu
.public void vzad(double dĺžka)
dopredu
.dĺžka
– počet bodov, o ktorý sa má robot posunúťpublic void dozadu(double dĺžka)
vzad
.public void vpravo(double uhol)
vľavo
.uhol
– uhol, o ktorý sa má robot otočiťpublic void doprava(double uhol)
vpravo
.public void vľavo(double uhol)
vpravo
.uhol
– uhol, o ktorý sa má robot otočiťpublic void vlavo(double uhol)
vľavo
.public void doľava(double uhol)
vľavo
.public void dolava(double uhol)
doľava
.public void otočO(double uhol)
vľavo
.uhol
– uhol, o ktorý sa má robot otočiťotoč(double)
public void otocO(double uhol)
otoč
.public void posuňVpravo(double dĺžka)
posuňVľavo
.dĺžka
– počet bodov, o ktorý sa má robot posunúťpublic void posunVpravo(double dĺžka)
posuňVpravo
.public void posuňDoprava(double dĺžka)
posuňVpravo
.public void posunDoprava(double dĺžka)
posuňDoprava
.public void posuňVľavo(double dĺžka)
posuňVpravo
.dĺžka
– počet bodov, o ktorý sa má robot posunúťpublic void posunVlavo(double dĺžka)
posuňVľavo
.public void posuňDoľava(double dĺžka)
posuňVľavo
.public void posunDolava(double dĺžka)
posuňDoľava
.public void posuňVSmere(double smer, double dĺžka)
smer
– uhol smeru, ktorým sa má robot posunúťdĺžka
– počet bodov, o ktorý sa má robot posunúťpublic void posunVSmere(double smer, double dĺžka)
posuňVSmere
.public double smerNa(double x, double y)
x
– x-ová súradnica boduy
– y-ová súradnica boduotočNa(double, double)
,
otočNa(double, double, double)
public double uholNa(double x, double y)
smerNa
.public double smerNa(Point2D bod)
bod
– vyšetrovaný bod v súradnicovom priestore robotaotočNa(Point2D)
,
otočNa(Point2D, double)
public double smerNa(Robot iný)
iný
– iný robototočNa(Robot)
,
otočNa(Robot, double)
public double smerNa(Shape tvar)
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), ku stredu
hraníc ktorého má byť zistený smerotočNa(Shape)
,
otočNa(Shape, double)
public double smerNaMyš()
otočNaMyš()
,
otočNaMyš(double)
public double smerNaMys()
smerNaMyš
.public double uholNaMyš()
smerNaMyš
.public double uholNaMys()
smerNaMyš
.public double smer(double Δx, double Δy)
smerNa
. (Inak povedané – táto metóda pracuje s tzv.
relatívnymi súradnicami – súradnicami vztiahnutými
k súčasnej polohe robota.)Δx
– odchýlka v smere xΔy
– odchýlka v smere ypublic double uhol(double Δx, double Δy)
smer
.public void otočNa(double x, double y)
x
– x-ová súradnica boduy
– y-ová súradnica bodusmerNa(double, double)
public void otocNa(double x, double y)
otočNa
.public void otočNa(double x, double y, double najviacO)
otočNa
, ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla.x
– x-ová súradnica boduy
– y-ová súradnica bodunajviacO
– maximálna hodnota uhla, o ktorú sa môže
robot otočiť smerom k bodu [x, y]smerNa(double, double)
public void otocNa(double x, double y, double najviacO)
otočNa
.public void otočNa(Point2D bod)
bod
– súradnice bodusmerNa(Point2D)
public void otočNa(Point2D bod, double najviacO)
otočNa
, ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla.bod
– súradnice bodunajviacO
– maximálna hodnota uhla, o ktorú sa môže
robot otočiť smerom k bodusmerNa(Point2D)
public void otočNa(Robot iný)
iný
– iný robotsmerNa(Robot)
public void otočNa(Robot iný, double najviacO)
otočNa
,
ibaže obmedzuje uhol pootočenia daným smerom – neotočí tohto
robota okamžite smerom k inému robotovi, iba ho pootočí
daným smerom o maximálnu zadanú hodnotu uhla.iný
– iný robotnajviacO
– maximálna hodnota uhla, o ktorú sa môže
tento robot otočiť smerom k inému robotovismerNa(Robot)
public void otočNa(Shape tvar)
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), do stredu
hraníc ktorého má byť robot nasmerovanýsmerNa(Shape)
public void otočNa(Shape tvar, double najviacO)
otočNa
,
ibaže obmedzuje uhol pootočenia daným smerom – neotočí tohto
robota okamžite smerom do stredu hraníc[1] tvaru,
iba ho pootočí daným smerom o maximálnu zadanú hodnotu uhla.
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), do stredu
hraníc ktorého má byť robot nasmerovanýnajviacO
– maximálna hodnota uhla, o ktorú sa môže
tento robot otočiť smerom do stredu hraníc tvarusmerNa(Shape)
public void otočNaMyš()
smerNaMyš()
public void otocNaMys()
otočNaMyš
.public void otočNaMyš(double najviacO)
otočNaMyš
,
ibaže obmedzuje uhol pootočenia – neotočí tohto robota
okamžite smerom k súradniciam myši, iba ho pootočí daným
smerom o maximálnu zadanú hodnotu uhla.najviacO
– maximálna hodnota uhla, o ktorú sa môže
tento robot otočiť smerom k aktuálnym súradniciam myšismerNaMyš()
public void otocNaMys(double najviacO)
otočNaMyš
.public void otoč(double Δx, double Δy)
otočNa
. (Inak povedané – táto
metóda pracuje s tzv. relatívnymi súradnicami – súradnicami
vztiahnutými k súčasnej polohe robota.)Δx
– odchýlka v smere xΔy
– odchýlka v smere yotoč(double)
,
otočO(double)
public void otoc(double Δx, double Δy)
otoč
.public void otoč(double Δx, double Δy, double najviacO)
otoč
, ibaže obmedzuje uhol pootočenia daným smerom –
neotočí robota okamžite smerom na zadané súradnice, iba ním
pootočí daným smerom o maximálnu zadanú hodnotu uhla.Δx
– odchýlka v smere xΔy
– odchýlka v smere ynajviacO
– maximálna hodnota uhla, o ktorú sa môže
robot otočiť smerom k bodu [Δx, Δy]public void otoc(double Δx, double Δy, double najviacO)
otoč
.public void otoč(Robot iný)
iný
– iný robot, podľa ktorého chceme nasmerovať
tohto robotapublic void otoč(Robot iný, double najviacO)
otoč
, ibaže
obmedzuje uhol pootočenia daným smerom – neotočí robota
okamžite podľa smeru iného robota, iba ním pootočí
o maximálnu zadanú hodnotu uhla.iný
– iný robot, podľa ktorého chceme nasmerovať
tohto robotanajviacO
– maximálna hodnota uhla, o ktorú sa môže
robot otočiťpublic void choďNa(double novéX, double novéY)
novéX
– nová x-ová súradnicanovéY
– nová y-ová súradnicapublic void chodNa(double novéX, double novéY)
choďNa
.public void choďNa(Point2D nováPoloha)
nováPoloha
– nové súradnicepublic void choďNa(Robot iný)
iný
– iný robotpublic void choďNa(Shape tvar)
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), do stredu
hraníc ktorého prejde tento robotpublic void choďNaMyš()
public void chodNaMys()
choďNaMyš
.public void choď(double Δx, double Δy)
Δx
– počet bodov v smere xΔy
– počet bodov v smere ypublic void chod(double Δx, double Δy)
choď
.public void skočNa(double novéX, double novéY)
novéX
– nová x-ová súradnicanovéY
– nová y-ová súradnicapublic void skocNa(double novéX, double novéY)
skočNa
.public void skočNa(Point2D nováPoloha)
nováPoloha
– nové súradnicepublic void skočNa(Robot iný)
iný
– iný robotpublic void skočNa(Shape tvar)
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), do stredu
hraníc ktorého preskočí tento robotpublic void skočNaMyš()
public void skocNaMys()
skočNaMyš
.public void skoč(double Δx, double Δy)
Δx
– počet bodov v smere xΔy
– počet bodov v smere ypublic void skoc(double Δx, double Δy)
skoč
.public void choďPoOblúku(double uhol, double polomer)
uhol
– uhol, o ktorý sa má robot otočiť okolo
zadaného polomerupolomer
– polomer otáčaniapublic void chodPoObluku(double uhol, double polomer)
choďPoOblúku
.public boolean aktívny()
true
ak je robot aktívny, inak false
public boolean aktivny()
aktívny
.public boolean neaktívny()
aktívny
.true
ak nie je robot aktívny, inak
false
public boolean neaktivny()
aktívny
.public void aktivuj()
aktivácia
. Opakom
aktivácie je deaktivácia
a alternatívou aktivácie je spustenie, ktoré je preferované v iných situáciách –
pozri informácie pri metóde aktívny
.deaktivuj()
,
spusti()
public void aktivuj(int dobaAktivity)
aktivuj()
, ibaže dovoľuje programátorovi určiť dobu
aktivity. Doba je určená celým číslom, ktoré vyjadruje počet
tikov časovača, po ktorých je robot
automaticky deaktivovaný[1]. Po uplynutí doby aktivity je
robot deaktivovaný spustením metódy deaktivuj
.
[1] – ak chceme získať údaj v sekundách, musíme dobu aktivity násobiť intervalom časovača; avšak spúšťanie tikov časovača nikdy nie je úplne presné, preto ani vypočítaný údaj v sekundách nikdy nebude úplne presný – skutočná doba aktivity robota sa môže líšiť podľa momentálneho zaťaženia systému…
dobaAktivity
– celé číslo určujúce počet tikov časovača po ktorých dôjde
k automatickej deaktiváciipublic void aktivuj(boolean ajČasovač)
aktivuj()
s tým, že dovoľuje programátorovi určiť, či má
byť automaticky spustený
časovač (ak už nebeží).ajČasovač
– ak je true
, je (v prípade, že
nebeží) automaticky spustený časovačpublic void aktivuj(int dobaAktivity, boolean ajČasovač)
aktivuj(dobaAktivity)
a aktivuj(ajČasovač)
. Platia rovnaké pravidlá ako pri
spomenutých metódach…dobaAktivity
– celé číslo určujúce počet tikov časovača po ktorých dôjde
k automatickej deaktiváciiajČasovač
– ak je true
, je (v prípade, že
nebeží) automaticky spustený časovačpublic void deaktivuj()
deaktivácia
. Metóda deaktivuj
je
automaticky spustená aj metódou pracuj
po
vypršaní doby aktivity tohto robota (pozri napr. aktivuj(int)
aktivuj(int dobaAktivity)). Táto metóda je
opakom skupiny metód aktivuj
a alternatívou metódy zastav
, ktorá je
preferovaná v iných prípadoch…public void spusti()
spustenie
. Opakom
tohto spôsobu aktivácie je (okamžité) zastavenie a alternatívou je klasická
aktivácia, ktorá je preferovaná
v iných situáciách – pozri informácie pri metóde aktívny
.public void spusti(int dobaAktivity)
spusti()
, ibaže dovoľuje programátorovi určiť dobu
aktivity. Doba je určená celým číslom, ktoré vyjadruje počet
tikov časovača, po ktorých je robot
automaticky deaktivovaný[1]. Bez ohľadu na to, že ide
o alternatívny spôsob aktivácie, je po uplynutí doby
aktivity spustená metóda deaktivuj
(čiže nie zastav
).
[1] – ak chceme získať údaj v sekundách, musíme dobu aktivity násobiť intervalom časovača; avšak spúšťanie tikov časovača nikdy nie je úplne presné, preto ani vypočítaný údaj v sekundách nikdy nebude úplne presný – skutočná doba aktivity robota sa môže líšiť podľa momentálneho zaťaženia systému…
dobaAktivity
– celé číslo určujúce počet tikov časovača po ktorých dôjde
k automatickej deaktiváciipublic void spusti(boolean ajČasovač)
spusti()
s tým, že dovoľuje programátorovi určiť, či má byť
automaticky spustený
časovač (ak už nebeží).ajČasovač
– ak je true
, je (v prípade, že
nebeží) automaticky spustený časovačpublic void spusti(int dobaAktivity, boolean ajČasovač)
spusti(dobaAktivity)
a spusti(ajČasovač)
. Platia rovnaké pravidlá ako pri
spomenutých metódach…dobaAktivity
– celé číslo určujúce počet tikov časovača po ktorých dôjde
k automatickej deaktiváciiajČasovač
– ak je true
, je (v prípade, že
nebeží) automaticky spustený časovačpublic void zastav()
cieľ
alebo niektorý jej klon) a upozorniť na to inštanciu
robota volaním príslušnej metódy – pri spustení tejto metódy
je automaticky zavolaná metóda zastavenie
. Metóda zastav
je automaticky spustená
aj metódou pracuj
po dosiahnutí určeného
cieľa týmto robotom (pozri napr. vyššie spomenutú metódu
cieľ(x, y)
). Táto metóda je
opakom skupiny metód spusti
a alternatívou
metódy deaktivuj
, ktorá je preferovaná
v iných situáciách… Pozor(!) na podobnosť názvu so
skupinou metód zabrzdi
, ktoré sú
protikladom supiny metód rozbehniSa
a majú za účel zahájiť brzdenie pohybujúceho sa robota…spusti()
,
deaktivuj()
public double rýchlosť()
public double rychlost()
rýchlosť
.public void rýchlosť(double rýchlosť)
aktivuj()
), aby sa
mohol pohybovať. Ak je zadaná nulová hodnota rýchlosti,
robot nie je automaticky deaktivovaný.rýchlosť
– nová hodnota rýchlostipublic void rychlost(double rýchlosť)
rýchlosť
.public void rýchlosť(double rýchlosť, boolean aktivuj)
rýchlosť
– nová hodnota rýchlostiaktivuj
– ak je true
a zadaná rýchlosť je
nenulová, automaticky aktivuje robotapublic void rychlost(double rýchlosť, boolean aktivuj)
rýchlosť
.public double maximálnaRýchlosť()
public double maximalnaRychlost()
maximálnaRýchlosť
.public void maximálnaRýchlosť(double maximálnaRýchlosť)
maximálnaRýchlosť
– nová hodnota maximálnej
rýchlostipublic void maximalnaRychlost(double maximálnaRýchlosť)
maximálnaRýchlosť
.public double uhlováRýchlosť()
public double uhlovaRychlost()
uhlováRýchlosť
.public double rýchlosťOtáčania()
uhlováRýchlosť
.public double rychlostOtacania()
uhlováRýchlosť
.public void uhlováRýchlosť(double uhlováRýchlosť)
uhlováRýchlosť
– nová hodnota uhlovej rýchlosti
(rýchlosti otáčania)public void uhlovaRychlost(double uhlováRýchlosť)
uhlováRýchlosť
.public void rýchlosťOtáčania(double uhlováRýchlosť)
uhlováRýchlosť
.public void rychlostOtacania(double uhlováRýchlosť)
uhlováRýchlosť
.public void uhlováRýchlosť(double uhlováRýchlosť, boolean aktivuj)
aktivuj
dovoľuje
programátorovi určiť, či smie byť robot (v prípade zadania
nenulovej hodnoty uhlovej rýchlosti) aktivovaný. Neaktívne roboty sa nepohybujú ani neotáčajú aj
keď majú nastavenú nenulovú rýchlosť, resp. rýchlosť
otáčania.uhlováRýchlosť
– nová hodnota uhlovej rýchlosti
(rýchlosti otáčania)aktivuj
– ak je true
a zadaná hodnota
uhlovej rýchlosti je nenulová, robot je aktivovanýpublic void uhlovaRychlost(double uhlováRýchlosť, boolean aktivuj)
uhlováRýchlosť
.public void rýchlosťOtáčania(double uhlováRýchlosť, boolean aktivuj)
uhlováRýchlosť
.public void rychlostOtacania(double uhlováRýchlosť, boolean aktivuj)
uhlováRýchlosť
.public double maximálnaUhlováRýchlosť()
public double maximalnaUhlovaRychlost()
maximálnaUhlováRýchlosť
.public double maximálnaRýchlosťOtáčania()
maximálnaUhlováRýchlosť
.public double maximalnaRychlostOtacania()
maximálnaUhlováRýchlosť
.public void maximálnaUhlováRýchlosť(double maximálnaUhlováRýchlosť)
maximálnaUhlováRýchlosť
– nová hodnota maximálnej
uhlovej rýchlostipublic void maximalnaUhlovaRychlost(double maximálnaUhlováRýchlosť)
maximálnaUhlováRýchlosť
.public void maximálnaRýchlosťOtáčania(double maximálnaUhlováRýchlosť)
maximálnaUhlováRýchlosť
.public void maximalnaRychlostOtacania(double maximálnaUhlováRýchlosť)
maximálnaUhlováRýchlosť
.public double zrýchlenie()
public double zrychlenie()
zrýchlenie
.public void zrýchlenie(double zrýchlenie)
zrýchlenie
– nová hodnota zrýchleniapublic void zrychlenie(double zrýchlenie)
zrýchlenie
.public void zrýchlenie(double zrýchlenie, boolean aktivuj)
zrýchlenie(double zrýchlenie)
, ale dovoľuje programátorovi
určiť, či smie byť robot (v prípade zadania nenulového
zrýchlenia) aktivovaný.zrýchlenie
– nová hodnota zrýchleniaaktivuj
– ak je true
a zadaná hodnota
zrýchlenia je nenulová, robot je aktivovanýpublic void zrychlenie(double zrýchlenie, boolean aktivuj)
zrýchlenie
.public double uhlovéZrýchlenie()
public double uhloveZrychlenie()
uhlovéZrýchlenie
.public double zrýchlenieOtáčania()
uhlovéZrýchlenie
.public double zrychlenieOtacnia()
uhlovéZrýchlenie
.public void uhlovéZrýchlenie(double uhlovéZrýchlenie)
uhlovéZrýchlenie
– nová hodnota uhlového zrýchlenia
(zrýchlenia otáčania)public void uhloveZrychlenie(double uhlovéZrýchlenie)
uhlovéZrýchlenie
.public void zrýchlenieOtáčania(double uhlovéZrýchlenie)
uhlovéZrýchlenie
.public void zrychlenieOtacnia(double uhlovéZrýchlenie)
uhlovéZrýchlenie
.public void uhlovéZrýchlenie(double uhlovéZrýchlenie, boolean aktivuj)
uhlovéZrýchlenie(double
uhlovéZrýchlenie)
, ale dovoľuje programátorovi určiť, či
smie byť robot (v prípade zadania nenulového zrýchlenia)
aktivovaný.uhlovéZrýchlenie
– nová hodnota uhlového zrýchlenia
(zrýchlenia otáčania)aktivuj
– ak je true
a zadaná hodnota
uhlového zrýchlenia je nenulová, robot je aktivovanýpublic void uhloveZrychlenie(double uhlovéZrýchlenie, boolean aktivuj)
uhlovéZrýchlenie
.public void zrýchlenieOtáčania(double uhlovéZrýchlenie, boolean aktivuj)
uhlovéZrýchlenie
.public void zrychlenieOtacnia(double uhlovéZrýchlenie, boolean aktivuj)
uhlovéZrýchlenie
.public void rozbehniSa()
public void rozbehniSa(double zrýchlenie)
zrýchlenie
– nová hodnota zrýchleniapublic void rozbehniSa(double zrýchlenie, double maximálnaRýchlosť)
zrýchlenie
– nová hodnota zrýchleniamaximálnaRýchlosť
– nová hodnota maximálnej rýchlostipublic void rozbehniSa(double zrýchlenie, boolean aktivuj)
zrýchlenie
– nová hodnota zrýchleniaaktivuj
– ak je true
, automaticky
aktivuje robota pri zadaní nenulového zrýchleniapublic void rozbehniSa(double zrýchlenie, double maximálnaRýchlosť, boolean aktivuj)
zrýchlenie
– nová hodnota zrýchleniamaximálnaRýchlosť
– nová hodnota maximálnej rýchlostiaktivuj
– ak je true
, automaticky
aktivuje robota pri zadaní nenulového zrýchleniapublic void zabrzdi()
zastav
, ktorá má na starosti
deaktiváciu robota (napr. po dosiahnutí cieľa)…public void zabrzdi(double zrýchlenie)
zastav
,
ktorá má na starosti deaktiváciu robota (napr. po
dosiahnutí cieľa)…zrýchlenie
– nová hodnota zrýchlenia tohto robota
(nesmie byť rovné nule)public boolean zastavíPoSpomalení()
true
– áno; false
– niepublic boolean zastaviPoSpomaleni()
zastavíPoSpomalení
.public void zastavPoSpomalení()
public void zastavPoSpomaleni()
zastavPoSpomalení
.public boolean cieľAktívny()
true
– áno; false
– niepublic boolean cielAktivny()
cieľAktívny
.public double cieľX()
public double cielX()
cieľX
.public double cieľY()
public double cielY()
cieľY
.public boolean zastavíVCieli()
true
– áno; false
– niepublic boolean zastaviVCieli()
zastavíVCieli
.public void zrušCieľ()
cieľ
. Robot je automaticky
deaktivovaný spôsobom ako pri metóde zastav
. Ak ho nechceme automaticky deaktivovať, musíme
použiť metódu zrušCieľ(zastav)
s argumentom zastav
rovným false
.cieľ(double, double)
,
zrušCieľ(boolean)
public void zrusCiel()
zrušCieľ
.public void zrušSledovanieCieľa()
zrušCieľ
.public void zrusSledovanieCiela()
zrušCieľ
.public void zrušCieľ(boolean zastav)
cieľ
. Parameter
zastav
dovoľuje programátorovi rozhodnúť, či má
robot zostať aktívny.zastav
– ak je true
, robot je
deaktivovaný rovnakým spôsobom ako pri volaní metódy
zastav
.cieľ(double, double)
,
zrušCieľ()
public void zrusCiel(boolean zastav)
zrušCieľ
.public void zrušSledovanieCieľa(boolean zastav)
zrušCieľ
.public void zrusSledovanieCiela(boolean zastav)
zrušCieľ
.public void cieľ(double x, double y)
x
– x-ová súradnica cieľay
– y-ová súradnica cieľapublic void ciel(double x, double y)
cieľ
.public void cieľ(double x, double y, boolean spusti)
cieľ(x, y)
, ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný).x
– x-ová súradnica cieľay
– y-ová súradnica cieľaspusti
– ak je rovné true
, je vynútené
spustenie a zároveň je robotovi
prikázané, aby zastavil
v cielipublic void ciel(double x, double y, boolean spusti)
cieľ
.public void cieľ(double x, double y, boolean spusti, boolean zastavVCieli)
cieľ(x, y)
, ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa.x
– x-ová súradnica cieľay
– y-ová súradnica cieľaspusti
– ak je rovné true
, je vynútené
spustenie robotazastavVCieli
– určuje, či má robot automaticky
zastaviť v cielipublic void ciel(double x, double y, boolean spusti, boolean zastavVCieli)
cieľ
.public void cieľ(Point2D bod)
bod
– súradnice cieľapublic void cieľ(Point2D bod, boolean spusti)
cieľ(bod)
, ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný).bod
– súradnice cieľaspusti
– ak je rovné true
, je vynútené
spustenie a zároveň je robotovi
prikázané, aby zastavil
v cielipublic void cieľ(Point2D bod, boolean spusti, boolean zastavVCieli)
cieľ(bod)
, ibaže umožňuje programátorovi určiť, či smie byť
robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa.bod
– súradnice cieľaspusti
– ak je rovné true
, je vynútené
spustenie robotazastavVCieli
– určuje, či má robot automaticky
zastaviť v cielipublic void cieľ(Robot iný)
upravCieľ
.
Počas činnosti smerovania na cieľ je robot automaticky otáčaný smerom na cieľové súradnice (buď s ohľadom na aktuálnu rýchlosť otáčania, alebo okamžite) a v prípade, že má robot nenulovú rýchlosť (prípadne zrýchlenie), pohybuje sa daným smerom. Po dosiahnutí cieľa robot automaticky zastaví.
iný
– robot, ktorého poloha v čase volania tejto
metódy je zvolená za nový cieľ; ak je null
,
smerovanie do cieľa je zrušenépublic void cieľ(Robot iný, boolean spusti)
cieľ(Robot)
, ibaže umožňuje programátorovi určiť, či
smie byť tento robot automaticky spustený (aktivovaný).iný
– robot, ktorého poloha v čase volania tejto
metódy je zvolená za nový cieľ; ak je null
,
smerovanie do cieľa je zrušenéspusti
– ak je rovné true
, je vynútené
spustenie a zároveň je robotovi
prikázané, aby zastavil
v cielipublic void cieľ(Robot iný, boolean spusti, boolean zastavVCieli)
cieľ(Robot)
, ibaže umožňuje programátorovi určiť, či
smie byť tento robot automaticky spustený (aktivovaný) a či má zastaviť po dosiahnutí cieľa.iný
– robot, ktorého poloha v čase volania tejto
metódy je zvolená za nový cieľ; ak je null
,
smerovanie do cieľa je zrušenéspusti
– ak je rovné true
, je vynútené
spustenie robotazastavVCieli
– určuje, či má robot automaticky
zastaviť v cielipublic void cieľ(Shape tvar)
Shape
). Počas tejto činnosti je robot automaticky
otáčaný smerom na cieľové súradnice (buď s ohľadom na
aktuálnu rýchlosť
otáčania, alebo okamžite) a v prípade, že má robot nenulovú
rýchlosť (prípadne
zrýchlenie), pohybuje sa
daným smerom. Po dosiahnutí cieľa robot automaticky
zastaví. Metóda vynúti spustenie robota.
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar, ktorého stred hraníc je zvolený za nový
cieľ; ak je null
, smerovanie do cieľa je
zrušenépublic void cieľ(Shape tvar, boolean spusti)
cieľ(tvar)
, ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný).tvar
– tvar, ktorého stred hraníc je zvolený za nový
cieľ; ak je null
, smerovanie do cieľa je
zrušenéspusti
– ak je rovné true
, je vynútené
spustenie a zároveň je robotovi
prikázané, aby zastavil
v cielipublic void cieľ(Shape tvar, boolean spusti, boolean zastavVCieli)
cieľ(tvar)
, ibaže umožňuje programátorovi určiť, či
smie byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa.tvar
– tvar, ktorého stred hraníc je zvolený za nový
cieľ; ak je null
, smerovanie do cieľa je
zrušenéspusti
– ak je rovné true
, je vynútené
spustenie robotazastavVCieli
– určuje, či má robot automaticky
zastaviť v cielipublic void cieľNaMyš()
public void cielNaMys()
cieľNaMyš
.public void cieľNaMyš(boolean spusti)
cieľNaMyš()
, ibaže umožňuje programátorovi určiť, či smie
byť robot automaticky spustený
(aktivovaný).spusti
– ak je rovné true
, je vynútené
spustenie a zároveň je robotovi
prikázané, aby zastavil
v cielipublic void cielNaMys(boolean spusti)
cieľNaMyš
.public void cieľNaMyš(boolean spusti, boolean zastavVCieli)
cieľNaMyš()
, ibaže umožňuje programátorovi určiť, či smie
byť robot automaticky spustený
(aktivovaný) a či má zastaviť po dosiahnutí cieľa.spusti
– ak je rovné true
, je vynútené
spustenie robotazastavVCieli
– určuje, či má robot automaticky
zastaviť v cielipublic void cielNaMys(boolean spusti, boolean zastavVCieli)
cieľNaMyš
.public void upravCieľ(double x, double y)
cieľ
.x
– nová x-ová súradnica cieľay
– nová y-ová súradnica cieľapublic void upravCiel(double x, double y)
upravCieľ
.public void upravCieľ(double x, double y, boolean spusti)
cieľ
.x
– nová x-ová súradnica cieľay
– nová y-ová súradnica cieľaspusti
– dovoľuje programátorovi rozhodnúť, či smie
byť (v prípade, že smerovanie do cieľa nie je aktívne)
automaticky volaná metóda spusti
public void upravCiel(double x, double y, boolean spusti)
upravCieľ
.public void upravCieľ(Point2D bod)
cieľ
.bod
– nové súradnice cieľapublic void upravCieľ(Point2D bod, boolean spusti)
cieľ
.bod
– nové súradnice cieľaspusti
– dovoľuje programátorovi rozhodnúť, či smie
byť (v prípade, že smerovanie do cieľa nie je aktívne)
automaticky volaná metóda spusti
public void upravCieľ(Robot iný)
cieľ
.iný
– robot, ktorého poloha bude použitá ako nový cieľpublic void upravCieľ(Robot iný, boolean spusti)
cieľ
.iný
– robot, ktorého poloha bude použitá ako nový cieľspusti
– dovoľuje programátorovi rozhodnúť, či smie
byť (v prípade, že smerovanie do cieľa nie je aktívne)
automaticky volaná metóda spusti
public void upravCieľ(Shape tvar)
cieľ
.
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar, ktorého súradnice stredu hraníc budú
použité ako nový cieľpublic void upravCieľ(Shape tvar, boolean spusti)
cieľ
.
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar, ktorého súradnice stredu hraníc budú
použité ako nový cieľspusti
– dovoľuje programátorovi rozhodnúť, či smie
byť (v prípade, že smerovanie do cieľa nie je aktívne)
automaticky volaná metóda spusti
public void upravCieľNaMyš()
cieľNaMyš
.public void upravCielNaMys()
upravCieľNaMyš
.public void upravCieľNaMyš(boolean spusti)
cieľNaMyš
.spusti
– dovoľuje programátorovi rozhodnúť, či smie
byť (v prípade, že smerovanie do cieľa nie je aktívne)
automaticky volaná metóda spusti
public void upravCielNaMys(boolean spusti)
upravCieľNaMyš
.public void pracuj()
časovačom
. Tvorí model
správania aktívnych robotov
a zároveň pravidelne spúšťa metódu aktivita
pre aktívnych robotov a pasivita
pre pasívnych robotov. Aktívny robot môže mať
definovaný cieľ alebo
dobu aktivity (pozri aktivuj(dobaAktivity)
. Na to, aby sa robot mohol
pohybovať (a dostať sa do cieľa), musí mať definovanú
hodnotu rýchlosti, prípadne
zrýchlenia. Ďalšie atribúty ako
maximálna
rýchlosť, rýchlosť
otáčania, zrýchlenie otáčania a maximálna rýchlosť
otáčania sú nepovinné. Iba menia správanie robota pri
pohybe, ktorý sa tým môže stať o niečo prirodzenejším.
(Poznámka: prekrytím tejto metódy by sme
mohli úplne prepracovať správanie robota – aktívneho aj
neaktívneho, avšak odporúčame ponechať predvolené
správanie a iba korigovať správanie robotov prepisovaním
metód aktivita
a pasivita
.)
public void vyzviRobotov()
prijatieVýzvy
, pričom
autorom výzvy bude tento robot a hodnota argumentu
kľúč
bude rovná -1
. Prvotné poradie
robotov je určené poradím ich vytvorenia (čiže ak sme
nijako neovplyvnili poradie robotov, je prvý vyzvaný ten
robot, ktorý bol vytvorený ako prvý, to jest robot, ktorý
je nakreslený pod všetkými ostatnými robotmi). Dodatočne
môžeme poradie ovplyvniť volaním metód naVrch
, naSpodok
,
vyššie
, nižšie
, pred
a za
.
Poznámka: ak je poradie robotov zmenené počas spracovania výzviev, dôjde z technických príčin k opätovnému spusteniu posielania výziev (inak povedané – posielanie výziev sa „reštartuje“). To znamená, že niektorí roboti budú vyzvaní dva- alebo viackrát. Buďte preto opatrní so zmenami poradia v rámci spracovania výziev, aby ste nespôsobili vznik nekonečného cyklu… (Rovnaký efekt má prípadné vytvorenie nového robota, resp. ľubovoľnej inštancie triedy odvodenej od robota.)
Poznámka 2: mechanizmus výziev nie je taký efektívny ako definícia vlastného zoznamu robotov (prípadne inštancií odvodených tried) a vykonanie hromadnej akcie pomocou tohto zoznamu. Slúži predovšedkým na umožnenie hromadného spracovania bez nutnosti vytvárania takého zoznamu (napr. pri malom počte robotov alebo predtým, než sa programátor podrobnejšie oboznámi s možnosťami zoznamov).
public void vyzviRobotov(int kľúč)
prijatieVýzvy
, pričom
autorom výzvy bude tento robot. Pomocou argumentu
kľúč
môžeme odlišovať rôzne druhy výziev
a ovplyvňovať tým správanie reakcie prijatieVýzvy
. Prvotné
poradie robotov je určené poradím ich vytvorenia (čiže ak
sme nijako neovplyvnili poradie robotov, je prvý vyzvaný
ten robot, ktorý bol vytvorený ako prvý, to jest robot,
ktorý je nakreslený pod všetkými ostatnými robotmi).
Dodatočne môžeme poradie ovplyvniť volaním metód naVrch
, naSpodok
,
vyššie
, nižšie
, pred
a za
.
Poznámka: ak je poradie robotov zmenené počas spracovania výzviev, dôjde z technických príčin k opätovnému spusteniu posielania výziev (inak povedané – posielanie výziev sa „reštartuje“). To znamená, že niektorí roboti budú vyzvaní dva- alebo viackrát. Buďte preto opatrní so zmenami poradia v rámci spracovania výziev, aby ste nespôsobili vznik nekonečného cyklu… (Rovnaký efekt má prípadné vytvorenie nového robota, resp. ľubovoľnej inštancie triedy odvodenej od robota.)
Poznámka 2: mechanizmus výziev nie je taký efektívny ako definícia vlastného zoznamu robotov (prípadne inštancií odvodených tried) a vykonanie hromadnej akcie pomocou tohto zoznamu. Slúži predovšedkým na umožnenie hromadného spracovania bez nutnosti vytvárania takého zoznamu (napr. pri malom počte robotov alebo predtým, než sa programátor podrobnejšie oboznámi s možnosťami zoznamov).
kľúč
– celočíselná hodnota, ktorá je poslaná do
reakcie prijatieVýzvy
každého
robota; takto je možné odlíšiť rôzne druhy výziev, vďaka
čomu môžeme ovplyvniť správanie reakcie prijatieVýzvy
public void vyzviRobotov(int kľúč, boolean obrátene)
prijatieVýzvy
, pričom
autorom výzvy bude tento robot. Pomocou argumentu
kľúč
môžeme odlišovať rôzne druhy výziev
a ovplyvňovať tým správanie reakcie prijatieVýzvy
. Argument
obrátene
určuje smer spracovania. Ak je rovný
true
, zoznam robotov bude spracovaný od konca,
to znamená, že prvý bude vyzvaný buď naposledny vytvorený
robot, alebo robot aktuálne umiestnený na konci vnútorného
zoznamu robotov. Záleží od toho, či sme dodatočne
ovplyvňovali poradie robotov metódami naVrch
, naSpodok
,
vyššie
, nižšie
, pred
a za
. Ak je hodnota argumentu obrátene
rovná false
, metóda sa správa rovnako
ako vyzviRobotov(int)
.
Poznámka: ak je poradie robotov zmenené počas spracovania výzviev, dôjde z technických príčin k opätovnému spusteniu posielania výziev (inak povedané – posielanie výziev sa „reštartuje“). To znamená, že niektorí roboti budú vyzvaní dva- alebo viackrát. Buďte preto opatrní so zmenami poradia v rámci spracovania výziev, aby ste nespôsobili vznik nekonečného cyklu… (Rovnaký efekt má prípadné vytvorenie nového robota, resp. ľubovoľnej inštancie triedy odvodenej od robota.)
Poznámka 2: mechanizmus výziev nie je taký efektívny ako definícia vlastného zoznamu robotov (prípadne inštancií odvodených tried) a vykonanie hromadnej akcie pomocou tohto zoznamu. Slúži predovšedkým na umožnenie hromadného spracovania bez nutnosti vytvárania takého zoznamu (napr. pri malom počte robotov alebo predtým, než sa programátor podrobnejšie oboznámi s možnosťami zoznamov).
kľúč
– celočíselná hodnota, ktorá je poslaná do
reakcie prijatieVýzvy
každého
robota; takto je možné odlíšiť rôzne druhy výziev, vďaka
čomu môžeme ovplyvniť správanie reakcie prijatieVýzvy
obrátene
– týmto argumentom môžeme ovplyvniť smer
spracovania; true
znamená spracovanie
vnútorného zoznamu robotov od konca; false
znamená rovnaký spôsob spracovania ako pri metóde vyzviRobotov(int)
public void aktivita()
pracuj
pri aktívnom robotovi. Jej
prekrytím môžete upraviť správanie aktívneho robota.
pasivita()
,
aktivácia()
,
deaktivácia()
,
spustenie()
,
zastavenie()
,
dosiahnutieCieľa()
public void pasivita()
pracuj
pri pasívnom robotovi. Jej
prekrytím môžete upraviť správanie pasívneho robota.
aktivita()
,
aktivácia()
,
deaktivácia()
,
spustenie()
,
zastavenie()
,
dosiahnutieCieľa()
public void aktivácia()
aktivuj
(alebo jej klonu). Jej
prekrytím môžete upraviť správanie robota pri aktivácii.
aktivita()
,
pasivita()
,
deaktivácia()
,
spustenie()
,
zastavenie()
,
dosiahnutieCieľa()
public void aktivacia()
aktivácia
.public void deaktivácia()
deaktivuj
. Jej prekrytím môžete
upraviť správanie robota pri deaktivácii.
aktivita()
,
pasivita()
,
aktivácia()
,
spustenie()
,
zastavenie()
,
dosiahnutieCieľa()
public void deaktivacia()
deaktivácia
.public void spustenie()
spusti
(alebo jej klonu). Jej
prekrytím môžete upraviť správanie robota pri „spustení“ (čo
je chápané ako druh akcie s individuálnym robotom, nie
v zmysle spustenia aplikácie, ani nič podobné).
aktivita()
,
pasivita()
,
aktivácia()
,
deaktivácia()
,
zastavenie()
,
dosiahnutieCieľa()
public void zastavenie()
zastav
. Jej prekrytím môžete
upraviť správanie robota pri „zastavení“ (čo je chápané ako
opak „spustenia“).
aktivita()
,
pasivita()
,
aktivácia()
,
deaktivácia()
,
spustenie()
,
dosiahnutieCieľa()
public void dosiahnutieCieľa()
pracuj
po dosiahnutí cieľa. Jej prekrytím môžete upraviť
správanie robota pri dosiahnutí cieľa.
aktivita()
,
pasivita()
,
aktivácia()
,
deaktivácia()
,
spustenie()
,
zastavenie()
public void dosiahnutieCiela()
dosiahnutieCieľa
.public void prijatieVýzvy(Robot autor, int kľúč)
svet.vyzviRobotov(kľúč)
alebo Robot.vyzviRobotov(kľúč)
.
Rozhodovanie o účele aktuálnej výzvy v tele tejto reakcie je
možné určiť pomocou hodnoty kľúča, ktorého hodnotu zadávame
pri volaní metód svet.vyzviRobotov(kľúč)
, Robot.vyzviRobotov(kľúč)
.autor
– autor výzvy; ak išlo o výzvu zo strany sveta
(svet.vyzviRobotov(kľúč)
), je rovné null
kľúč
– hodnota prijímaná z metód
svet.vyzviRobotov(kľúč)
,
Robot.vyzviRobotov(kľúč)
public void prijatieVyzvy(Robot autor, int kľúč)
prijatieVýzvy
.public void kresliPôsobisko()
domov
. Pôsobisko je použiteľné
napríklad s metódami myšVPôsobisku
alebo bodVPôsobisku
.
Pôsobisko je rozširované dynamicky – pri každom kreslení
aktuálnym robotom, sú porovnané hranice pôsobiska so súradnicami
a rozmermi kresleného útvaru a podľa nich je upravená aktuálna
veľkosť pôsobiska. Pri použití niektorej z metód domov
, je pôsobisko zmenšené na nulu.
nekresliPôsobisko()
public void kresliPosobisko()
kresliPôsobisko
.public void nekresliPôsobisko()
kresliPôsobisko
.public void nekresliPosobisko()
nekresliPôsobisko
.public boolean bodVPôsobisku(double súradnicaBoduX, double súradnicaBoduY)
bodVPôsobisku(Robot iný)
.
Pôsobisko je rozširované dynamicky – pri každom kreslení
aktuálnym robotom, sú porovnané hranice pôsobiska so súradnicami
a rozmermi kresleného útvaru a podľa nich je upravená aktuálna
veľkosť pôsobiska. Pri použití niektorej z metód domov
, je pôsobisko zmenšené na nulu.
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodutrue
– áno; false
– niebodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVPosobisku(double súradnicaBoduX, double súradnicaBoduY)
bodVPôsobisku
.public boolean bodVPôsobisku(Point2D bod)
Pôsobisko je rozširované dynamicky – pri každom kreslení
aktuálnym robotom, sú porovnané hranice pôsobiska so súradnicami
a rozmermi kresleného útvaru a podľa nich je upravená aktuálna
veľkosť pôsobiska. Pri použití niektorej z metód domov
, je pôsobisko zmenšené na nulu.
bod
– súradnice bodutrue
– áno; false
– niebodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVPosobisku(Point2D bod)
bodVPôsobisku
.public boolean bodVPôsobisku(Robot iný)
bodVPôsobisku(x, y)
, len namiesto súradníc bodu je použitá
poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodutrue
/false
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVPosobisku(Robot iný)
bodVPôsobisku
.public boolean myšVPôsobisku()
Pôsobisko je rozširované dynamicky – pri každom kreslení
aktuálnym robotom, sú porovnané hranice pôsobiska so súradnicami
a rozmermi kresleného útvaru a podľa nich je upravená aktuálna
veľkosť pôsobiska. Pri použití niektorej z metód domov
, je pôsobisko zmenšené na nulu.
true
– áno; false
– niemyšVCeste()
,
myšVElipse(double, double)
,
myšVKruhu(double)
,
myšVoŠtvorci(double)
,
myšVObdĺžniku(double, double)
,
myšVOblasti(Oblasť)
public boolean mysVPosobisku()
myšVPôsobisku
.public Robot.Farba farbaBodu()
čierna
farba. So získanou farbou môžeme ďalej
pracovať – napríklad ju upravovať alebo zisťovať jej vlastnosti
(farebné zložky, priehľadnosť…). Testovať, či má bod konkrétnu
farbu, môžeme napríklad pomocou metódy farbaBodu(farba)
.public boolean farbaBodu(Robot.Farba farba)
false
. Testovať farbu pomocou
tejto metódy môžeme napríklad takto:
if
(farbaBodu
(modrá
)) …
farba
– farba, ktorú chceme porovnať s farbou bodu na
plátnetrue
ak sa robot nachádza v rámci rozmerov
plátna a farba bodu na mieste robota sa zhoduje so zadanou
farbou (musia sa zhodovať všetky tri farebné zložky aj
úroveň priehľadnosti), inak false
public Robot.Farba farbaNaMyši()
farbaNaMyši(farba)
.
(Poznámka: ak by súradnice myši boli náhodou
mimo aktívneho kresliaceho plátna robota, metóda by vrátila
inštanciu farby čierna
.)
Farba
) na pozícii
myšipublic boolean farbaNaMyši(Robot.Farba farba)
if
(farbaNaMyši
(modrá
)) …
(Poznámka: ak by súradnice myši boli náhodou
mimo aktívneho kresliaceho plátna robota, metóda by vrátila
hodnotu false
.)
Príklad:
Príklad nakreslí čierny kruh do stredu plátna (teda v prípade, že začíname s predvolenými vlastnosťami robota) a vytvorí obsluhu udalostí, v rámci ktorej bude testovať, či je farba bodu na súradniciach myši čierna a ak áno, pípne.
kruh
(15
);new
ObsluhaUdalostí
() {@
Overridepublic
void
pohybMyši() {if
(farbaNaMyši
(čierna
)) {svet
.pípni
(); } } };
farba
– farba, ktorú chceme porovnať s farbou bodu na
plátnetrue
ak je farba bodu na súradniciach myši
zhodná so zadanou farbou (musia sa zhodovať všetky tri
farebné zložky aj úroveň priehľadnosti), inak false
public void vylejFarbu()
Robot.Plátno.vylejFarbu(double, double, Robot.Farba)
. Správanie
tejto metódy sa riadi rovnakými pravidlami.public void kresliNaPodlahu()
kresliNaStrop()
.public void kresliNaStrop()
kresliNaPodlahu()
.public boolean kreslímNaPodlahu()
true
ak aktívne plátno robota je podlaha,
inak false
public boolean kreslimNaPodlahu()
kreslímNaPodlahu
.public boolean kreslímNaStrop()
true
ak aktívne plátno robota je strop,
inak false
public boolean kreslimNaStrop()
kreslímNaStrop
.public void kresliNaObrázok(Robot.Obrázok obrázok)
obrázok
– cieľový obrázokpublic void kresliNaObrazok(Robot.Obrázok obrázok)
kresliNaObrázok
.public void kresliDoObrázka(Robot.Obrázok obrázok)
kresliNaObrázok
.public void kresliDoObrazka(Robot.Obrázok obrázok)
kresliNaObrázok
.public boolean kreslímNaObrázok(Robot.Obrázok obrázok)
obrázok
– obrázokpublic boolean kreslimNaObrazok(Robot.Obrázok obrázok)
kreslímNaObrázok
.public boolean kreslímDoObrázka(Robot.Obrázok obrázok)
kreslímNaObrázok
.public boolean kreslimDoObrazka(Robot.Obrázok obrázok)
kreslímNaObrázok
.public void bod()
public void prepíšBod()
public Shape kružnica(double polomer)
polomer
– polomer kružniceShape
reprezentujúci
kreslený útvarRuntimeException
– ak je polomer kružnice zápornýpublic Shape kruh(double polomer)
polomer
– polomer kruhuShape
reprezentujúci
vypĺňaný útvarRuntimeException
– ak je polomer kruhu zápornýpublic Shape elipsa(double a, double b)
a
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)Shape
reprezentujúci
kreslený útvarRuntimeException
– ak je niektorý rozmer elipsy zápornýpublic Shape vyplňElipsu(double a, double b)
a
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)Shape
reprezentujúci
vypĺňaný útvarRuntimeException
– ak je niektorý rozmer elipsy zápornýpublic Shape vyplnElipsu(double a, double b)
vyplňElipsu
.public Shape vyplnenáElipsa(double a, double b)
vyplňElipsu
.public Shape vyplnenaElipsa(double a, double b)
vyplňElipsu
.public Shape vyplnenúElipsu(double a, double b)
vyplňElipsu
.public Shape vyplnenuElipsu(double a, double b)
vyplňElipsu
.public Shape vyplnenejElipsy(double a, double b)
vyplňElipsu
.public Shape štvorec(double polomer)
polomer
– polomer vpísanej kružniceShape
reprezentujúci
kreslený útvarRuntimeException
– ak je zadaný polomer zápornýpublic Shape vyplňŠtvorec(double polomer)
polomer
– polomer vpísanej kružniceShape
reprezentujúci
vypĺňaný útvarRuntimeException
– ak je zadaný polomer zápornýpublic Shape vyplnStvorec(double polomer)
vyplňŠtvorec
.public Shape vyplnenýŠtvorec(double polomer)
vyplňŠtvorec
.public Shape vyplnenyStvorec(double polomer)
vyplňŠtvorec
.public Shape vyplnenéhoŠtvorca(double polomer)
vyplňŠtvorec
.public Shape vyplnenehoStvorca(double polomer)
vyplňŠtvorec
.public Shape obdĺžnik(double a, double b)
a
– veľkosť hlavnej poloosi vpísanej elipsy (na šírku)b
– veľkosť vedľajšej poloosi vpísanej elipsy (na výšku)Shape
reprezentujúci
kreslený útvarRuntimeException
– ak je niektorý rozmer vpísanej elipsy
zápornýpublic Shape vyplňObdĺžnik(double a, double b)
a
– veľkosť hlavnej poloosi vpísanej elipsy (na šírku)b
– veľkosť vedľajšej poloosi vpísanej elipsy (na výšku)Shape
reprezentujúci
vypĺňaný útvarRuntimeException
– ak je niektorý rozmer vpísanej elipsy
zápornýpublic Shape vyplnObdlznik(double a, double b)
vyplňObdĺžnik
.public Shape vyplnenýObdĺžnik(double a, double b)
vyplňObdĺžnik
.public Shape vyplnenyObdlznik(double a, double b)
vyplňObdĺžnik
.public Shape vyplnenéhoObdĺžnika(double a, double b)
public Shape vyplnenehoObdlznika(double a, double b)
vyplňObdĺžnik
.public Shape kružnica()
Shape
reprezentujúci
kreslený útvarpublic Shape kruh()
Shape
reprezentujúci
vypĺňaný útvarpublic Shape elipsa(double pomer)
pomer
udáva pomer šírky k výške útvaru.
Hodnota 1.0
znamená rovnakú šírku ako výšku (čiže
hodnotu rovnú aktuálnej veľkosti
robota). Čím väčšia hodnota od čísla 1.0
, tým širší
útvar, čím nižšia hodnota (v rozsahu od 1.0
do
0.0
), tým užší útvar.
Poloha pera nemá na kreslenie
tohto útvaru vplyv. Metóda funguje ako pečiatka. Útvar nie je
nakreslený v prípade, že bol tento robot zamestnaný za účelom tvorby
oblasti alebo je zakázané kreslenie tvarov.pomer
– pomer hlavnej a vedľajšej poloosi
(šírky a výšky elipsy – 2.0 znamená dvojnásobnú
šírku, 0.5 polovičnú a podobne)Shape
reprezentujúci
kreslený útvarpublic Shape vyplňElipsu(double pomer)
pomer
udáva pomer šírky k výške útvaru. Hodnota
1.0
znamená rovnakú šírku ako výšku (čiže hodnotu
rovnú aktuálnej veľkosti robota). Čím
väčšia hodnota od čísla 1.0
, tým širší útvar, čím
nižšia hodnota (v rozsahu od 1.0
do 0.0
),
tým užší útvar.
Poloha pera nemá na kreslenie
tohto útvaru vplyv. Metóda funguje ako pečiatka. Útvar nie je
nakreslený v prípade, že bol tento robot zamestnaný za účelom tvorby oblasti alebo je zakázané
kreslenie tvarov.pomer
– pomer hlavnej a vedľajšej poloosi
(šírky a výšky elipsy – 2.0 znamená dvojnásobnú
šírku, 0.5 polovičnú a podobne)Shape
reprezentujúci vypĺňaný
útvarpublic Shape vyplnElipsu(double pomer)
vyplňElipsu
.public Shape vyplnenáElipsa(double pomer)
vyplňElipsu
.public Shape vyplnenaElipsa(double pomer)
vyplňElipsu
.public Shape vyplnenúElipsu(double pomer)
vyplňElipsu
.public Shape vyplnenuElipsu(double pomer)
vyplňElipsu
.public Shape vyplnenejElipsy(double pomer)
vyplňElipsu
.public Shape štvorec()
Shape
reprezentujúci kreslený
útvarpublic Shape vyplňŠtvorec()
Shape
reprezentujúci vypĺňaný
útvarpublic Shape vyplnStvorec()
vyplňŠtvorec
.public Shape vyplnenýŠtvorec()
vyplňŠtvorec
.public Shape vyplnenyStvorec()
vyplňŠtvorec
.public Shape vyplnenéhoŠtvorca()
vyplňŠtvorec
.public Shape vyplnenehoStvorca()
vyplňŠtvorec
.public Shape obdĺžnik(double pomer)
pomer
udáva pomer šírky k výške útvaru. Hodnota
1.0
znamená rovnakú šírku ako výšku (čiže hodnotu
rovnú aktuálnej veľkosti robota). Čím
väčšia hodnota od čísla 1.0
, tým širší útvar, čím
nižšia hodnota (v rozsahu od 1.0
do 0.0
),
tým užší útvar.
Poloha pera nemá na kreslenie
tohto útvaru vplyv. Metóda funguje ako pečiatka. Útvar nie je
nakreslený v prípade, že bol tento robot zamestnaný za účelom tvorby oblasti alebo je zakázané
kreslenie tvarov.pomer
– pomer hlavnej a vedľajšej poloosi vpísanej elipsy
(šírky a výšky obdĺžnika – 2.0 znamená dvojnásobnú
šírku, 0.5 polovičnú a podobne)Shape
reprezentujúci kreslený
útvarpublic Shape vyplňObdĺžnik(double pomer)
pomer
udáva pomer šírky k výške útvaru. Hodnota
1.0
znamená rovnakú šírku ako výšku (čiže hodnotu
rovnú aktuálnej veľkosti robota). Čím
väčšia hodnota od čísla 1.0
, tým širší útvar, čím
nižšia hodnota (v rozsahu od 1.0
do 0.0
),
tým užší útvar.
Poloha pera nemá na kreslenie
tohto útvaru vplyv. Metóda funguje ako pečiatka. Útvar nie je
nakreslený v prípade, že bol tento robot zamestnaný za účelom tvorby oblasti alebo je zakázané
kreslenie tvarov.pomer
– pomer hlavnej a vedľajšej poloosi vpísanej elipsy
(šírky a výšky obdĺžnika – 2.0 znamená dvojnásobnú
šírku, 0.5 polovičnú a podobne)Shape
reprezentujúci vypĺňaný
útvarpublic Shape vyplnObdlznik(double pomer)
vyplňObdĺžnik
.public Shape vyplnenýObdĺžnik(double pomer)
vyplňObdĺžnik
.public Shape vyplnenyObdlznik(double pomer)
vyplňObdĺžnik
.public Shape vyplnenéhoObdĺžnika(double pomer)
public Shape vyplnenehoObdlznika(double pomer)
vyplňObdĺžnik
.public boolean myšVKruhu(double polomer)
polomer
– polomer vyšetrovaného kruhutrue
– áno; false
– niemyšVCeste()
,
myšVElipse(double, double)
,
myšVPôsobisku()
,
myšVoŠtvorci(double)
,
myšVObdĺžniku(double, double)
,
myšVOblasti(Oblasť)
public boolean mysVKruhu(double polomer)
myšVKruhu
.public boolean myšVElipse(double a, double b)
a
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)true
– áno; false
– niemyšVCeste()
,
myšVKruhu(double)
,
myšVPôsobisku()
,
myšVoŠtvorci(double)
,
myšVObdĺžniku(double, double)
,
myšVOblasti(Oblasť)
public boolean mysVElipse(double a, double b)
mysVElipse
.public boolean myšVoŠtvorci(double polomer)
polomer
– polomer kružnice vpísanej do štvorca so
stredom na aktuálnej pozícii robotatrue
– áno; false
– niemyšVCeste()
,
myšVElipse(double, double)
,
myšVKruhu(double)
,
myšVPôsobisku()
,
myšVObdĺžniku(double, double)
,
myšVOblasti(Oblasť)
public boolean mysVoStvorci(double polomer)
myšVoŠtvorci
.public boolean myšVObdĺžniku(double a, double b)
a
– veľkosť hlavnej poloosi (šírka vpísanej elipsy)b
– veľkosť vedľajšej poloosi (výška vpísanej elipsy)true
– áno; false
– niemyšVCeste()
,
myšVKruhu(double)
,
myšVElipse(double, double)
,
myšVPôsobisku()
,
myšVoŠtvorci(double)
,
myšVOblasti(Oblasť)
public boolean mysVObdlzniku(double a, double b)
myšVObdĺžniku
.public boolean myšVOblasti(Robot.Oblasť oblasť)
oblasť
– oblasť, ktorá má byť použitá na overenietrue
– áno; false
– niemyšVCeste()
,
myšVElipse(double, double)
,
myšVKruhu(double)
,
myšVPôsobisku()
,
myšVoŠtvorci(double)
,
myšVObdĺžniku(double, double)
public boolean mysVOblasti(Robot.Oblasť oblasť)
myšVOblasti
.public boolean myšVKruhu()
true
– áno; false
– niemyšVElipse(double)
,
myšVoŠtvorci()
,
myšVObdĺžniku(double)
public boolean mysVKruhu()
myšVKruhu
.public boolean myšVElipse(double pomer)
pomer
– pomer veľkosť hlavnej a vedľajšej poloositrue
– áno; false
– niemyšVKruhu()
,
myšVoŠtvorci()
,
myšVObdĺžniku(double)
public boolean mysVElipse(double pomer)
mysVElipse
.public boolean myšVoŠtvorci()
true
– áno; false
– niemyšVElipse(double)
,
myšVKruhu()
,
myšVObdĺžniku(double)
public boolean mysVoStvorci()
myšVoŠtvorci
.public boolean myšVObdĺžniku(double pomer)
pomer
– pomer veľkosť hlavnej a vedľajšej poloositrue
– áno; false
– niemyšVKruhu()
,
myšVElipse(double)
,
myšVoŠtvorci()
public boolean mysVObdlzniku(double pomer)
myšVObdĺžniku
.public boolean bodVKruhu(double súradnicaBoduX, double súradnicaBoduY, double polomer)
bodVKruhu(Robot iný, double polomer)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodupolomer
– polomer vyšetrovaného kruhutrue
– áno; false
– niebodVPôsobisku(double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVKruhu(Point2D bod, double polomer)
bod
– súradnice bodupolomer
– polomer vyšetrovaného kruhutrue
– áno; false
– niebodVPôsobisku(Point2D)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVKruhu(Robot iný, double polomer)
bodVKruhu(x, y, polomer)
, len namiesto súradníc bodu je
použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodupolomer
– polomer vyšetrovaného kruhutrue
/false
bodVPôsobisku(Robot)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVElipse(double súradnicaBoduX, double súradnicaBoduY, double a, double b)
bodVElipse(Robot iný, double a, double b)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodua
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)true
– áno; false
– niebodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVElipse(Point2D bod, double a, double b)
bod
– súradnice bodua
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)true
– áno; false
– niebodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVElipse(Robot iný, double a, double b)
bodVElipse(x, y, a, b)
, len namiesto súradníc
bodu je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodua
– veľkosť hlavnej poloosi (na šírku elipsy)b
– veľkosť vedľajšej poloosi (na výšku elipsy)true
/false
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVoŠtvorci(double súradnicaBoduX, double súradnicaBoduY, double polomer)
bodVoŠtvorci(Robot iný, double polomer)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodupolomer
– polomer kružnice vpísanej do štvorca so stredom
na aktuálnej pozícii robotatrue
– áno; false
– niebodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVoStvorci(double súradnicaBoduX, double súradnicaBoduY, double polomer)
bodVoŠtvorci
.public boolean bodVoŠtvorci(Point2D bod, double polomer)
bod
– súradnice bodupolomer
– polomer kružnice vpísanej do štvorca so stredom
na aktuálnej pozícii robotatrue
– áno; false
– niebodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVoStvorci(Point2D bod, double polomer)
bodVoŠtvorci
.public boolean bodVoŠtvorci(Robot iný, double polomer)
bodVoŠtvorci(x, y, polomer)
, len namiesto súradníc bodu
je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodupolomer
– polomer kružnice vpísanej do štvorca so stredom
na aktuálnej pozícii robotatrue
/false
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVoStvorci(Robot iný, double polomer)
bodVoŠtvorci
.public boolean bodVObdĺžniku(double súradnicaBoduX, double súradnicaBoduY, double a, double b)
bodVObdĺžniku(Robot iný,
double a, double b)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodua
– veľkosť hlavnej poloosi (šírka vpísanej elipsy)b
– veľkosť vedľajšej poloosi (výška vpísanej elipsy)true
– áno; false
– niebodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVObdlzniku(double súradnicaBoduX, double súradnicaBoduY, double a, double b)
bodVObdĺžniku
.public boolean bodVObdĺžniku(Point2D bod, double a, double b)
bod
– súradnice bodua
– veľkosť hlavnej poloosi (šírka vpísanej elipsy)b
– veľkosť vedľajšej poloosi (výška vpísanej elipsy)true
– áno; false
– niebodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVObdlzniku(Point2D bod, double a, double b)
bodVObdĺžniku
.public boolean bodVObdĺžniku(Robot iný, double a, double b)
bodVObdĺžniku(x, y, a, b)
, len namiesto
súradníc bodu je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodua
– veľkosť hlavnej poloosi (šírka vpísanej elipsy)b
– veľkosť vedľajšej poloosi (výška vpísanej elipsy)true
/false
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVObdlzniku(Robot iný, double a, double b)
bodVObdĺžniku
.public boolean bodVTvare(double súradnicaBoduX, double súradnicaBoduY, Shape tvar)
bodVTvare(Robot
iný, Shape tvar)
.súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodutvar
– tvar použitý na overenietrue
– áno; false
– nieRobot.Oblasť.bodV(double, double)
,
bodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
public boolean bodVTvare(Point2D bod, Shape tvar)
bod
– súradnice bodutvar
– tvar použitý na overenietrue
– áno; false
– nieRobot.Oblasť.bodV(Point2D)
,
bodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
public boolean bodVTvare(Robot iný, Shape tvar)
bodVTvare(x, y, tvar)
, len namiesto súradníc bodu
je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodutvar
– tvar použitý na overenietrue
/false
Robot.Oblasť.bodV(Robot)
,
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
public boolean bodVKruhu(double súradnicaBoduX, double súradnicaBoduY)
bodVKruhu(Robot iný)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodutrue
– áno; false
– niebodVElipse(double, double, double)
,
bodVoŠtvorci(double, double)
,
bodVObdĺžniku(double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVKruhu(Point2D bod)
bod
– súradnice bodutrue
– áno; false
– niebodVElipse(Point2D, double)
,
bodVoŠtvorci(Point2D)
,
bodVObdĺžniku(Point2D, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVKruhu(Robot iný)
bodVKruhu(x, y)
, len namiesto súradníc bodu je použitá poloha
zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodutrue
/false
bodVElipse(Robot, double)
,
bodVoŠtvorci(Robot)
,
bodVObdĺžniku(Robot, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVElipse(double súradnicaBoduX, double súradnicaBoduY, double pomer)
bodVElipse(Robot iný, double pomer)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodupomer
– pomer šírky a výšky elipsytrue
– áno; false
– niebodVKruhu(double, double)
,
bodVoŠtvorci(double, double)
,
bodVObdĺžniku(double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVElipse(Point2D bod, double pomer)
bod
– súradnice bodupomer
– pomer šírky a výšky elipsytrue
– áno; false
– niebodVKruhu(Point2D)
,
bodVoŠtvorci(Point2D)
,
bodVObdĺžniku(Point2D, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVElipse(Robot iný, double pomer)
bodVElipse(x, y, pomer)
, len namiesto súradníc bodu je
použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodupomer
– pomer šírky a výšky elipsytrue
/false
bodVKruhu(Robot)
,
bodVoŠtvorci(Robot)
,
bodVObdĺžniku(Robot, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVoŠtvorci(double súradnicaBoduX, double súradnicaBoduY)
bodVoŠtvorci(Robot iný)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodutrue
– áno; false
– niebodVKruhu(double, double)
,
bodVElipse(double, double, double)
,
bodVObdĺžniku(double, double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVoStvorci(double súradnicaBoduX, double súradnicaBoduY)
bodVoŠtvorci
.public boolean bodVoŠtvorci(Point2D bod)
bod
– súradnice bodutrue
– áno; false
– niebodVKruhu(Point2D)
,
bodVElipse(Point2D, double)
,
bodVObdĺžniku(Point2D, double)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVoStvorci(Point2D bod)
bodVoŠtvorci
.public boolean bodVoŠtvorci(Robot iný)
bodVoŠtvorci(x, y)
, len namiesto súradníc bodu je použitá poloha
zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodutrue
/false
bodVKruhu(Robot)
,
bodVElipse(Robot, double)
,
bodVObdĺžniku(Robot, double)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVoStvorci(Robot iný)
bodVoŠtvorci
.public boolean bodVObdĺžniku(double súradnicaBoduX, double súradnicaBoduY, double pomer)
bodVObdĺžniku(iný, pomer)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodupomer
– pomer šírky a výšky obdĺžnikatrue
– áno; false
– niebodVKruhu(double, double)
,
bodVElipse(double, double, double)
,
bodVoŠtvorci(double, double)
,
bodVCeste(double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVObdlzniku(double súradnicaBoduX, double súradnicaBoduY, double pomer)
bodVObdĺžniku
.public boolean bodVObdĺžniku(Point2D bod, double pomer)
bod
– súradnice bodupomer
– pomer šírky a výšky obdĺžnikatrue
– áno; false
– niebodVKruhu(Point2D)
,
bodVElipse(Point2D, double)
,
bodVoŠtvorci(Point2D)
,
bodVCeste(Point2D)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVObdlzniku(Point2D bod, double pomer)
bodVObdĺžniku
.public boolean bodVObdĺžniku(Robot iný, double pomer)
bodVObdĺžniku(x, y, pomer)
, len namiesto súradníc bodu
je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodupomer
– pomer šírky a výšky obdĺžnikatrue
/false
bodVKruhu(Robot)
,
bodVElipse(Robot, double)
,
bodVoŠtvorci(Robot)
,
bodVCeste(Robot)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public boolean bodVObdlzniku(Robot iný, double pomer)
bodVObdĺžniku
.public void obrázok(String súbor)
spôsobKreslenia
. Predvolene to znamená obrázok rotovaný kolmo
na aktuálny smer robota a vycentrovaný na aktuálnej polohe
robota. Takže pri základných hodnotách robota, sa obrázok
zobrazí vodorovne v strede plátna (pretože robot je na začiatku
umiestnený v strede podlahy (v bode [0, 0]) a smeruje hore
(v uhle 90°)).súbor
– názov súboru s obrázkom, ktorý má byť vykreslenýRuntimeException
– ak je obrázok poškodený alebo nebol
nájdenýpublic void obrázok(String súbor, int spôsobKreslenia)
súbor
– názov súboru s obrázkom, ktorý má byť vykreslenýspôsobKreslenia
– môže byť buď hodnota kresliPriamo
, alebo kombinácia hodnôt kresliNaStred
a kresliRotované
.RuntimeException
– ak je obrázok poškodený alebo nebol
nájdenýpublic void obrázok(Image obrázok)
spôsobKreslenia
. Predvolene to znamená obrázok rotovaný kolmo
na aktuálny smer robota a vycentrovaný na aktuálnej polohe
robota. Takže pri základných hodnotách robota, sa obrázok
zobrazí vodorovne v strede plátna (pretože robot je na začiatku
umiestnený v strede podlahy (v bode [0, 0]) a smeruje hore
(v uhle 90°)).obrázok
– obrázok, ktorý má byť vykreslenýRuntimeException
– ak je obrázok poškodený alebo nebol
nájdenýpublic void obrázok(Image obrázok, int spôsobKreslenia)
Image
, za ktorý
môže byť dosadený aj objekt typu Obrázok
.obrázok
– obrázok, ktorý má byť vykreslenýspôsobKreslenia
– môže byť buď hodnota kresliPriamo
, alebo kombinácia hodnôt kresliNaStred
a kresliRotované
.RuntimeException
– ak je obrázok poškodený alebo nebol
nájdenýpublic Shape text(String text)
spôsobKreslenia
) alebo vytvorí tvar
obrysu zadaného textu (čo záleží od toho, či je tento robot
momentálne zamestnaný
alebo nie a či je zakázané
kreslenie tvarov) (pozri vysvetlenie pri návratovej hodnote).
Predvolene roboty píšu text rotovaný kolmo na ich aktuálny smer
a vycentrovaný na ich aktuálnej polohe. Takže pri základných
hodnotách robota, sa text zobrazí vodorovne v strede plátna
(pretože robot býva pri vytvorení umiestnený v strede podlahy
(v bode [0, 0]) a nasmerovaný hore (v uhle 90°)).
[1] – alebo skôr „nakreslí“ zadaný text – písanie textu robotom totiž prebieha podobne, ako keby robot vytvoril z textu pečiatku a tú vytlačil podľa aktuálneho spôsobu kreslenia (predvolene vycentrovanú na svojej pozícii a rotovanú podľa svojho smeru); jednoducho s textom napísaným robotom je zaobchádzané ako s grafikou…
text
– text, ktorý má byť vypísanýnull
;
v opačnom prípade metóda nenapíše nič a vracia objekt typu
Shape
(tvar) reprezentujúci obrys zadaného
textu (tvar textu)Plátno.vypíš(Object...)
,
Plátno.vypíšRiadok(Object...)
public Shape text(String text, int spôsobKreslenia)
[1] – alebo skôr „nakreslí“ zadaný text – písanie textu robotom totiž prebieha podobne, ako keby robot vytvoril z textu pečiatku a tú vytlačil podľa zadaného spôsobu kreslenia…
text
– text, ktorý má byť vypísanýspôsobKreslenia
– môže byť buď hodnota kresliPriamo
, alebo kombinácia hodnôt kresliNaStred
a kresliRotované
.null
;
v opačnom prípade metóda nenapíše nič a vracia objekt typu
Shape
(tvar) reprezentujúci obrys zadaného
textu (tvar textu)Plátno.vypíš(Object...)
,
Plátno.vypíšRiadok(Object...)
public void začniCestu()
myšVCeste
.skončiCestu()
,
zrušCestu()
,
vyplňCestu()
,
kresliCestu()
,
cesta()
public void zacniCestu()
začniCestu
.public void skončiCestu()
začniCestu
alebo metódu zrušCestu
, je zaznamenaná
cesta ľubovoľne veľakrát použiteľná.public void skonciCestu()
skončiCestu
.public void zrušCestu()
začniCestu()
,
skončiCestu()
public void zrusCestu()
zrušCestu
.public void vyplňCestu()
oblasť
a použite metódu
vyplňOblasť
.)RuntimeException
– ak cesta nejestvujezačniCestu()
,
skončiCestu()
public void vyplnCestu()
vyplňCestu
.public void kresliCestu()
RuntimeException
– ak cesta nejestvujezačniCestu()
,
skončiCestu()
public void obkresliCestu()
oblasť
a použite metódu obkresliOblasť
.)RuntimeException
– ak cesta nejestvujezačniCestu()
,
skončiCestu()
public Shape cesta()
RuntimeException
– ak cesta nejestvujezačniCestu()
,
skončiCestu()
public boolean myšVCeste()
začniCestu
. Cesta je zaznamenávaná až do použitia metód skončiCestu
, zrušCestu
,
vyplňCestu
alebo kresliCestu
. Dokedy opätovne nepoužijeme metódu začniCestu
alebo metódu zrušCestu
, je zaznamenaná cesta ľubovoľne veľakrát použiteľná.true
– áno; false
– niemyšVElipse(double, double)
,
myšVKruhu(double)
,
myšVPôsobisku()
,
myšVoŠtvorci(double)
,
myšVObdĺžniku(double, double)
,
myšVOblasti(Oblasť)
public boolean mysVCeste()
myšVCeste
.public boolean bodVCeste(double súradnicaBoduX, double súradnicaBoduY)
začniCestu
. Cesta je zaznamenávaná až do použitia
metód skončiCestu
, zrušCestu
, vyplňCestu
alebo kresliCestu
. Dokedy opätovne nepoužijeme metódu
začniCestu
alebo metódu zrušCestu
, je zaznamenaná cesta ľubovoľne veľakrát
použiteľná. Namiesto súradníc bodu je možné použiť iného robota:
bodVCeste(Robot iný)
.súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica bodutrue
– áno; false
– niebodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVOblasti(double, double, Oblasť)
,
bodVTvare(double, double, Shape)
public boolean bodVCeste(Point2D bod)
začniCestu
. Cesta je zaznamenávaná až do použitia
metód skončiCestu
, zrušCestu
, vyplňCestu
alebo kresliCestu
. Dokedy opätovne nepoužijeme metódu
začniCestu
alebo metódu zrušCestu
, je zaznamenaná cesta ľubovoľne
veľakrát použiteľná.bod
– súradnice bodutrue
– áno; false
– niebodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVOblasti(Point2D, Oblasť)
,
bodVTvare(Point2D, Shape)
public boolean bodVCeste(Robot iný)
bodVCeste(x, y)
, len namiesto súradníc bodu je použitá poloha
zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
bodutrue
/false
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVOblasti(Robot, Oblasť)
,
bodVTvare(Robot, Shape)
public void zamestnaj(Robot.Oblasť oblasť)
oblasť.zamestnaj(robot)
. Od okamihu
zamestnania stráca robot dočasne svoje schopnosti kreslenia
útvarov a písania textov. Je to z dôvodu ich presunutia do
tvorby oblasti. Zamestnaný robot nekreslí
útvary ani nie je schopný písať texty do doby, kedy je zo služby
uvoľnený
(prepustený).
Robot nesmie byť zamestnaný pre inú oblasť, lebo vznikne výnimka.
oblasť
– objekt typu Robot.Oblasť
RuntimeException
– ak je robot zamestnaný pre inú oblasťuvoľni(Oblasť)
public void uvoľni(Robot.Oblasť oblasť)
oblasť.uvoľni(robot)
. Ak tento robot nebol
zamestnaný pre zadanú oblasť, nemá volanie metódy žiadny efekt.oblasť
– objekt typu Robot.Oblasť
zamestnaj(Oblasť)
public void uvolni(Robot.Oblasť oblasť)
uvoľni
.public void prepusti(Robot.Oblasť oblasť)
uvoľni
.public void uvoľni()
oblasť.uvoľni()
. Ak robot nebol zamestnaný pre
žiadnu oblasť, nemá volanie metódy žiadny efekt.zamestnaj(Oblasť)
public void uvolni()
uvoľni
.public void prepusti()
uvoľni
.public boolean zamestnaný()
true
/false
public boolean zamestnany()
zamestnaný
.public boolean zamestnaný(Robot.Oblasť oblasť)
oblasť
– cieľová oblasťtrue
/false
public boolean zamestnany(Robot.Oblasť oblasť)
zamestnaný
.public void obkresliOblasť(Robot.Oblasť oblasť)
oblasť
– objekt typu Robot.Oblasť
Robot.Oblasť.kresli()
,
Robot.Oblasť.kresli(Robot)
public void obkresliOblast(Robot.Oblasť oblasť)
obkresliOblasť
.public void vyplňOblasť(Robot.Oblasť oblasť)
oblasť
– objekt typu Robot.Oblasť
Robot.Oblasť.vyplň()
,
Robot.Oblasť.vyplň(Robot)
public void vyplnOblast(Robot.Oblasť oblasť)
vyplňOblasť
.public void vyplňOblasť(Robot.Oblasť oblasť, String súbor)
[1] – za východisko je považovaných 90°; odchýlka v kladom
alebo zápornom smere patrične rotuje oblasť
[2] – stred sa nachádza v bode [0, 0] – v strede
plátna
oblasť
– objekt typu Robot.Oblasť
súbor
– názov súboru s obrázkom textúryRobot.Oblasť.vyplň(String)
,
Robot.Oblasť.vyplň(Robot, String)
public void vyplnOblast(Robot.Oblasť oblasť, String súbor)
vyplňOblasť
.public void vyplňOblasť(Robot.Oblasť oblasť, BufferedImage obrázok)
BufferedImage
, za
ktorý môže byť dosadený aj objekt typu Obrázok
.
[1] – za východisko je považovaných 90°; odchýlka v kladom
alebo zápornom smere patrične rotuje oblasť
[2] – stred sa nachádza v bode [0, 0] – v strede
plátna
oblasť
– objekt typu Robot.Oblasť
obrázok
– obrázok textúryRobot.Oblasť.vyplň(BufferedImage)
,
Robot.Oblasť.vyplň(Robot, BufferedImage)
public void vyplnOblast(Robot.Oblasť oblasť, BufferedImage obrázok)
vyplňOblasť
.public boolean bodVOblasti(double súradnicaBoduX, double súradnicaBoduY, Robot.Oblasť oblasť)
bodVOblasti(Robot
iný, Oblasť oblasť)
.súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica boduoblasť
– oblasť, ktorá má byť použitá na overenietrue
– áno; false
– nieRobot.Oblasť.bodV(double, double)
,
bodVPôsobisku(double, double)
,
bodVKruhu(double, double, double)
,
bodVElipse(double, double, double, double)
,
bodVoŠtvorci(double, double, double)
,
bodVObdĺžniku(double, double, double, double)
,
bodVCeste(double, double)
,
bodVTvare(double, double, Shape)
public boolean bodVOblasti(Point2D bod, Robot.Oblasť oblasť)
bod
– súradnice bodu v súradnicovom priestore robotaoblasť
– oblasť, ktorá má byť použitá na overenietrue
– áno; false
– nieRobot.Oblasť.bodV(Point2D)
,
bodVPôsobisku(Point2D)
,
bodVKruhu(Point2D, double)
,
bodVElipse(Point2D, double, double)
,
bodVoŠtvorci(Point2D, double)
,
bodVObdĺžniku(Point2D, double, double)
,
bodVCeste(Point2D)
,
bodVTvare(Point2D, Shape)
public boolean bodVOblasti(Robot iný, Robot.Oblasť oblasť)
bodVOblasti(x, y, oblasť)
, len namiesto súradníc bodu
je použitá poloha zadaného robota…iný
– robot, ktorého poloha je použitá namiesto súradníc
boduoblasť
– oblasť, ktorá má byť použitá na overenietrue
/false
Robot.Oblasť.bodV(Robot)
,
bodVPôsobisku(Robot)
,
bodVKruhu(Robot, double)
,
bodVElipse(Robot, double, double)
,
bodVoŠtvorci(Robot, double)
,
bodVObdĺžniku(Robot, double, double)
,
bodVCeste(Robot)
,
bodVTvare(Robot, Shape)
public void naVrch()
naSpodok()
,
vyššie()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
jePred(Robot)
,
jeZa(Robot)
public void naSpodok()
naVrch()
,
vyššie()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
jePred(Robot)
,
jeZa(Robot)
public void vyššie()
naVrch()
,
naSpodok()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
jePred(Robot)
,
jeZa(Robot)
public void vyssie()
vyššie
.public void nižšie()
naVrch()
,
naSpodok()
,
vyššie()
,
pred(Robot)
,
za(Robot)
,
somPred(Robot)
,
somZa(Robot)
public void nizsie()
nižšie
.public void pred(Robot ktorého)
ktorého
– robot, pred ktorého má byť tento robot posunutýnaVrch()
,
naSpodok()
,
vyššie()
,
nižšie()
,
za(Robot)
,
somPred(Robot)
,
somZa(Robot)
public void za(Robot ktorého)
ktorého
– robot, za ktorého má byť tento robot umiestnenýnaVrch()
,
naSpodok()
,
vyššie()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
somPred(Robot)
,
somZa(Robot)
public boolean somPred(Robot ktorým)
true
pre všetkých robotov, ktorí sú vizuálne
umiestnení za týmto robotom, to znamená, že tento robot je
pred nimi. Metóda zoberie do úvahy aj skrytých robotov.ktorým
– robot, voči ktorému má overená poloha tohto
robotatrue
ak je tento robot umiestnený nad
určeným robotom, inak false
naVrch()
,
naSpodok()
,
vyššie()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
somZa(Robot)
public boolean somZa(Robot ktorým)
true
pre všetkých robotov, ktorí sú vizuálne
umiestnení pred týmto robotom, to znamená, že tento robot je
za nimi. Metóda zoberie do úvahy aj skrytých robotov.ktorým
– robot, voči ktorému má overená poloha tohto
robotatrue
ak je tento robot umiestnený pod
určeným robotom, inak false
naVrch()
,
naSpodok()
,
vyššie()
,
nižšie()
,
pred(Robot)
,
za(Robot)
,
somPred(Robot)
public void spojnica(Robot cieľ)
cieľ
– partnerský robot medzi ktorým bude vytvorená alebo
upravená jestvujúca spojnicapublic void spojnica(Robot cieľ, double hrúbka)
cieľ
– partnerský robot medzi ktorým bude vytvorená alebo
upravená jestvujúca spojnicahrúbka
– hrúbka čiary spojnicepublic void spojnica(Robot cieľ, Robot.Farba farba)
cieľ
– partnerský robot medzi ktorým bude vytvorená alebo
upravená jestvujúca spojnicafarba
– farba čiary spojnice (argument musí byť objekt typu
Farba
)public void spojnica(Robot cieľ, double hrúbka, Robot.Farba farba)
cieľ
– partnerský robot medzi ktorým bude vytvorená alebo
upravená jestvujúca spojnicahrúbka
– hrúbka čiary spojnicefarba
– farba čiary spojnice (argument musí byť objekt typu
Farba
)public void zrušSpojnicu(Robot cieľ)
cieľ
– partnerský robot voči ktorému bude zrušená
jestvujúca spojnicapublic double veľkosť()
10.0
.) Veľkosť robota sa, okrem kreslenia
predvoleného tvaru, používa aj pri základnom spôsobe detekcie kolízií.public double velkost()
veľkosť
.public double rozmer()
veľkosť
.public void veľkosť(double veľkosť)
10.0
.) Veľkosť robota sa, okrem kreslenia
predvoleného tvaru, používa aj pri základnom spôsobe detekcie kolízií.veľkosť
– nová veľkosť robota (mala by byť väčšia ako nula,
inak môže dôjsť k rôznym vedľajším efektom pri používaní
robota)public void velkost(double veľkosť)
veľkosť
.public void rozmer(double veľkosť)
veľkosť
.public Robot.Oblasť kolíznaOblasť()
null
, ak oblasť nebola definovaná. Pre viac
informácií pozrite setter vlastnosti kolíznaOblasť
.Oblasť
alebo
null
public Robot.Oblasť koliznaOblast()
kolíznaOblasť
.public void kolíznaOblasť(Robot.Oblasť kolíznaOblasť)
koliduje
. Použitie kolíznej oblasti je
v rozpoznávaní kolízií presnejšie, ale značne pomalšie. Ak
chceme kolíznu oblasť zrušiť, zadáme namiesto argumentu tejto
metódy hodnotu null
. Podrobnosti o spôsobe detekcie
kolízií a význame kolíznej oblasti nájdete v opise metódy koliduje
.kolíznaOblasť
– objekt typu Oblasť
alebo
null
public void koliznaOblast(Robot.Oblasť kolíznaOblasť)
kolíznaOblasť
.public boolean koliduje(Robot iný)
Táto metóda je v štádiu testovania a jej funkcionalita sa ešte môže meniť…
Zistí, či tento a zadaný robot vzájomne „kolidujú“, t.j. či došlo k ich zrážke. Overenie tejto situácie nie je jednoduchá a priamočiara záležitosť. Najjednoduchší (a výpočtovo najrýchlejší) spôsob je zistiť ich vzájomnú vzdialenosť, ktorá ak klesne pod istú hranicu (súčet veľkostí oboch robotov), bude to vyhodnotené ako kolízia. V praxi tento prístup vytvorí efekt neviditeľných kruhových bublín okolo stredov obidvoch robotov, ktorých stret znamená kolíziu:
Dva roboty na kolíznom kurze a pri
kolízii (kružnice sú len ilustračné)
V nasledovnom príklade sú inicializovaní modrý a tyrkysový robot, pri čom sú nasmerovaní na kolízny kurz z novej domovskej pozície. Po zrážke sa vrátia späť na domovskú pozíciu a celý cyklus sa zopakuje.
// Inicializácia modrého robota
private
final
static
Robot
modrý =new
Robot
() {{zdvihniPero
();farba
(modrá
);veľkosť
(20
);domov
(40
,35
,200
);rýchlosť
(10
); }};// Inicializácia tyrkysového robota
private
final
static
Robot
tyrkysový =new
Robot
() {{zdvihniPero
();farba
(tyrkysová
);veľkosť
(15
);domov
(-40
,-35
,80
);rýchlosť
(10
); }};// Konštruktor hlavnej triedy
private
HlavnáTrieda() {skry
();aktivuj
(); }@
Overridepublic
void
aktivita
() {// Detekcia kolízií modrého a tyrkysového robota
// v reakcii na aktivitu v hlavnej triede
if
(modrý.koliduje
(tyrkysový)) {svet
.pípni
(); modrý.domov
(); tyrkysový.domov
(); } }
Tento prístup však nemusí vždy vyhovovať. Ak chceme presné zistenie kolízie, musíme zvoliť iný spôsob. Roboty podporujú určenie kolíznej oblasti. Zistenie stretu dvoch robotov pomocou oblastí je presné, ale náročnejšie na výpočet a tým pádom pomalšie. Preto je potrebné používať tento spôsob obozretne, rozhodne nie na veľké množstvo naraz jestvujúcich robotov.
Ďalším spôsobom zistenia kolízie môže byť overenie, či sa istý bod (robot, resp. jeho poloha) nachádza v sledovanom útvare – kruhu, elipse, štvorci, obdĺžniku, ceste, oblasti, tvare…
iný
– iný robot, ktorého vzájomnú kolíziu s týmto robotom
chceme otestovaťpublic double vzdialenosť()
vzdialenosťOd(double, double)
,
vzdialenosťOd(Point2D)
,
vzdialenosťOd(Robot)
,
vzdialenosťOd(Shape)
,
vzdialenosťOdMyši()
,
Robot.Svet.vzdialenosť(Robot)
public double vzdialenost()
vzdialenosť
.public double vzdialenosťOd(double súradnicaBoduX, double súradnicaBoduY)
súradnicaBoduX
– x-ová súradnica bodusúradnicaBoduY
– y-ová súradnica boduvzdialenosť()
,
vzdialenosťOd(Robot)
,
vzdialenosťOdMyši()
public double vzdialenostOd(double súradnicaBoduX, double súradnicaBoduY)
vzdialenosťOd
.public double vzdialenosťK(double súradnicaBoduX, double súradnicaBoduY)
vzdialenosťOd
.public double vzdialenostK(double súradnicaBoduX, double súradnicaBoduY)
vzdialenosťOd
.public double vzdialenosťOd(Point2D bod)
bod
– súradnice bodu v súradnicovom priestore robotavzdialenosť()
,
vzdialenosťOd(Robot)
,
vzdialenosťOdMyši()
public double vzdialenostOd(Point2D bod)
vzdialenosťOd
.public double vzdialenosťK(Point2D bod)
vzdialenosťOd
.public double vzdialenostK(Point2D bod)
vzdialenosťOd
.public double vzdialenosťOd(Robot iný)
iný
– robot od ktorého zisťujeme vzdialenosťvzdialenosť()
,
vzdialenosťOd(double, double)
,
vzdialenosťOd(Point2D)
,
vzdialenosťOd(Shape)
,
vzdialenosťOdMyši()
,
Robot.Svet.vzdialenosť(Robot)
public double vzdialenostOd(Robot iný)
vzdialenosťOd
.public double vzdialenosťK(Robot iný)
vzdialenosťOd
.public double vzdialenostK(Robot iný)
vzdialenosťOd
.public double vzdialenosťOd(Shape tvar)
[1] – nejde presne o stred útvaru; je použitý najrýchlejší a najjednoduchší spôsob zistenia približného stredu: vezme sa obdĺžnik tesne ohraničujúci útvar a určí sa jeho stred – čiže „stred hraníc“
tvar
– tvar Javy (Shape
), od stredu hraníc
ktorého zisťujeme vzdialenosťvzdialenosť()
,
vzdialenosťOd(Robot)
,
vzdialenosťOdMyši()
public double vzdialenostOd(Shape tvar)
vzdialenosťOd
.public double vzdialenosťK(Shape tvar)
vzdialenosťOd
.public double vzdialenostK(Shape tvar)
vzdialenosťOd
.public double vzdialenosťOdMyši()
vzdialenosť()
,
vzdialenosťOd(Robot)
,
Robot.Svet.vzdialenosť(Robot)
public double vzdialenostOdMysi()
vzdialenosťOdMyši
.public double vzdialenosťKMyši()
vzdialenosťOdMyši
.public double vzdialenostKMysi()
vzdialenosťOdMyši
.public void kresli()
kresli
podlieha rovnakým pravidlám ako kreslenie
v tele metódy VlastnýTvar
.
kresli
()
. Prekrytie tejto
metódy je síce najjednoduchší spôsob zmeny tvaru robota, ale
nie je efektívny. (V skrytosti využíva rovnaký mechanizmus ako
definovanie vlastného tvaru. Na väčšie
množstvá inštancií jednej triedy odporúčame implementovať
rozhranie VlastnýTvar
, staticky vytvoriť
jednu inštanciu z tejto implementácie a tú následne využiť,
napríklad, v konštruktore triedy vo volaní metódy vlastnýTvar(tvar)
.)predvolenýTvar()
public void predvolenýTvar()
kresli
.kresli()
,
predvolenýTvar(boolean)
public void predvolenyTvar()
predvolenýTvar
.public void predvolenýTvar(boolean vyplnený)
kresli
. Argument vyplnený
má význam
len ak metóda kresli
nebola prekrytá. Vtedy
zostáva predvoleným tvarom trojzubec a argument umožňuje určiť,
či má byť vyplnený alebo kreslený obrysom.vyplnený
– ak je true
a aktuálna inštancia
nemá prekrytú metódu kresli
, kreslí
vyplnený trujzubec, inak jeho obryspredvolenýTvar()
public void predvolenyTvar(boolean vyplnený)
predvolenýTvar
.public void vlastnýTvar(String súbor)
vlastnýTvar(VlastnýTvar tvar)
, tak ňou definované vlastné
kreslenie bude zrušené. (Tip: ak chcete kombinovať
vlastné kreslenie tvaru s obrázkami, použite iba vlastné
kreslenie tvaru a v ňom volajte metódu
r.obrázok("názov súboru")
.)súbor
– názov súboru s obrázkom, ktorý má byť použitý
namiesto predvoleného tvaru robotaRuntimeException
– ak obrázok nebol nájdenýpublic void vlastnyTvar(String súbor)
vlastnýTvar
.public void vlastnýTvar(Image obrázok)
vlastnýTvar(VlastnýTvar tvar)
, tak ňou definované vlastné
kreslenie bude zrušené. (Tip: ak chcete kombinovať
vlastné kreslenie tvaru s obrázkami, použite iba vlastné
kreslenie tvaru a v ňom volajte metódu
r.obrázok(obrázok)
.)obrázok
– obrázok, ktorý má byť použitý namiesto
predvoleného tvaru robotapublic void vlastnyTvar(Image obrázok)
vlastnýTvar
.public void vlastnýTvar(Robot.VlastnýTvar tvar)
VlastnýTvar
. Ak bola predtým volaná metóda vlastnýTvar(String súbor)
, tak ňou
definovaný vlastný obrázkový tvar bude zrušený. (Tip: ak
chcete kombinovať vlastné kreslenie tvaru s obrázkami, použite
iba vlastné kreslenie tvaru a v ňom volajte metódu r.obrázok("názov súboru")
.)tvar
– implementácia rozhrania VlastnýTvar
public void vlastnyTvar(Robot.VlastnyTvar tvar)
vlastnýTvar
.public void kresliTvary()
nekresliTvary
.
Poznámka: táto metóda spôsobí automatické prepustenie robota zo služieb kreslenia a tvorby oblasti.
public void kresliÚtvary()
kresliTvary
.public void kresliUtvary()
kresliTvary
.public void nekresliTvary()
Shape
) bez ich vykreslenia na aktívne
plátno robota. Kreslenie opäť povolíme metódou kresliTvary
.
Poznámka: táto metóda spôsobí automatické prepustenie robota zo služieb kreslenia a tvorby oblasti.
public void nekresliÚtvary()
nekresliTvary
.public void nekresliUtvary()
nekresliTvary
.public boolean kreslenieTvarovPovolené()
kresliTvary
, resp. nekresliTvary
,
prípadne iným mechanizmom).true
– kreslenie tvarov je povolené;
false
– kreslenie tvarov je zakázanépublic boolean kreslenieTvarovPovolene()
kreslenieTvarovPovolené
public void kresliVšade()
Robot.Plátno.kresliVšade()
,
kresliDo(Shape)
,
nekresliDo(Shape)
public void kresliVsade()
kresliVšade
.public void kresliDo(Shape tvar)
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 pre tvar, ktorý je
možné vytvoriť inou množinovou operáciou, môžeme na obmedzenie
kreslenia použiť aj Oblasť
(zadanú namiesto
parametra tvar
). Je nutné podotknúť, že obmedzenie je
viazané na plátno a je platné pre všetkých robotov.
tvar
– tvar (Shape
) alebo Oblasť
Robot.Plátno.kresliDo(Shape)
,
kresliVšade()
,
nekresliDo(Shape)
public void nekresliDo(Shape tvar)
kresliDo
, ibaže obrátene – kreslenie je možné
všade, okrem zadaného tvaru alebo oblasti.
Rovnako ako pri metóde kresli do
,
sa aj toto obmedzenie kombinuje s aktuálnymi obmedzeniami na
kreslenie a je platné pre všetkých robotov.
tvar
– tvar (Shape
) alebo Oblasť
Robot.Plátno.nekresliDo(Shape)
,
kresliDo(Shape)
,
kresliVšade()