1. sada domácich zadaní

Najneskorší termín odovzdania: 10.10.2011 (pondelok) o 21: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ý,
  • pri riešení používajte len poznatky, ktoré boli súčasťou 1. prednášky a na ňu nadväzujúcich cvičení.

Vystredený štvorec (1 bod)

Vytvorte metódu vystredenyStvorec, ktorá nakreslí štvorec so zadanou dĺžkou strany. Štvorec nech je ale nakreslený tak, že stred štvorca sa nachádza na aktuálnej pozícii korytnačky.

public void vystredenyStvorec(double dlzkaStrany) {

}

Lístočky (2 body)

Vytvorte metódu listok, ktorá nakreslí zelený lístok v tvare kosoštvorca. Parametrami tejto metódy sú: uhol, ktorý zvierajú strany kosoštvorca pri pozícii korytnačky, a dĺžka strany kosoštvorca. Kosoštvorec nech je nakreslený tak, že korytnačka je na začiatku v jednom z jeho vrcholov a natočená je v smere jeho uhlopriečky. Farba kresliaceho pera nech je zelená - rovnako ako výplň kosoštvorca.

S využitím metódy listok vytvorte obrazec rastliny, ktorá sa skladá z 12 pravidelne do kruhu uložených listov zelenej farby. Stonky čiernej farby majú dĺžku rovnú dvojnásobku dĺžky strany kosoštvorca, ktorý predstavuje lístok. Parametre metódy sú parametrami pre nakreslenie listu.

public void listok(double uhol, double dlzkaStrany) {

}

public void rastlina(double uhol, double dlzkaStrany) {

}

Obrazec (1 bod)

Vytvorte metódu obrazec, ktorá namaľuje nižšie uvedený obrazec skladajúci sa z 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!

public void sestuholnik(double dlzkaStrany) {
        for (int i=0; i<6; i++) {
                this.step(dlzkaStrany);
                this.turn(60);
        }
}

public void obrazec(double dlzkaStrany) {

}