Class Strom

java.lang.Object
  extended by Strom
All Implemented Interfaces:
IKreslený, IPosuvný

public class Strom
extends java.lang.Object
implements IKreslený, IPosuvný

Třída Strom obsahuje podobu třídy po zavedení metod pro nastavení rozměrů instance . Oproti třídě {&code Strom_7b} je změněno: - přibyly atributy podílŠířkyKmene a podílVýškyKmene - přibyla metoda setRozměr(int,int) - změnilo se tělo šestiparametrikcého konstruktoru Strom - přibyla metoda setRozměr(Rozměr) - přibyla metoda setOblast(Oblast)

Version:
2.01, duben 2004
Author:
Rudolf Pecinovský

Field Summary
static int IMPLICITNÍ_POMĚR_ŠÍŘKY
          Udává, kolikrát je koruna širší než kmen.
static int IMPLICITNÍ_POMĚR_VÝŠKY
          Udává, kolikrát je strom vyšší než samotný kmen.
 
Constructor Summary
Strom()
          Implicitní konstruktor vytvoří v levém horním rohu plátna instanci širokou 100 bodů, vysokou 150 bodů s kmenem zabírajícím 1/3 výška a 1/10 šířky stromu.
Strom(int x, int y)
          Vytvoří na zadaných souřadnicích instanci širokou 100 bodů, vysokou 150 bodů s kmenem zabírajícím 1/3 výška a 1/10 šířky stromu.
Strom(int x, int y, int šířka, int výška)
          Vytvoří na zadaných souřadnicích instanci se zadanou šířkou a výškou.
Strom(int x, int y, int šířka, int výška, int podílŠířkyKmene, int podílVýškyKmene)
          Vytvoří na zadaných souřadnicích instanci se zadanou šířkou, výškou.
Strom(Oblast oblast)
          Vytvoří novou instanci vyplňující zadanou oblast.
Strom(Pozice pozice, Rozměr rozměr)
          Vytvoří novou instanci se zadanou polohou a rozměry.
 
Method Summary
static void alej()
          Metoda upraví rozměr plátna a "vysadí" na něj alej dvou řad stromů se třemi stromy v každé řadě.
 Barva getBarvaKoruny()
          Vrátí barvu koruny stromu.
 java.lang.String getNázev()
          Vrátí název instance, tj. název její třídy následovaný pořadím.
 Oblast getOblast()
          Vrátí instanci třídy Oblast s informacemi o pozici a rozměrech instance.
 Pozice getPozice()
          Vrátí instanci třídy Pozice s pozicí instance.
 Rozměr getRozměr()
          Vrátí instanci třídy Rozměr s rozměry instance.
 int getŠířka()
          Vrátí šířku instance.
 int getVýška()
          Vrátí výšku instance.
 int getX()
          Vrátí x-ovou souřadnici pozice instance.
 int getY()
          Vrátí y-ovou souřadnici pozice instance.
 void nakresli(Kreslítko kreslítko)
          Vykreslí obraz své instance na plátno.
static void obrázek(Oblast oblast, int šířkaRámu)
          Vytvoří v zadané oblasti zarámovaný obrázek stromu, přičemž šířka rámu je zadána jako druhý parametr.
 void posunDolů()
          Přesune instanci o krok bodů dolů.
 void posunDolů(int vzdálenost)
          Přesune instanci o zadaný počet bodů dolů, při záporné hodnotě parametru nahoru.
 void posunVlevo()
          Přesune instanci o krok bodů vlevo.
 void posunVpravo()
          Přesune instanci o krok bodů vpravo.
 void posunVpravo(int vzdálenost)
          Přesune instanci o zadaný počet bodů vpravo, při záporné hodnotě parametru vlevo.
 void posunVzhůru()
          Přesune instanci o krok bodů nahoru.
 void setBarvaKoruny(Barva nová)
          Nastaví novou barvu koruny.
 void setOblast(Oblast oblast)
          Nastaví novou polohu a rozměry instance.
 void setPozice(int x, int y)
          Nastaví novou pozici instance.
 void setPozice(Pozice pozice)
          Nastaví novou pozici instance.
 void setRozměr(int šířka, int výška)
          Nastaví nové rozměry instance.
 void setRozměr(Rozměr rozměr)
          Nastaví nové rozměry instance.
 void smaž()
          Odstraní obraz své instance z plátna.
 java.lang.String toString()
          Převede instanci na řetězec obsahující název třídy, pořadí instance, její souřadnice a rozměry.
 void zarámuj()
          Odstraní z plátna všechny ostatní instance a nastaví parametry okna s plátnem tak, aby právě zarámovalo danou instanci.
static void zarámuj(int šířka, int výška)
          Vytvoří instanci zadané velikosti a upraví rozměr plátna tak, aby byla na plátně právě zarámovaná.
 void zobraz()
          Přihlási instanci u aktivního plátna do jeho správy.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

IMPLICITNÍ_POMĚR_ŠÍŘKY

public static final int IMPLICITNÍ_POMĚR_ŠÍŘKY
Udává, kolikrát je koruna širší než kmen.

See Also:
Constant Field Values

IMPLICITNÍ_POMĚR_VÝŠKY

public static final int IMPLICITNÍ_POMĚR_VÝŠKY
Udává, kolikrát je strom vyšší než samotný kmen.

See Also:
Constant Field Values
Constructor Detail

Strom

public Strom()
Implicitní konstruktor vytvoří v levém horním rohu plátna instanci širokou 100 bodů, vysokou 150 bodů s kmenem zabírajícím 1/3 výška a 1/10 šířky stromu.


Strom

public Strom(int x,
             int y)
Vytvoří na zadaných souřadnicích instanci širokou 100 bodů, vysokou 150 bodů s kmenem zabírajícím 1/3 výška a 1/10 šířky stromu.

Parameters:
x - x-ová souřadnice instance, x>=0, x=0 má levý okraj plátna
y - y-ová souřadnice instance, y>=0, y=0 má horní okraj plátna

Strom

public Strom(int x,
             int y,
             int šířka,
             int výška)
Vytvoří na zadaných souřadnicích instanci se zadanou šířkou a výškou. Poměr velikosti kmene ku zbytku stromu zůstane implicitní, tj. kmen bude zabírat 1/3 výška a 1/10 šířky stromu.

Parameters:
x - x-ová souřadnice instance, x>=0, x=0 má levý okraj plátna
y - y-ová souřadnice instance, y>=0, y=0 má horní okraj plátna
šířka - Šířka vytvářené instance, šířka > 0
výška - Výška vytvářené instance, výška > 0

Strom

public Strom(int x,
             int y,
             int šířka,
             int výška,
             int podílŠířkyKmene,
             int podílVýškyKmene)
Vytvoří na zadaných souřadnicích instanci se zadanou šířkou, výškou. a poměrem velikosti kmene ku zbytku stromu. Vytvořené instanci přiřadí její "rodné číslo".

Parameters:
x - x-ová souřadnice instance, x>=0, x=0 má levý okraj plátna
y - y-ová souřadnice instance, y>=0, y=0 má horní okraj plátna
šířka - Šířka vytvářené instance, šířka > 0
výška - Výška vytvářené instance, výška > 0
podílŠířkyKmene - Kolikrát je kmen užší než celý strom
podílVýškyKmene - Kolikrát je kmen menší než celý strom

Strom

public Strom(Oblast oblast)
Vytvoří novou instanci vyplňující zadanou oblast.

Parameters:
oblast - Oblast definující pozici a rozměr vytvářené instance

Strom

public Strom(Pozice pozice,
             Rozměr rozměr)
Vytvoří novou instanci se zadanou polohou a rozměry.

Parameters:
pozice - Pozice vytvářené instance
rozměr - Rozměr vytvářené instance
Method Detail

alej

public static void alej()
Metoda upraví rozměr plátna a "vysadí" na něj alej dvou řad stromů se třemi stromy v každé řadě. Stromy budou vysazeny šikmo ve směru hlavní diagonály s kmenem zabírajícím 1/3 výšky a 1/10 šířky stromu.


getBarvaKoruny

public Barva getBarvaKoruny()
Vrátí barvu koruny stromu.

Returns:
Instance třídy Barva definující nastavenou barvu koruny.

getNázev

public java.lang.String getNázev()
Vrátí název instance, tj. název její třídy následovaný pořadím.

Returns:
Řetězec s názvem instance.

getOblast

public Oblast getOblast()
Vrátí instanci třídy Oblast s informacemi o pozici a rozměrech instance.

Returns:
Oblast s informacemi o pozici a rozměre instance.

getPozice

public Pozice getPozice()
Vrátí instanci třídy Pozice s pozicí instance.

Specified by:
getPozice in interface IPosuvný
Returns:
Pozice s pozicí instance.

getRozměr

public Rozměr getRozměr()
Vrátí instanci třídy Rozměr s rozměry instance.

Returns:
Rozměr s rozměry instance.

getŠířka

public int getŠířka()
Vrátí šířku instance.

Returns:
Šířka instance v bodech

getVýška

public int getVýška()
Vrátí výšku instance.

Returns:
Výška instance v bodech

getX

public int getX()
Vrátí x-ovou souřadnici pozice instance.

Returns:
x-ová souřadnice.

getY

public int getY()
Vrátí y-ovou souřadnici pozice instance.

Returns:
y-ová souřadnice.

nakresli

public void nakresli(Kreslítko kreslítko)
Vykreslí obraz své instance na plátno.

Specified by:
nakresli in interface IKreslený
Parameters:
kreslítko - Objekt, jehož prostřednictvím se má instance nakreslit.

obrázek

public static void obrázek(Oblast oblast,
                           int šířkaRámu)
Vytvoří v zadané oblasti zarámovaný obrázek stromu, přičemž šířka rámu je zadána jako druhý parametr.

Parameters:
oblast - Oblast, do níž se má strom v rámu vykreslit.
šířkaRámu - Šířka rámu v obrazových bodech.

posunDolů

public void posunDolů()
Přesune instanci o krok bodů dolů.


posunDolů

public void posunDolů(int vzdálenost)
Přesune instanci o zadaný počet bodů dolů, při záporné hodnotě parametru nahoru.

Parameters:
vzdálenost - Počet bodů, o které se instance přesune.

posunVlevo

public void posunVlevo()
Přesune instanci o krok bodů vlevo.


posunVpravo

public void posunVpravo()
Přesune instanci o krok bodů vpravo.


posunVpravo

public void posunVpravo(int vzdálenost)
Přesune instanci o zadaný počet bodů vpravo, při záporné hodnotě parametru vlevo.

Parameters:
vzdálenost - Vzdálenost, o kterou se instance přesune.

posunVzhůru

public void posunVzhůru()
Přesune instanci o krok bodů nahoru.


setBarvaKoruny

public void setBarvaKoruny(Barva nová)
Nastaví novou barvu koruny.

Parameters:
nová - Požadovaná nová barva.

setOblast

public void setOblast(Oblast oblast)
Nastaví novou polohu a rozměry instance.

Parameters:
oblast - Nově nastavovaná oblast zaujímaná instancí.

setPozice

public void setPozice(int x,
                      int y)
Nastaví novou pozici instance.

Specified by:
setPozice in interface IPosuvný
Parameters:
x - Nová x-ová pozice instance
y - Nová y-ová pozice instance

setPozice

public void setPozice(Pozice pozice)
Nastaví novou pozici instance.

Specified by:
setPozice in interface IPosuvný
Parameters:
pozice - Nová pozice instance

setRozměr

public void setRozměr(int šířka,
                      int výška)
Nastaví nové rozměry instance.

Parameters:
šířka - Nově nastavovaná šířka; šířka>0
výška - Nově nastavovaná výška; výška>0

setRozměr

public void setRozměr(Rozměr rozměr)
Nastaví nové rozměry instance.

Parameters:
rozměr - Nově nastavovaný rozměr instance.

smaž

public void smaž()
Odstraní obraz své instance z plátna.


toString

public java.lang.String toString()
Převede instanci na řetězec obsahující název třídy, pořadí instance, její souřadnice a rozměry.

Overrides:
toString in class java.lang.Object
Returns:
Řetězcová reprezentace dané instance.

zarámuj

public void zarámuj()
Odstraní z plátna všechny ostatní instance a nastaví parametry okna s plátnem tak, aby právě zarámovalo danou instanci.


zarámuj

public static void zarámuj(int šířka,
                           int výška)
Vytvoří instanci zadané velikosti a upraví rozměr plátna tak, aby byla na plátně právě zarámovaná.

Parameters:
šířka - Šířka stromu, který chceme vytvořit a zarámovat.
výška - Výška stromu, který chceme vytvořit a zarámovat.

zobraz

public void zobraz()
Přihlási instanci u aktivního plátna do jeho správy.