Hanoi.Place| Modifier and Type | Field and Description |
|---|---|
static int |
DEMO_MAX_SIZE
Maximální počet disků pro demonstraci.
|
| Modifier and Type | Method and Description |
|---|---|
static Hanoi |
createAnimator()
Vytvoří animaci včetně zobrazené FX stage bez implementace pravidel
hry.
|
static Hanoi |
createAnimator(Hanoi hanoi)
Vytvoří animaci včetně zobrazené FX stage na základě existující
implementace pravidel hry.
|
static Hanoi |
createAnimator(Hanoi hanoi,
javafx.stage.Stage stage)
Vytvoří animaci a vloží ji do předané FX stage na základě existující
implementace pravidel hry.
|
void |
done()
Ověří ukončení hry.
|
static void |
main(java.lang.String[] args)
Spustí demonstraci použití této třídy.
|
void |
move(Hanoi.Place from,
Hanoi.Place to)
Přesune jeden disk z jedné věže na druhou.
|
static void |
runDemo(int size)
Spustí demo s jedním jevištěm.
|
static void |
runDemos(int sizeFrom,
int sizeTo)
Spustí demo s několika jevišti, na každém jevišti se odehrává právě jedna
animace řešení problému Hanojských věží pro různé počty disků.
|
static void |
setDiskColors(javafx.scene.paint.Color... color)
Nastaví sérii barev pro povrchy disků.
|
static void |
setDuration(javafx.util.Duration duration)
Nastaví rychlost animace.
|
static void |
setTowerColors(javafx.scene.paint.Color... color)
Nastaví sérii barev pro povrchy věží.
|
void |
setup(int count)
Spustí novou hru.
|
public static final int DEMO_MAX_SIZE
runDemos(int, int),
Constant Field Valuespublic static Hanoi createAnimator()
Poznámka: pokud při chybějících pravidlech hry dojde k chybnému tahu, např. k přesunu neexistujícího disku, může být vyvolána výjimka i mimo kontrolu pravidel, případně dojde k nepředvídatelnému chování.
public static Hanoi createAnimator(Hanoi hanoi)
hanoi - pravidla hry, pokud nejsou správně implementována a dojde k
chybnému tahu, např. k přesunu neexistujícího disku, může být vyvolána
výjimka i mimo kontrolu pravidel, případně dojde k nepředvídatelnému
chovánípublic static Hanoi createAnimator(Hanoi hanoi, javafx.stage.Stage stage)
hanoi - pravidla hry, pokud nejsou správně implementována a dojde k
chybnému tahu, např. k přesunu neexistujícího disku, může být vyvolána
výjimka i mimo kontrolu pravidel, případně dojde k nepředvídatelnému
chovánístage - předem vytvořená FX stage na umístění animacepublic static void setTowerColors(javafx.scene.paint.Color... color)
color - nejméně jedna barva pro věžepublic static void setDiskColors(javafx.scene.paint.Color... color)
color - nejméně jedna barva pro diskypublic static void setDuration(javafx.util.Duration duration)
duration - doba, za kterou se přesune disk z jedné věže na druhoupublic static void runDemo(int size)
size - počet disků k vyřešeníDEMO_MAX_SIZEpublic static void runDemos(int sizeFrom,
int sizeTo)
sizeFrom - počet disků na nejmenším jevištisizeTo - počet disků na největším jevištiDEMO_MAX_SIZEpublic static void main(java.lang.String[] args)
args - (ignoruje, pokud ale v prvním argmentu je celé číslo, pak
místo výchozí hodnoty spustí animaci řešení pro zadaný počet disků,
podobně v druhém argumentu předpokládá číslo větší nebo rovné prvnímu
udávající počet disků v další instanci, výchozími hodnotami jsou 3 a 5,
tedy v takovém případě se spustí tři souběžné demonstrace pro 3, 4 a 5
diskůpublic void setup(int count)
throws java.lang.IllegalArgumentException
Hanoipublic void move(Hanoi.Place from, Hanoi.Place to) throws java.lang.IllegalStateException
Hanoipublic void done()
throws java.lang.IllegalStateException
Hanoi