1. sada domácich zadaní

Najneskorší termín odovzdania: 30.9.2013 (pondelok) o 12:00
Odovzdávaný súbor: ZadanaKorytnacka.java

Cieľom tejto sady domácich zadaní je vytvoriť triedu ZadanaKorytnacka, ktorá rozširuje triedu Turtle a ktorá obsahuje nižšie predpísané metódy.

Doplňujúce požiadavky:

  • vo vytvorených metódach nevyužívajte príkazy center, setPosition, moveTo (v "spusťači" v metóde main ich použiť samozrejme môžete),
  • po vykonaní každej z metód nech je korytnačka na pozícii, kde bola pred jej vykonaním, a je natočená tým smerom, akým bola pred jej vykonaním,
  • nepredpokladajte bielu farbu pozadia kresliacej plochy (korytnačka musí nakresliť korektný obrázok pri akejkoľvek farbe kresliacej plochy),
  • riešenia, ktoré nebude možné skompilovať (t.j. riešenia so syntaktickými chybami) nebudú hodnotené,
  • zdrojový kód správne naformátujte (CTRL+SHIFT+F),
  • komentovaný zdrojový kód je vítaný,
  • počiatočná a zároveň koncová pozícia korytnačky sú vyznačené na obrázkoch,
  • pri riešení používajte len poznatky, ktoré boli súčasťou 1. prednášky a na ňu nadväzujúcich cvičení.

Činka (1 bod)

Vytvorte metódu cinka, ktorá nakreslí činku so zadanou dĺžkou (vzdialenosť medzi najvzdialenejšími bodmi činky). Dĺžka činky je zadaná parametrom dlzka. Závažia činky sú čiernej farby a ich priemer je štvrtina z celkovej dĺžky činky. Tyč činky nech je čiernej farby a hrúbky 3. Korytnačka nech sa nachádza na začiatku a konci metódy v ťažisku činky a zároveň nech je nasmerovaná tak, že jej smer je kolmý na tyč činky.

public void cinka(double dlzka) {

}

Štvorec s výsekmi (1 bod)

Vytvorte metódu stvorecSVysekmi, ktorá nakreslí štvorec s dĺžkou strany určenou parametrom dlzkaStrany, pričom v rohoch štvorca sú "vyseknuté" menšie štvorce s dĺžkou strany určenou parametrom dlzkaVyseku. Korytnačka sa na začiatku a na konci metódy nachádza v strede kresleného štvorca. Korytnačka je nasmerovaná rovnobežne so stranami štvorca.

public void stvorecSVysekmi(double dlzkaStrany, double dlzkaVyseku) {

}

Oblý štvorec (1 bod)

Vytvorte metódu oblyStvorec, ktorá nakreslí vyplnený štvorec s dĺžkou strany určenou parametrom dlzkaStrany, pričom polomer rohov štvorca je zadaný parametrom polomerRohu. Štvorec nech je vyplnený aktuálne nastavenou farbou výplne. Korytnačka sa na začiatku a na konci metódy nachádza v strede kresleného štvorca. Korytnačka je nasmerovaná rovnobežne so stranami štvorca.

public void oblyStvorec(double dlzkaStrany, double polomerRohu) {

}

Obrazec zo šesťuholníkov (1 bod)

Vytvorte metódu obrazec, ktorá namaľuje nižšie uvedený obrazec skladajúci sa zo 6-uholníkov so zadanou dĺžkou strany. V metóde využite nižšie uvedenú metódu sestuholnik na nakreslenie pravidelného 6-uholníka so zadanou dĺžkou strany. Metódu sestuholnik neupravujte!

Korytnačka sa tak, ako je to v predlohe, nachádza v strede obrazca. Obrazec je nakreslený zelenou farbou.

public void sestuholnik(double strana) {
        this.penUp();
        this.step(strana);
        this.penDown();
        this.turn(120);
        for (int i = 0; i < 6; i++) {
                this.step(strana);
                this.turn(360 / 6);
        }
        this.turn(-120);
        this.penUp();
        this.step(-strana);
        this.penDown();
}

public void obrazec(double strana) {

}