Karel Mozdren - Java Applet, Diamond square, Cohen-Sutherland

Valid XHTML 1.0 Strict

Valid CSS!

Online kniha c++

O projektu

kniha c++

Tato kniha je přepisem tutoriálu, který je dostupný na těchto stránkách. Navíc je rozšířena o několik lekcí(kapitol), které v samotném tutoriálu nenaleznete. Text je neustále upravován, tak nezapomínejte chodit sem pro update.
tutorial c++

Poznámka
Kniha je ve formátu pdf, takže musíte mít nainstalovaný adobe reader(tm).

Online kniha C# a ASP.NET

O projektu

kniha c++

V této knize naleznete relativně podrobný návod, jak začít vyvíjet webové aplikace v ASP.NET s použitím C# ve MS VisualStudiu. Tento text se také vyvíjí postupně a potřebuje vaše náměty na rozšíření, nebo pokud naleznete chybu, tak mě můžete o ní informovat.
tutorial c++

Poznámka
Kniha je ve formátu pdf, takže musíte mít nainstalovaný adobe reader(tm).

Tutoriál jazyka C++

O projektu

obrazek c++

Jednoduсhý tutoriál jazyka c++, ve kterém se popisují základní aspekty tohoto jazyku. Vznikl v rámci doučování jako rychlokurz. Pokud jazyk c++ ještě neovládáte, tento tutoriál Vám může být dobrým pomocníkem.
tutorial c++

Poznámka
Pokud chcete programovat pod windows doporučuji program dev-cpp.

Cohen-Sutherland (Applet)

O programu

ukazka programu orezání

Tento projekt vznikl jako jedna z prací, které jsem zpracovával v rámci předmětu základy počítačové grafiky. Jde o ukázku algoritmu ořezávání úseček (Cohen-Sutherland). Usečky kreslíte na plátno. Vytváříte tak objekt, který můžete přestat kreslit stisknutím pravého tlačítka myši. Algoritmus spustíte pomocí tlačítka Start, nebo si jej můžete nechat krokovat pomocí tlačítka krok.
spustit Cohen-Sutherland

Algoritmus Cohen-Sutherland

Tento algoritmus rozdělí plochu na 9 plošek, ze kterých je viditelná jen ta prostřední. Algoritmu odstraňuje, ořezává nebo ponechává čáry podle následujících pravidel:

  1. Oba koncové body jsou na zobrazovací ploše(uprostřed) - bitové OR koncových bodů je rovno 0: ponecháme úsečku
  2. Oba koncové body jsou ve stejné oblasti, která není vidět - bitové AND koncových bodů se nerovná 0: úsečku odstraníme
  3. Koncové body jsou v rozdílných oblastech - v takovém případě je řešení složitější, je třeba zjistit který z bodů je mimo zobrazovací oblast. Spočteme průsečík s úsečkami, které tvoří hranice zobrazovací oblasti a takto vypočtený bod následně nahradíme za původní bod který byl mimo oblast. Průsečík se počíta postupně s každou částí zobrazovací plochy zvlášť.

Další odkazy k algoritmu Cohen-Sutherland

Poznámka
Program beží jako java Applet. Je tedy třeba aby jste měli nainstalovaný JRE. Bez javy se vám tento projekt nespustí.

Skákající balónky (Java 3D)

O programu

ukazka simulace skákajících balónků

Tento projekt vznikl jako další práce, kterou jsem zpracovával v rámci předmětu základy počítačové grafiky. Po spuštění apletu se vytvoří terén, který se generuje pomocí algoritmu Diamond square. Tento terén se obarvuje podle výšky ve které se daná část vygenerovala. Nad vygenerovaným terénem se vyskytuje neviditelný bod, ze kterého začnou vyskakovat Balónky, které se po dopadu začnou odrážet podle nastavené simulace(standardně jednoduchá). Typ simulace je možno nastavit v menu v položce simulace. Na výběr je simulace jednoduchá a složitá. Složitá simulace odraží míčky podle zakřivení terénu. Jednoduchá se zakřivením nepočítá. Nový terén je možno nastavit také v menu v kolonce Teren -> Nový terén. Balónky se odraží jenom od povrchu. Pokud spadnou do vody, tak se znovu vystřelí z výchozí pozice. Každý balónek má omezenou dobu životnosti. Po vyčerpání doby svého života, se nanovo vystřelí.
spustit diamond square

Algoritmus Diamond square

Celý algoritmus začíná tím, že máme dvojrozměrné pole. Každá buňka tohoto pole reprezentuje výšku. Na počátku si zadáme 4 rohové body. Poté dopočítáme body pole v polovině vzdáleností mezi sebou. Dopočátáme je jako průměr výšek mezi dvěma body ze kterých vycházíme. Nové hodnoty ještě podrobíme šumu, který se bude každý další krok snižovat. Názorněji na obrázku.

diamond square

Další odkazy k algoritmu Diamond square

Poznámka
Program beží jako java Applet. Je tedy třeba aby jste měli nainstalovaný JRE a podporu pro JAVA 3D API. Bez javy se vám tento projekt nespustí.

TOPlist