Západočeská univerzita v Plzni. Katedra informatiky a výpočetní techniky BAKALÁŘSKÁ PRÁCE

Rozměr: px
Začít zobrazení ze stránky:

Download "Západočeská univerzita v Plzni. Katedra informatiky a výpočetní techniky BAKALÁŘSKÁ PRÁCE"

Transkript

1 Západočeská univerzita v Plzni Západočeská univerzita v Plzni Fakulta Fakulta aplikovaných aplikovaných věd věd Katedra informatiky a výpočetní techniky BAKALÁŘSKÁ PRÁCE Plzeň, 2007 Jan Tichava

2 Západočeská univerzita v Plzni Západočeská univerzita Plzni Fakulta aplikovaných věd Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky Katedra informatiky výpočetní techniky Bakalářská práce OpenGL v Javě Plzeň, 2007 Plzeň, 2007 Jan Tichava Jan Tichava

3

4

5 Abstract OpenGL in Java This bachelor thesis investigates and describes possible connection of Java and OpenGL via different bindings. Java OpenGL (JOGL) was chosen as a main Java binding for the OpenGL API. In this thesis the installation procedure and system requirements of JOGL are described. The second practical part begins with a tutorial which describes solving several basic problems of computer graphics in JOGL. The tutorial is followed by comparison of advantages and disadvantages of using JOGL according to DirectX and C#. For comparing were written two similar 3D Mazes. At the end of this thesis there is confrontation of these two technologies from different points of view, such as installation, user friendliness and especially OpenGL in Java versus DirectX in C#. iii

6 Obsah 1 Úvod Cíl bakalářské práce Struktura dokumentu... 2 Teoretická část 3 2 Možnosti OpenGL v Javě Úvod Propojení Javy a OpenGL GL4Java Lightweight Java Game Library (LWJGL) Java OpenGL (JOGL) Java 3D Rozšiřující knihovny pro OpenGL v Javě jmonkey Engine Xith3D Java is Doomed JOGL Java OpenGL Úvod Požadavky na systém Instalace Provoz aplikace bez nainstalovaného JOGL Realizační část 11 4 Základní techniky v JOGL Úvod Vykreslení trojúhelníku pomocí OpenGL Třída Lesson Třída Renderer Rotující jehlan Třída Renderer Textury na krychli, použití kláves Třída Renderer Světla Třída Renderer Text a 2D grafika Třída Renderer iv

7 5 3D Bludiště Zadání Formát vstupního souboru s mapou Popis řešení Detekce kolizí Popis tříd a metod Implementované vlastnosti Textury Modely Sběr předmětů Teleport Osvětlení Dynamika hráče Konzole Uživatelská dokumentace Systémové požadavky a spuštění Ovládání Shrnutí Porovnání OpenGL a DirectX OpenGL DirectX OpenGL vs. DirectX Instalace vývojového prostředí Práce s IDE Java a C# Implementační rozdíly OpenGL a DirectX Výkon Zatížení procesoru, využití paměti RAM a grafické paměti Rychlost vývoje aplikací Závěr Shrnutí možností propojení Javy a OpenGL Zhodnocení ukázkové aplikace Použité zkratky Literatura v

8 Seznam obrázků Obrázek 1 : Struktura archívu jogl rc1-windows-i586.zip... 9 Obrázek 2 : Adresářová struktura Obrázek 3 : Výsledný trojúhelník Obrázek 4 : Náhledy možností kreslení Obrázek 5 : Pohledová pyramida Obrázek 6 : Rotující jehlan Obrázek 7 : Body na jehlanu Obrázek 8 : Krychle s texturou Obrázek 9 : Pořadí bodů, texturovací souřadnice a mapování textury Obrázek 10 : Body na krychli Obrázek 11 : Osvětlená krychle Obrázek 12 : Srovnání GL_SMOOTH a GL_FLAT stínování Obrázek 13 : Drátěný model Obrázek 14 : Text a otexturovaný čtverec Obrázek 15 : Pohled do výsledného bludiště Obrázek 16 : Mapa a pole pravdivostních hodnot Obrázek 17 : Rozdělení čtverce Obrázek 18 : Animovaná textura Obrázek 19 : Předmět ke sběru Obrázek 20 : Teleport Obrázek 21 : Světlo Obrázek 22 : Konzole Obrázek 23 : Souřadné systémy Obrázek 24 : Porovnání aplikací v DirectX (vlevo) a OpenGL (vpravo) Obrázek 25 : Identická bludiště v DirectX (vlevo) a OpenGL (vpravo) vi

9 Seznam tabulek Tabulka 1 : Popis možností kreslení Tabulka 2 : Tabulka řezů písma Tabulka 3 : Parametry bludiště Tabulka 4 : Tabulka znaků vii

10 Prohlášení Prohlašuji, že jsem bakalářskou práci vypracoval samostatně a výhradně s použitím citovaných pramenů. V Plzni dne 17. května 2007 Jan Tichava viii

11 Poděkování Touto cestou bych rád poděkoval všem, kteří mi pomáhali s přípravou práce nebo mě jakkoli podporovali během jejího vytváření. Zejména pak chci poděkovat vedoucí mé bakalářské práce Ing. Janě Hájkové za podnětné rady, čas strávený konzultacemi a její trpělivost. V neposlední řadě bych rád poděkoval všem svým přátelům a kamarádům za jejich připomínky a náměty. ix

12 Kapitola 1 Úvod V dřívějších dobách byla 3D grafika výsadou bohatých grafických studií, která měla finance na nákup drahého hardwarového a softwarového vybavení svých kanceláří a vytvářela nejrůznější efekty pro filmová studia. Postupem času se výkon obyčejných počítačů zvyšoval a 3D grafika se začala pomalu protlačovat i do domácností, hlavně v oblasti počítačových her. Legendou se stala hra Doom, kterou v roce 1993 uvedla firma id Software. Hra byla naprogramovaná v jazyce C. V té době ještě nebyla Java ani na světě, natož, aby se v ní programovaly 3D hry. První verze Javy[13], JDK verze 1.0 byla uvedena v lednu Java byla v té době úplně nový programovací jazyk, který měl mnoho nedostatků. Tyto nedostatky se začaly projevovat až při jejím používání. Před 11 lety byly také mnohem méně výkonné počítače a vzhledem k tomu, že Java je interpretovaný jazyk, byly aplikace v Javě velice pomalé. První verze Javy byly dvacetkrát až čtyřicetkrát pomalejší než stejný algoritmus naprogramovaný v C/C++. Java se samozřejmě vyvíjela až do dnešní verze 1.6, která je plnohodnotným soupeřem C/C++. Některé algoritmy jsou v Javě dokonce i rychlejší než v těchto jazycích. Tohoto zrychlení bylo docíleno zdokonalením překladače. Od verze 1.3 byla implementována technologie HotSpot, která umožňuje překladači nalézt takové části kódu, které jsou náročné na výpočetní výkon procesoru a pak je přeložit se silným důrazem na výkon. HotSpot má také negativní vedlejší efekt, po spuštění je program pomalejší, protože detekce náročných míst v programu vyžaduje také výpočetní výkon od procesoru. Grafické karty u běžných domácích počítačů disponují velkým výkonem, který vyžadují převážně nové počítačové hry. Při běžné práci není grafická karta plně využita, protože pracuje pouze ve 2D režimu. Výrobci softwaru vytvářejí i obyčejné programy s 3D prostředím, aby využily celý potenciál grafické karty. Někdy je takový program prakticky nepoužitelný, jako například souborový manažer, který přiřadí diskům patra budovy a dveře jsou jednotlivé adresáře. Rychlá práce se soubory na disku není v tomto programu skutečně možná. Jiným případem je přímo prostředí operačního systému, které je postaveno na 3D ať jde o Aero od Microsoftu v nových Windows Vista nebo XGL na Linuxu. Otázkou zůstává, zda je toto nové prostředí k něčemu praktickému užitečné nebo je to pouze nové lákadlo na zákazníky. 1

13 1.1 Cíl bakalářské práce Jedním z cílů bakalářské práce bylo seznámit se s různými možnostmi propojení Javy a OpenGL, vybrat si jednu z metod, nastudovat její možnosti a vytvořit jednoduchý návod k použití základních prvků, které se používají ve 3D grafice. Dalším cílem bylo naprogramovat, s použitím vybrané metody mapování OpenGL do Javy, podobné 3D Bludiště, které jsme programovali v předmětu KIV/ZPG jako semestrální práci. V ZPG se využívá prostředí.net, jazyk C# a DirectX pro 3D svět. Úkolem bylo popsat a porovnat obě konkurenční technologie. 1.2 Struktura dokumentu Celý dokument je rozdělen následovně: 1. Úvod Začíná obecným úvodem do celé problematiky a struktury celé bakalářské práce. 2. Teoretická část Zde jsou rozebrány možnosti použití 3D grafiky v Javě, převážně se jedná o OpenGL. Popisují se rozšiřující knihovny a do detailu se zachází u vybrané technologie na propojení Javy a OpenGL. 3. Realizační část Obsahuje manuál k použití základních technik OpenGL v Javě s pomocí JOGL. Následuje popis řešení 3D Bludiště a končí vzájemným srovnáním DirectX v C# a OpenGL v Javě s využitím JOGL. 4. Závěr Ve stručnosti hodnotí jednotlivé metody propojení Javy a OpenGL. Srovnává 3D Bludiště v Javě a DirectX z jiné perspektivy a končí malým zamyšlením nad vývojem komerčních her v Javě. 2

14 Část I Teoretická část 3

15 Kapitola 2 Možnosti OpenGL v Javě 2.1 Úvod Existuje více možností spojení Javy a OpenGL. Některá řešení jsou skutečně pouze na propojení Javy s OpenGL. Jiná jsou komplexní balíky, které umožňují práci se zvukem, herním hardwarem a usnadňují práci s texturami, modely a podobně. V první části kapitoly ve stručnosti představím čtyři vybrané vazby Javy na OpenGL, kde Java 3D je komplexní balík různých pomocných tříd a ostatní tři jsou jen více či méně obsáhlá propojení. S rozšiřujícími knihovnami pro OpenGL se seznámíme ve druhé části kapitoly. Knihovny slouží k tomu, aby programátor nemusel vyvíjet a testovat algoritmy, které jsou často používané; jako je například načítání modelů, textur, řešení kolizí mezi objekty a podobně. Andrew Davison se ve svých několika knihách[1][2][3] zmiňuje i o existujících vazbách na konkrétní herní systémy. Zaujal mě projekt Jake2[12], jehož autoři přepsali celý herní engine Quake 2 do Javy. Na grafiku používá JOGL nebo LWJGL, na 3D zvuk JOAL. Webové stránky projektu prezentují srovnání původního kódu v C s novým kódem v Javě. Zajímavé je, že výkon v počtu FPS je přibližně stejný. Podobných vazeb na herní systémy je mnohem více, namátkou Auriga3D[4] vychází z Quake 3, ale uvádím je pouze pro doplnění, dále se o nich již nebudu zmiňovat. 2.2 Propojení Javy a OpenGL GL4Java GL4Java[10] je jedna ze starších vazeb Javy a OpenGL. Poslední verze byla vydána v prosinci Ve své době patřila k nejpopulárnějším, ale byla vytlačena modernějším JOGL (viz níže v kapitole 2.2.3). 4

16 Podporuje OpenGL verze 1.3 a GLU verze 1.2. Je možné ji použít ve spojení s knihovnami AWT a Swing. OpenGL funkce jsou volány přes Java Native Interface, proto je výkon aplikace limitován rychlostí hostitelského systému. Vychází z původního OpenGL, které známe z C. V rámci Javy musí být samozřejmě objektový, ale stavba GL4Java je strukturální. Pro programátory OpenGL v C nebude velkým problémem naučit se v GL4Java. GL4Java je open source projekt, který je distribuován pod všeobecnou veřejnou licencí GNU[11] Lightweight Java Game Library (LWJGL) Lightweight Java Game Library[27] je řešení, které je určené pro profesionální i amatérské programátory. Umožňuje programovat kvalitní komerční hry v Javě. LWJGL poskytuje vývojářům přístup k výkonným multiplatformním knihovnám pro OpenGL a OpenAL, které umožňují vytvářet 3D hry spolu s 3D zvukem. LWJGL navíc podporuje game pady, volanty, joysticky a další herní zařízení. Používání LWJGL automaticky neznamená snadné psaní 3D her v Javě. Jeho hlavním účelem je zpřístupnit vývojářům všechny potřebné prostředky pro vývoj. Začátkem ledna 2007 vyšla po několika letech finální stabilní verze 1.0. Byla vytvořena s důrazem na výkon, jednoduchost, přenositelnost, bezpečnost a robustnost. Autoři LWJGL předpokládají použití na rozmanitých platformách od telefonů, přes běžné počítače až po velké renderovací servery. LWJGL se drží osvědčeného návrhu. OpenGL funkce z C jsou mapovány do Javy stejným způsobem jako v JOGL. LWJGL je velice podobný JOGL, ale na rozdíl od něj neumísťuje canvas na swing komponentu, ale vytváří vlastní okno. Na internetu je možné najít NeHe tutoriály, které byly portovány také do LWJGL a ke stažení je několik her, které jsou napsány v Javě a LWJGL. Některé z nich jsou pouze trial verze a prodávají se za poměrně vysoké ceny Java OpenGL (JOGL) Java OpenGL[15] je jedna z nejnovějších vazeb Javy na OpenGL, kterou propaguje skupina Game Technologies Group od firmy Sun. Nabízí podobné možnosti jako LWJGL, ale liší se v tom, že JOGL je integrován do knihoven AWT a Swing. Aplikační rozhraní JOGL se stane referenční vazbou Javy na OpenGL vyvíjené jako součást specifikačního procesu JSR 231[18] společností Sun. Z JSR 231 se tak stane oficiální vazba Javy na OpenGL. JOGL přistupuje na funkce OpenGL z jazyka C pomocí volání Java Native Interface. Autoři se nesnažili přepracovat celé rozhraní do objektově orientovaného. Ve skutečnosti je velká část zdrojového kódu JOGL automaticky vygenerována z hlavičkových souborů OpenGL jazyka C pomocí nástroje Gluegen[9]. 5

17 Tento návrh má své výhody i nevýhody. Nevýhodou je, že struktura metod, které souvisejí s JOGL je jiná, než všech ostatních metod v aplikaci. Na druhou stranu, je jednodušší na naučení pro toho, kdo zná OpenGL z jazyka C. Také je jednodušší pro autory JOGL, protože není nutné vymýšlet novou strukturu a využívají již zaběhnutý a léty ověřený soubor metod Java 3D Java 3D[14] není jen obyčejná vazba mezi Javou a OpenGL, ale celá sada různých podpůrných tříd, které by si programátor ve výše uvedených způsobech použití OpenGL v Javě musel sám naprogramovat. Java 3D má vlastně velice podobnou myšlenku jako DirectX. Obsahuje metody pro načítání obrázků, práci se zvukem a sprity. Při vývoji složitějších aplikací je možné využít integrovaných metod pro načítání a práci s modely nebo metody pro různé způsoby komunikace po síti. Při využití knihovny Java 3D si programátor na Windows dokonce může vybrat, jestli chce použít OpenGL nebo DirectX. 2.3 Rozšiřující knihovny pro OpenGL v Javě jmonkey Engine jmonkey Engine[17] je výkonný systém, jehož autoři se inspirovali knihou 3D Game Engine Design od Davida Eberlyho. Pro renderování scén využívá LWJGL, ale v budoucnu autoři plánují i JOGL. Kromě základních věcí obsahuje podporu pro multitexturing, bumpmapping a třeba i detekce kolizí. Jednoduše lze používat látku (oblečení), částicové systémy, stíny nebo efekt vody. Umožňuje načítat modely v následujících formátech: ASE, 3DS, MD2, Milkshape, OBJ a COLLADA. jme je plně open source projekt, který je distribuován pod BSD[26] licencí. Je volně k použití pro zábavu i pro komerční aplikace Xith3D Aplikační rozhraní Xith3D[29] je velice podobné Java 3D. Ovšem Xith3D je koncipován tak, aby mohl pracovat nad libovolným rozhraním, podle výběru programátora. Nyní je možné volit mezi JOGL a LWJGL. 6

18 Xith3D umí přímo volat funkce rozhraní OpenGL, proto je možné implementovat vlastní shadery. Jeho další vlastnosti jsou podobné s jme. Namátkou například podporuje ASE, 3DS, OBJ, MD3, MD2, AC3D, COLLADA jako formáty modelů nebo také obsahuje systém řešení kolizí. Xith3D je také šířen pod BSD[26] licencí Java is Doomed Java is Doomed[16] je malý open source 3D engine implementovaný na JOGL. Umožňuje načítat modely ve formátu MD2 a 3DS. Využití nalezne v případě, když programátor nechce nebo nemůže použít jeden z výše uvedených balíků. V archívu s knihovnou je přiložena i FPS (2) hra Escape, která se inspirovala v legendární hře Doom. 7

19 Kapitola 3 JOGL Java OpenGL 3.1 Úvod JOGL jsem si vybral jako hlavní vazbu mezi Javou a OpenGL, ve které budu vytvářet ukázky řešení základních problémů v grafice a pak 3D Bludiště pro srovnávání OpenGL v Javě a DirectX v C#. Základní vlastnosti a popis JOGL byl zmíněn již v kapitole 2.2.3, kde jsem rozebíral jednotlivé možnosti propojení Javy a OpenGL. JOGL jsem si vybral jako hlavní prostředek 3D, protože mě zaujala blízká podobnost s klasickým OpenGL. Přístup musí být samozřejmě objektový, ale autoři funkce z OpenGL pouze přemapovali na metody v jedné třídě. Pro OpenGL je na internetu k nalezení obrovské množství různých návodů, tutoriálů a rad. Oblíbené NeHe tutoriály[5][20] jsou vytvořené pro jazyk C, ale i pro JOGL jsou velice užitečné. Ne všechno lze ovšem bez problémů použít v Javě. Dokonce i návody přímo pro JOGL není možné vždy použít, protože JOGL prošel bouřlivým vývojem a co platilo například v roce 2003, již není aktuální. Principy však zůstávají shodné. Podstatné je také dlouhodobější existence stabilní verze a plánované začlenění JOGL do Javy, jako oficiální vazby OpenGL v Javě, viz JSR Požadavky na systém JOGL pro svůj běh vyžaduje operační systémem Linux, MacOS, Solaris nebo Windows. Počítač by měl být dostatečně výkonný pro provoz Javy verze a vyšší. Další nároky na software a hardware jsou pak závislé na konkrétní aplikaci. U jednoduchých 3D scén bude stačit obyčejná grafická karta, která hardwarově podporuje pouze OpenGL 1.2. Náročné aplikace mohou vyžadovat hardwarovou podporu OpenGL verze 2. 8

20 V ideálním případě by měl být aktualizovaný operační systém, nainstalovány nejnovější ovladače pro grafickou kartu. Totéž platí o Javě, JOGL a případně i o dalších používaných rozšiřujících třídách, jakou může být například OpenAL. 3.3 Instalace Nejprve je potřeba nainstalovat JDK[13], které je zdarma ke stažení z webových stránek firmy Sun Microsystems. K dispozici jsou 32 a 64 bitové verze Javy 1.6 pro Windows, Linux a Solaris a Java verze 1.5 pro MacOS. V následujícím textu předpokládám instalaci JDK a JRE verze 1.6 do standardních adresářů, které nabízí instalátor jako výchozí. Po instalaci je vhodné provést restart počítače nebo alespoň odhlásit a opět přihlásit uživatele, aby se projevily změny, které provedl instalátor v systémových proměnných. Pokud je Java správně nainstalovaná, můžeme pokračovat v instalaci JOGL[15]. Nejnovější verze je k dispozici ke stažení na domovských stránkách JOGL v části Documents & files, aktuální verzi naleznete po rozbalení nabídky Release Builds 2007 (0). Pro provoz na vlastním počítači je potřeba stáhnout knihovny pouze pro vlastní operační systém, pro distribuci je výhodné přibalit knihovny alespoň pro Linux a Windows. Obrázek 1: Struktura archívu jogl rc1-windows-i586.zip Archív pro operační systém Windows bude mít podobnou strukturu, jakou je možno vidět na obrázku 1. Důležitý je adresář lib, který obsahuje všechny potřebné knihovny pro provoz aplikací. Tyto knihovny je nutno rozbalit do následujících adresářů, případně do obdobných na jiných operačních systémech. C:\Program Files\Java\jre1.6.0\lib\ext\ C:\Program Files\Java\jdk1.6.0\lib\ext\ C:\Program Files\Java\jdk1.6.0\jre\lib\ext\ 9

21 Další možností je rozbalit JOGL do libovolného adresáře na disku a přidat do systémové proměnné CLASSPATH cestu ke zvolenému umístění. Po editaci je nutné odhlásit a přihlásit uživatele, aby se změny projevily. Po provedení výše uvedených kroků bude možné používat JOGL jako součást Javy a nebude nutné složitě specifikovat cesty ke knihovnám. Knihovny budou k dispozici v Eclipse, který bude třídy a metody z JOGL knihoven zobrazovat v rozbalovacích nabídkách. 3.4 Provoz aplikace bez nainstalovaného JOGL Ne vždy je možné použít postup, který je uvedený v kapitole 3.3. Na počítači, ke kterému nemá uživatel administrátorské oprávnění, pravděpodobně nebude možné zapisovat do adresáře, kde je nainstalovaná Java. I na takových počítačích je možné provozovat aplikace, které využívají JOGL. Program spustíme níže uvedeným příkazem java -Djava.library.path=./win_lib/ -jar Aplikace.jar Knihovny musí být v tomto případě v adresáři win_lib. Na stejné úrovni jako podadresář win_lib je i soubor Aplikace.jar, ve kterém je rozbalený obsah jogl.jar. Adresářová struktura je znázorněná na obrázku 2. Obrázek 2: Adresářová struktura Potřebné DLL knihovny je také možné umístit přímo do adresáře, kde je Aplikace.jar, pak není nutné používat parametr D a definovat cestu ke knihovnám, protože si aplikace najde soubory sama. Z důvodu přehlednosti je však lepší umístit knihovny do vlastního adresáře. 10

22 Část II Realizační část 11

23 Kapitola 4 Základní techniky v JOGL 4.1 Úvod Následujících pět kapitol je lehkým úvodem do OpenGL v Javě s využitím JOGL. Začneme ukázkou, jak se vytvoří OpenGL okno a do něj se nakreslí trojúhelník, který má každý vrchol jiné barvy. Na tento jednoduchý úvod navážeme rotujícím jehlanem. Další kapitola je o trochu více složitá, obsahuje načítání obrázku z disku jako textury pro krychli. Přidáním světla do scény se zabývá další kapitola. V předposlední kapitole se čtenář dozví, jak napsat na obrazovku text a zobrazit 2D obrázek. Myšlenka následujících lekcí je stejná jako v NeHe[5][20] tutoriálech. Ty jsou určeny hlavně pro jazyk C, pro který jsou dokonale zdokumentovány. Existují i porty do mnoha různých jiných jazyků, včetně Javy a JOGL, ale ne všechny jsou aktuální. Některé využívají ještě GLDrawable, který byl nahrazen vylepšeným GLAutoDrawable a zdrojové kódy je potřeba upravit, aby je bylo možné přeložit a spustit. Obecně lze napsat, že všechny porty NeHe tutoriálů do JOGL mají špatnou dokumentaci, pokud vůbec nějakou mají. OpenGL v podání JOGL se od OpenGL, které známe z jazyka C, příliš neliší, ale některé metody, byly upraveny a v porovnání s funkcemi v C, mají například jiný počet parametrů. 4.2 Vykreslení trojúhelníku pomocí OpenGL V této kapitole vykreslíme barevný trojúhelník pomocí OpenGL v Javě s využitím JOGL. Budeme potřebovat Javu ve verzi 1.5 a vyšší a JOGL ve verzi 1.1 a vyšší. Programovat je možné v libovolném textovém editoru, ale s ohledem na budoucí ukázky je výhodnější použít Eclipse[4] nebo podobný IDE, protože doplní automaticky potřebné importy apod. Pro bezproblémovou přenositelnost mezi platformami je výhodné používat UTF-8 pro kódování všech souborů, pokud chceme používat české popisky. 12

24 Program se skládá ze dvou tříd. Klientská třída Lesson je společná pro všechny kapitoly. Mění se pouze titulek okna. Pomocí této třídy se spouští celý program, obsahuje metodu main(). Druhou třídou je Renderer, která definuje výslednou vyrenderovanou scénu a v tomto příkladu navíc ještě obsluhuje stisky kláves. Po spuštění níže uvedeného kódu uvidíte okno, jako je na obrázku 3. Obrázek 3: Výsledný trojúhelník Třída Lesson Obsahuje statickou metodu main(), vytváří swingový JFrame, na který je umístěn canvas (kreslící plátno pro OpenGL renderování) a spouští Animator, aby se automaticky překreslovala scéna. public class Lesson extends JFrame GLCanvas canvas = new GLCanvas(); Animator animator = new Animator(); public static void main(string[] args) new Lesson(); public Lesson() canvas.addgleventlistener(new Renderer()); animator.add(canvas); this.getcontentpane().add(canvas); this.settitle("lekce 1: Vytvoření OpenGL okna"); this.setsize(640, 480); this.setlocationrelativeto(null); 13

25 this.setdefaultcloseoperation(jframe.exit_on_close); this.setvisible(true); animator.start(); canvas.requestfocus(); Třída Renderer Implementuje GLEventListener pro řešení událostí OpenGL a KeyListener pro obsluhu stisků kláves. V této třídě je definována celá scéna, která se renderuje. Metoda display() definuje co, je bude vykreslovat a je automaticky volána třídou Animator 1, ostatní metody slouží k nastavení scény. Importujeme GL, což je základní rozhraní pro zpřístupnění funkcí z OpenGL verze 2.0. GLAutoDrawable vychází z GLDrawable, který slouží k renderování scén, ale podporuje vykreslování pomocí událostí, což přispívá k vyššímu výkonu. GLU se využívá k nastavení pohledu. public class Renderer implements GLEventListener, KeyListener private GLU glu = new GLU(); private GL gl; Metodu display() volá Animator pro zobrazení každého framu, definuje se tu celá scéna, která se má vykreslovat. V této kapitole se smaže obrazovka s hloubkovým bufferem, resetuje matice a posune se scéna o 2,75 ve směru osy Z (do hloubky). Posunutí je nutné, protože rovina z near je ve vzdálenosti 1 a trojúhelník by nebyl zobrazen, viz níže. public void display(glautodrawable gldrawable) gl.glclear(gl.gl_color_buffer_bit GL.GL_DEPTH_BUFFER_BIT); gl.glloadidentity(); gl.gltranslatef(0f, 0.0f, -2.75f); Na začátku vykreslování si volíme, jaké útvary chceme kreslit. Na výběr máme z několika základních geometrických útvarů, které jsou zobrazeny na obrázku 4 a popsány v tabulce 1. Na první pohled jde pouze o 2D útvary, ale souřadnice každého vrcholu obsahují i složku Z. 1 Viz třída Lesson 14

26 GL_POINTS GL_LINES GL_LINE_STRIP GL_LINE_LOOP GL_TRIANGLES GL_TRAINGLE_STRIP GL_TRAINGLE_FAN GL_QUADS GL_QUAD_STRIP GL_POLYGON Obrázek 4: Náhledy možností kreslení GL_POINTS Každý vertex je reprezentovaný jako samostatný bod. GL_LINES Každý pár po sobě jdoucích vertexů definuje úsečku. GL_LINE_STRIP Spojí po sobě jdoucí vertexy v lomenou čáru. GL_LINE_LOOP Stejně jako GL_LINE_STRIP spojuje po sobě jdoucí vertexy, ale navíc ještě spojí první a poslední bod. GL_TRIANGLES Každá trojice po sobě jdoucích vertexů definuje trojúhelník. GL_TRIANGLE_STRIP První tři vertexy definují jeden trojúhelník, každý další bod definuje nový trojúhelník s využitím předchozích dvou vertexů jako vrcholy. GL_TRIANGLE_FAN Podobně jako GL_TRIANGLE_STRIP, všechny trojúhelníky využívají první vertex jako jeden svůj vrchol, druhý vrchol je předchozí vrchol. GL_QUADS GL_QUAD_STRIP GL_POLYGON Každá čtveřice vertexů definuje čtyřúhelník. První čtyři vertexy definují jeden čtyřúhelník a každé další dva vertexy definují nový čtyřúhelník, který využívá předchozí dva vertexy. Jako GL_LINE_LOOP, ale s vyplněnou plochou. Tabulka 1: Popis možností kreslení Na začátku vykreslování nastavíme kreslení trojúhelníků pomocí GL_TRIANGLES. Pak pro každý bod specifikujeme barvu vrcholu a jeho souřadnici v prostoru. Barva je reprezentována jako třísložkový vektor, kde jednotlivé složky odpovídají červené, 15

27 zelené a modré barvě. Hodnoty jsou v intervalu <0; 1>. Souřadnice bodu v prostoru jsou reprezentovány obvyklým způsobem (X, Y, Z). Kreslení se nesmí zapomenout ukončit. gl.glbegin(gl.gl_triangles); gl.glcolor3d(1.0, 0.0, 0.0); gl.glvertex3f(0.0f, 1.0f, 0.0f); gl.glcolor3d(0.0, 1.0, 0.0); gl.glvertex3f(-1.0f, -1.0f, 0.0f); gl.glcolor3d(0.0, 0.0, 1.0); gl.glvertex3f(1.0f, -1.0f, 0.0f); gl.glend(); Metoda displaychanged() není nyní v JOGL implementována. V budoucnu se bude volat při změně barevné hloubky nebo připojení dalšího monitoru, atd. Metodu je nutné implementovat, protože je definována v rozhraní GLEventListener. public void displaychanged(glautodrawable gldrawable, boolean modechanged, boolean devicechanged) Metoda init() se volá bezprostředně po vytvoření OpenGL okna, je vhodná pro nastavení základních parametrů vykreslování apod. V této kapitole se vytváří přístup k OpenGL, nastavuje barva pozadí (černá) a přidává třída, která bude obsluhovat stisky kláves. Barva pozadí je reprezentována jako čtyřsložkový vektor, kde první tři hodnoty určují barvu a čtvrtá hodnota určuje průhlednost, u barvy pozadí na nastavení průhlednosti nezáleží. public void init(glautodrawable gldrawable) this.gl = gldrawable.getgl(); gl.glclearcolor(0.0f, 0.0f, 0.0f, 0.0f); gldrawable.addkeylistener(this); Metoda reshape() je zavolána při změně velikosti okna a při prvním vykreslením, protože je nutné, aby se nastavil perspektivní pohled podle aktuální velikosti okna. public void reshape(glautodrawable gldrawable, int x, int y, int width, int height) if (height <= 0) height = 1; final float h = (float)width / (float)height; gl.glviewport(0, 0, width, height); Matice GL_PROJECTION ovlivňuje jak výrazná bude perspektiva, tj. jak moc se budou vzdálenější objekty zmenšovat. Metodou gluperspective se nastavuje pohledová pyramida (viz obrázek 5), která v tomto případě svírá úhel 45, závisí na výšce a šířce okna, ořezávací rovina z near je ve vzdálenosti 1 a z far 20 na ose Z. Hodnota z near by 16

28 neměla nabývat 0, protože pak se mohou vyskytnout z důvodu zaokrouhlovacích chyb problémy s viditelností. Přepnutí na matici GL_MODELVIEW oznamuje, že forma pohledu bude změněna, glloadidentity opět resetuje matici. gl.glmatrixmode(gl.gl_projection); gl.glloadidentity(); glu.gluperspective(45.0f, h, 1.0, 20.0); gl.glmatrixmode(gl.gl_modelview); gl.glloadidentity(); Plocha okna, do kterého se vykresluje z far Výška v pixelech α z near Šířka v pixelech Obrázek 5: Pohledová pyramida Metoda keypressed() je zavolána, když uživatel stiskne klávesu. Pokud stiskne Escape, aplikace se ukončí. Metody keyreleased() a keytyped() jsou prázdné, ale musí být implementovány, aby byla implementace korektní. public void keypressed(keyevent e) if (e.getkeycode() == KeyEvent.VK_ESCAPE) System.exit(0); public void keyreleased(keyevent e) public void keytyped(keyevent e) 17

29 4.3 Rotující jehlan V této kapitole vytvoříme prostorový útvar, který bude rotovat okolo své svislé osy. Využijeme kód z kapitoly 4.2, kde jsme vytvořili trojúhelník. Klientská třída Lesson se nemění. Po spuštění níže uvedeného kódu uvidíte okno, jako je na obrázku 6. Obrázek 6: Rotující jehlan Třída Renderer Všechny metody, kromě níže uvedených, zůstávají shodné s metodami z kapitoly 4.2. Části kódu, které se nezměnily, jsou napsány šedou barvou. Z metody display() odstraníme část kódu, která zobrazovala trojúhelník a nahradíme ho novým kódem, který vykresluje jehlan. Navíc přidáme jednoduchou rotaci okolo osy Y. Aby bylo možné rotovat okolo osy, přibyl jeden nový atribut třídy, který ukládá ve stupních celkový úhel, o který byl jehlan otočen. private float rotate = 0; Scénou otáčíme pomocí metody glrotatef(úhel, x, y, z), kde souřadnice x, y, z udávají směr osy, okolo které se otáčí. Souřadnice tří vrcholů byly nahrazeny dvanácti vrcholy jehlanu. Chceme-li každému vrcholu přiřadit jinou barvu, je nutné ji uvést. Na závěr inkrementujeme hodnotu proměnné rotate, ve které je uložen úhel, 18

30 o který je jehlan otočený. Pro zjednodušení je rychlost otáčení závislá na výkonu grafické karty. Ve zdrojovém kódu v textu je uvedena pouze jedna stěna jehlanu, která je znázorněna na obrázku 7, zbylé tři stěny mají pouze jiné souřadnice vrcholů, viz zdrojový kód na přiloženém CD. public void display(glautodrawable gldrawable) gl.glclear(gl.gl_color_buffer_bit GL.GL_DEPTH_BUFFER_BIT); gl.glloadidentity(); gl.gltranslatef(0f, 0.0f, -2.75f); gl.glrotatef(rotate, 0.0f, 1.0f, 0.0f); gl.glbegin(gl.gl_triangles); gl.glcolor3f(1.0f, 0.0f, 0.0f); gl.glvertex3f(0.0f, 1.0f, 0.0f); bod A gl.glcolor3f(0.0f, 1.0f, 0.0f); gl.glvertex3f(-1.0f, -1.0f, 1.0f); bod B gl.glcolor3f(0.0f, 0.0f, 1.0f); gl.glvertex3f(1.0f, -1.0f, 1.0f); bod C A... gl.glend(); rotate += 0.2; Obrázek 7: Body na jehlanu B C Obrázek 7: Body na jehlanu Protože vykreslujeme prostorové útvary, je potřeba zapnout testování na hloubku, aby bylo zajištěno, že bližší objekty překryjí vzdálenější. Pak se nastaví typ hloubkového vykreslování. Pro běžné vykreslování se používá GL_LESS nebo GL_LEQUAL, bližší objekty jsou překryty vzdálenějšími. Nakonec nastavíme korekci perspektivy. Při zanedbatelném snížení výkonu dosáhneme lepšího vzhledu celé scény. public void init(glautodrawable gldrawable) this.gl = gldrawable.getgl(); gl.glclearcolor(0.0f, 0.0f, 0.0f, 0.5f); gl.glenable(gl.gl_depth_test); gl.gldepthfunc(gl.gl_lequal); gl.glhint(gl.gl_perspective_correction_hint, GL.GL_NICEST); gldrawable.addkeylistener(this); 19

Projekt Obrázek strana 135

Projekt Obrázek strana 135 Projekt Obrázek strana 135 14. Projekt Obrázek 14.1. Základní popis, zadání úkolu Pracujeme na projektu Obrázek, který je ke stažení na http://java.vse.cz/. Po otevření v BlueJ vytvoříme instanci třídy

Více

Návod k použití softwaru Solar Viewer 3D

Návod k použití softwaru Solar Viewer 3D Návod k použití softwaru Solar Viewer 3D Software byl vyvinut v rámci grantového projektu Technologie a systém určující fyzikální a prostorové charakteristiky pro ochranu a tvorbu životního prostředí a

Více

Programátorská dokumentace

Programátorská dokumentace Programátorská dokumentace Požadavky Cílem tohoto programu bylo představit barevné systémy, zejména převody mezi nejpoužívanějšími z nich. Zároveň bylo úkolem naprogramovat jejich demonstraci. Pro realizaci

Více

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

14.4.2010. Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod. Základy programování (IZAPR) Přednáška 7 Ing. Michael Bažant, Ph.D. Katedra softwarových technologií Kancelář č. 229, Náměstí Čs. legií Michael.Bazant@upce.cz Obsah přednášky 7 Parametry metod, předávání

Více

KAPITOLA 3 - ZPRACOVÁNÍ TEXTU

KAPITOLA 3 - ZPRACOVÁNÍ TEXTU KAPITOLA 3 - ZPRACOVÁNÍ TEXTU KLÍČOVÉ POJMY textové editory formát textu tabulka grafické objekty odrážky a číslování odstavec CÍLE KAPITOLY Pracovat s textovými dokumenty a ukládat je v souborech různého

Více

Třída DrawingTool. Obrázek 1: Prázdné okno připravené pro kreslení

Třída DrawingTool. Obrázek 1: Prázdné okno připravené pro kreslení Třída DrawingTool strana 1 1. Základ Třída DrawingTool Třída DrawingTool je určena k jednoduchému kreslení pomocí několika základních příkazů do grafického okna zadaných rozměrů (nastavení v konstruktoru),

Více

Satori. Uživatelský manuál

Satori. Uživatelský manuál Satori Uživatelský manuál Obsah Satori...1 1. Program... 3 1.1 Cíle hry... 3 1.2 Požadavky...3 1.3 Instalace... 4 1.4 Ovládání... 4 1.5 Grafika...4 1.6 Zvuky...4 1.7 Soubory...4 1.8 Menu...5 1.9 Nastavení...

Více

Možnosti jazyka Java pro práci s 3D grafikou

Možnosti jazyka Java pro práci s 3D grafikou Mendelova univerzita v Brně Provozně ekonomická fakulta Možnosti jazyka Java pro práci s 3D grafikou Bakalářská práce Vedoucí práce: Ing. Petr Jedlička, Ph.D. Miroslav Švec Brno 2010 { zde se nachází originál

Více

3D sledování pozice vojáka v zastavěném prostoru a budově

3D sledování pozice vojáka v zastavěném prostoru a budově 3D sledování pozice vojáka v zastavěném prostoru a budově Úvod Programový produkt 3D sledování pozice vojáka v zastavěném prostoru a budově je navržen jako jednoduchá aplikace pro 3D zobrazení objektů

Více

Připravil: David Procházka. Projekce

Připravil: David Procházka. Projekce 15. října 2013, Brno Připravil: David Procházka Projekce Počítačová grafika 2 Projekce Strana 2 / 38 Obsah přednášky 1 Projekce 2 Ortografická projekce 3 Perspektivní projekce 4 Nastavení pohledové matice

Více

Úvodem... 9 Kapitola 1 Karetních

Úvodem... 9 Kapitola 1 Karetních Úvodem... 9 Základní znalosti o programovacích jazycích...10 Jazyk C# a platforma.net...10 Visual C# 2010 Express...11 Instalace platformy.net 4.0 a Visual C# 2010 Express...11 Zdrojový kód aplikací...12

Více

Android OpenGL. Práce s texturami

Android OpenGL. Práce s texturami Android OpenGL Práce s texturami Textura Obrázek, který jsme schopní nanášet na 3D objekty S použitím shaderů mnohem víc než to Může obsahovat jiné vlastnosti povrchu, než jen barvu (reliéf, lesklost,

Více

ak. rok 2013/2014 Michal Španěl, spanel@fit.vutbr.cz 24.2.2014

ak. rok 2013/2014 Michal Španěl, spanel@fit.vutbr.cz 24.2.2014 Zadání projektu Texturování Základy počítačové grafiky (IZG) ak. rok 2013/2014 Michal Španěl, spanel@fit.vutbr.cz 24.2.2014 1 První seznámení Cílem projektu je pochopení praktických souvislostí témat přednášek

Více

Závěrečná práce. AutoCAD Inventor 2010. (Zadání D1)

Závěrečná práce. AutoCAD Inventor 2010. (Zadání D1) Závěrečná práce AutoCAD Inventor 2010 (Zadání D1) Pavel Čurda 4.B 4.5. 2010 Úvod Tato práce obsahuje sestavu modelu, prezentaci a samotný výkres Pákového převodu na přiloženém CD. Pákový převod byl namalován

Více

8 Třídy, objekty, metody, předávání argumentů metod

8 Třídy, objekty, metody, předávání argumentů metod 8 Třídy, objekty, metody, předávání argumentů metod Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost třídám a objektům, instančním

Více

INSTALACE PRODUKTU ONTOPIA KNOWLEDGE SUITE

INSTALACE PRODUKTU ONTOPIA KNOWLEDGE SUITE INSTALACE PRODUKTU ONTOPIA KNOWLEDGE SUITE profesionální verze 1 Obsah Požadavky... 3 Instalace... 3 Proměnná CLASSPATH... 3 Zpřístupnění licenčního klíče... 3 Ověřování komponent OKS. 3 Spouštíme aplikaci

Více

DSL manuál. Ing. Jan Hranáč. 27. října 2010. V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

DSL manuál. Ing. Jan Hranáč. 27. října 2010. V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v DSL manuál Ing. Jan Hranáč 27. října 2010 V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v současné době krátký) seznam vestavěných funkcí systému. 1 Vytvoření nového dobrodružství Nejprve

Více

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý

Uživatelský manuál. Aplikace GraphViewer. Vytvořil: Viktor Dlouhý Uživatelský manuál Aplikace GraphViewer Vytvořil: Viktor Dlouhý Obsah 1. Obecně... 3 2. Co aplikace umí... 3 3. Struktura aplikace... 4 4. Mobilní verze aplikace... 5 5. Vytvoření projektu... 6 6. Části

Více

2 Grafický výstup s využitím knihovny

2 Grafický výstup s využitím knihovny 2 Grafický výstup s využitím knihovny Studijní cíl Tento blok je věnován základním principům při vytváření grafického výstupu pomocí standardních metod, které poskytuje grafické rozhraní. V textu budou

Více

13 Barvy a úpravy rastrového

13 Barvy a úpravy rastrového 13 Barvy a úpravy rastrového Studijní cíl Tento blok je věnován základním metodám pro úpravu rastrového obrazu, jako je např. otočení, horizontální a vertikální překlopení. Dále budo vysvětleny různé metody

Více

Připravil: David Procházka. Vertex Buffer Objects

Připravil: David Procházka. Vertex Buffer Objects 30. září 2013, Brno Připravil: David Procházka Vertex Buffer Objects Počítačová grafika 2 Obsah přednášky Strana 2 / 22 Obsah přednášky 1 Obsah přednášky 2 Vertex Buffer Objects 3 Příklady 4 Shrnutí Obsah

Více

Comenius Logo. Princip programování. Prostředí Comenius Logo

Comenius Logo. Princip programování. Prostředí Comenius Logo Comenius Logo je objektově orientovaný programovací nástroj pracující v prostředí Windows. Byl vyvinut na Slovensku jako nástroj k výuce programování na základních školách. Rozvíjí tvořivost a schopnost

Více

Bridge. Známý jako. Účel. Použitelnost. Handle/Body

Bridge. Známý jako. Účel. Použitelnost. Handle/Body Bridge Bridge Známý jako Handle/Body Účel odděluje abstrakci (rozhraní a jeho sémantiku) od její konkrétní implementace předchází zbytečnému nárůstu počtu tříd při přidávání implementací používá se v době

Více

Prostředí Microstationu a jeho nastavení. Nastavení výkresu

Prostředí Microstationu a jeho nastavení. Nastavení výkresu Prostředí Microstationu a jeho nastavení Nastavení výkresu 1 Pracovní plocha, panely nástrojů Seznámení s pracovním prostředím ovlivní pohodlí, rychlost, efektivitu a možná i kvalitu práce v programu Microstation.

Více

FORTANNS. havlicekv@fzp.czu.cz 22. února 2010

FORTANNS. havlicekv@fzp.czu.cz 22. února 2010 FORTANNS manuál Vojtěch Havlíček havlicekv@fzp.czu.cz 22. února 2010 1 Úvod Program FORTANNS je software určený k modelování časových řad. Kód programu má 1800 řádek a je napsán v programovacím jazyku

Více

MS EXCEL. MS Excel 2007 1

MS EXCEL. MS Excel 2007 1 MS Excel 2007 1 MS EXCEL Gymnázium Jiřího Wolkera v Prostějově Výukové materiály z informatiky pro gymnázia Autoři projektu Student na prahu 21. století - využití ICT ve vyučování matematiky na gymnáziu

Více

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1 Kapitola 4 Rasterizace objektů Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na rastrově definované obrazy. Při zobrazení reálného modelu ve světových souřadnicích na výstupní

Více

Zobrazovací jednotky a monitory

Zobrazovací jednotky a monitory Zobrazovací jednotky a monitory Zobrazovací jednotka - karta, která se zasunuje do jednoho z konektorů na sběrnici uvnitř počítače. Dva režimy činnosti: Textový režim - zobrazuje znaky uvedené v tabulce

Více

Projektová dokumentace GED 2006

Projektová dokumentace GED 2006 Projektová dokumentace GED 2006 20.4.2006 Řešitelé týmu a podíl práce na projektu: Kamil Dudka xdudka00 objektový návrh uživatelské rozhraní podpora plug-in programů kreslící plocha vkládání textu programová

Více

Android OpenGL. Pokročilé shadery

Android OpenGL. Pokročilé shadery Android OpenGL Pokročilé shadery Struktura programu Reálná aplikace zpravidla obsahuje více než jeden shader Kód pro inicializaci shaderu je dobré mít ve třídě (méně opisování stejného kódu) Shadery není

Více

Školní kolo soutěže Baltík 2007, kategorie A a B

Školní kolo soutěže Baltík 2007, kategorie A a B Úloha č. 1: Baltík - obkladač a. Baltík si koupil nový dvoupokojový byt. Po spuštění programu se na pracovní ploše objeví tyto dva pokoje. Zdi pokojů jsou tvořené předměty č. 1150 z banky 1. Baltík stojí

Více

BALISTICKÝ MĚŘICÍ SYSTÉM

BALISTICKÝ MĚŘICÍ SYSTÉM BALISTICKÝ MĚŘICÍ SYSTÉM UŽIVATELSKÁ PŘÍRUČKA Verze 2.3 2007 OBSAH 1. ÚVOD... 5 2. HLAVNÍ OKNO... 6 3. MENU... 7 3.1 Soubor... 7 3.2 Měření...11 3.3 Zařízení...16 3.4 Graf...17 3.5 Pohled...17 1. ÚVOD

Více

Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost rozhraním a výjimkám.

Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost rozhraním a výjimkám. 13 Rozhraní, výjimky Studijní cíl Tento studijní blok má za cíl pokračovat v základních prvcích jazyka Java. Konkrétně bude věnována pozornost rozhraním a výjimkám. Doba nutná k nastudování 2 2,5 hodiny

Více

Výčtový typ strana 67

Výčtový typ strana 67 Výčtový typ strana 67 8. Výčtový typ V této kapitole si ukážeme, jak implementovat v Javě statické seznamy konstant (hodnot). Příkladem mohou být dny v týdnu, měsíce v roce, planety obíhající kolem slunce

Více

Programování v Javě I. Leden 2008

Programování v Javě I. Leden 2008 Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Leden 2008 Radek Kočí Seminář Java Programování v Javě (1) 1/ 45 Téma přednášky Datové typy Deklarace třídy Modifikátory

Více

Při studiu tohoto bloku se předpokládá, že student je zvládá základy programování v jazyce Java s využitím vývojového prostředí NetBeans.

Při studiu tohoto bloku se předpokládá, že student je zvládá základy programování v jazyce Java s využitím vývojového prostředí NetBeans. 1 Grafické rozhraní Studijní cíl Tento blok je věnován vytváření programů s využitím grafického rozhraní (GUI). Vysvětlen bude základní filozofie pro vytváření aplikací s GUI ve srovnání s konzolovými

Více

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody

Obsah. 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody Obsah 1) Rozšířené zadání 2) Teorie zásuvných modulů a) Druhy aplikací používajících zásuvné moduly b) Knihovny c) Architektura aplikace d) Výhody 3) 4) Mantichora Mantichora je moderní aplikace, který

Více

Java aplety. Předávání parametrů z HTML

Java aplety. Předávání parametrů z HTML Java aplety Aplety jsou speciální formou Java aplikací - mohou být spouštěny z prostředí WWW prohlížeče. Aby je prohlížeč spustil, musíme vložit do HTML stránky potřebné příkazy:

Více

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

Více

Comenius Logo. Úterý 20. března. Princip programování. Prostředí Comenius Logo

Comenius Logo. Úterý 20. března. Princip programování. Prostředí Comenius Logo Úterý 20. března Comenius Logo je objektově orientovaný programovací nástroj pracující v prostředí Windows. Byl vyvinut na Slovensku jako nástroj k výuce programování na základních školách. Rozvíjí tvořivost

Více

Algoritmizace a programování

Algoritmizace a programování Algoritmizace a programování Struktura programu Vytvoření nové aplikace Struktura programu Základní syntaktické elementy První aplikace Verze pro akademický rok 2012/2013 1 Nová aplikace NetBeans Ve vývojovém

Více

Lekce 12 Animovaný náhled animace kamer

Lekce 12 Animovaný náhled animace kamer Lekce 12 Animovaný náhled animace kamer Časová dotace: 2 vyučovací hodina V poslední lekci tohoto bloku se naučíme jednoduše a přitom velice efektivně animovat. Budeme pracovat pouze s objekty, které jsme

Více

Autodesk AutoCAD Civil 3D

Autodesk AutoCAD Civil 3D Novinky 2018 Autodesk AutoCAD Civil 3D www.graitec.cz www.cadnet.cz, helpdesk.graitec.cz, www.graitec.com Obsah: 1. Vyřešení překrytí koridorů (motýlkování)... 3 2. Relativní návrhové linie... 4 3. Dynamické

Více

Programátorská příručka

Programátorská příručka KAPITOLA 1. PROGRAMÁTORSKÁ PŘÍRUČKA Kapitola 1 Programátorská příručka 1.1 Úvod 1.1.1 Technologie Program je psaný v jazyce Java 1.7. GUI je vytvářeno pomocí knihovny SWT. (http://eclipse.org/swt/) Pro

Více

9. Práce s naskenovanými mapami

9. Práce s naskenovanými mapami 9. Práce s naskenovanými mapami V této kapitole si ukážeme práci s předlohami. Předlohou rozumíme naskenovanou bitmapu, načtenou jako pozadí na pracovní plochu. Použitím bitmapového obrázku jako podklad,

Více

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 6. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28. Zdokonalování gramotnosti v oblasti ICT Kurz MS Excel kurz 6 1 Obsah Kontingenční tabulky... 3 Zdroj dat... 3 Příprava dat... 3 Vytvoření kontingenční tabulky... 3 Možnosti v poli Hodnoty... 7 Aktualizace

Více

1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky

1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky 1 Návod na instalaci prostředí LeJOS-NXJ a přehrání firmwaru NXT kostky 1. Nainstalujte ovladač na připojení NXJ přes USB rozhraní. Pokud jste nainstalovali software od LEGO Mindstorms, který se k legu

Více

František Hudek. duben ročník

František Hudek. duben ročník VY_32_INOVACE_FH12_WIN Jméno autora výukového materiálu Datum (období), ve kterém byl VM vytvořen Ročník, pro který je VM určen Vzdělávací oblast, obor, okruh, téma Anotace František Hudek duben 2013 6.

Více

Z. Kotala, P. Toman: Java ( Obsah )

Z. Kotala, P. Toman: Java ( Obsah ) Z. Kotala, P. Toman: Java ( Obsah ) 13. Výjimky Výjimka (exception) je definována jako událost, která nastane během provádění programu a která naruší normální běh instrukcí. Výjimka je vyvolána například

Více

Práce s texty, Transformace rastru, Připojení GPS

Práce s texty, Transformace rastru, Připojení GPS Školení programu TopoL xt Práce s texty, Transformace rastru, Připojení GPS Obsah: 1. Uživatelské rozhraní (heslovitě, bylo součástí minulých školení) 2. Nastavení programu (heslovitě, bylo součástí minulých

Více

Úvod do počítačových sítí

Úvod do počítačových sítí Úvod do počítačových sítí Jméno a příjmení: Jan Tichava Osobní číslo: Studijní skupina: středa, 3 4 Obor: INIB INF E-mail: jtichava@students.zcu.cz Datum odevzdání: 19.12.06 Základní charakteristika Jednoduchá

Více

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox 02. HODINA Obsah: 1. Typy souborů a objektů 2. Ovládací prvky Label a TextBox 3. Základní příkazy a vlastnosti ovládacích prvků 4. Práce s objekty (ovládací prvky a jejich vlastnosti) 2.1 Typy souborů

Více

Úloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy

Úloha 1. Text úlohy. Vyberte jednu z nabízených možností: NEPRAVDA. PRAVDA Úloha 2. Text úlohy Úloha 1 Úloha 2 Otázka se týká předchozího kódu. Určete pravdivost následujícího tvrzení: "Pro každý bod vytvoří úsečku mezi ním a středem panelu." Úloha 3 Otázka se týká předchozího kódu. Určete pravdivost

Více

Pokročilé programování v jazyce C pro chemiky (C3220) 3D grafika v knihovně Qt

Pokročilé programování v jazyce C pro chemiky (C3220) 3D grafika v knihovně Qt Pokročilé programování v jazyce C pro chemiky (C3220) 3D grafika v knihovně Qt Rozhraní pro 3D grafiku Běžné grafické knihovny zpravidla podporují pouze 2D grafický výstup Pro 3D grafický výstup jsou využívány

Více

Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP

Základy programování. Úloha: Eratosthenovo síto. Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Základy programování Úloha: Eratosthenovo síto Autor: Josef Hrabal Číslo: HRA0031 Datum: 28.11.2009 Předmět: ZAP Obsah 1 Zadání úkolu: 3 1.1 Zadání:............................... 3 1.2 Neformální zápis:.........................

Více

Uživatelské rozhraní grafického zadávání

Uživatelské rozhraní grafického zadávání 24.02.2014 Seznam změn Truss 4.6 Firma Fine s.r.o. připravila verzi 4.6 programu Truss. Tato verze přináší následující změny a vylepšení: Grafické zadávání Rovinné (2D) pracovní plochy nyní umožňují přímé

Více

Manuál k programu IDP 1.0

Manuál k programu IDP 1.0 Příloha B Manuál k programu IDP 1.0 Toto je manuál k programu IDP - Interakční diagram průřezu 1.0, který byl vytvořen v rámci této diplomové práce za podpory grantu Studentské grantové soutěže ČVUT v

Více

1. Úvod do obsluhy AutoCADu

1. Úvod do obsluhy AutoCADu 1. Úvod do obsluhy AutoCADu Studijní cíl V této lekci se naučíme: Seznámíme se s potřebným zařízením. Způsoby ovládání. Nastavení AutoCADu. Doba nutná k procvičení 1,5 hodiny 1.1 AutoCAD AutoCAD je plnohodnotný

Více

Reliance 3 design OBSAH

Reliance 3 design OBSAH Reliance 3 design Obsah OBSAH 1. První kroky... 3 1.1 Úvod... 3 1.2 Založení nového projektu... 4 1.3 Tvorba projektu... 6 1.3.1 Správce stanic definice stanic, proměnných, stavových hlášení a komunikačních

Více

1. Programování proti rozhraní

1. Programování proti rozhraní 1. Programování proti rozhraní Cíl látky Cílem tohoto bloku je seznámení se s jednou z nejdůležitější programátorskou technikou v objektově orientovaném programování. Tou technikou je využívaní rozhraní

Více

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4

1 Administrace systému 3. 1.3 Moduly... 3 1.4 Skupiny atributů... 4 1.5 Atributy... 4 1.6 Hodnoty atributů... 4 CRM SYSTÉM KORMORÁN PŘÍRUČKA ADMINISTRÁTORA Obsah 1 Administrace systému 3 1.1 Uživatelské účty.................................. 3 1.2 Přístupová práva................................. 3 1.3 Moduly.......................................

Více

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím

GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER. váš partner na cestě od dat k informacím GTL GENERATOR NÁSTROJ PRO GENEROVÁNÍ OBJEKTŮ OBJEKTY PRO INFORMATICA POWERCENTER váš partner na cestě od dat k informacím globtech spol. s r.o. karlovo náměstí 17 c, praha 2 tel.: +420 221 986 390 info@globtech.cz

Více

Programování v Javě I. Únor 2009

Programování v Javě I. Únor 2009 Seminář Java Programování v Javě I Radek Kočí Fakulta informačních technologií VUT Únor 2009 Radek Kočí Seminář Java Programování v Javě (1) 1/ 44 Téma přednášky Datové typy Deklarace třídy Modifikátory

Více

Kudyšel comfort. Manuál k programu

Kudyšel comfort. Manuál k programu Kudyšel comfort Manuál k programu Program Kudyšel comfort je určen pro obsluhu zařízení kudyšel (gps logeru). Kudyšel je zařízení, které zjišťuje souřadnice GPS a spolu s časovými údaji je ukládá do své

Více

Uživatelská příručka Autor: Martin Fiala

Uživatelská příručka Autor: Martin Fiala 1 Uživatelská příručka Autor: Martin Fiala Vzhledem k tomu, že navržený program nefunguje samostatně a jedná se pouze o část implementovanou do pluginu BJ2NB vyvíjeného na Vysoké škole ekonomické, je nutné

Více

Souřadnicové prostory

Souřadnicové prostory Prostor objektu Tr. objektu Tr. modelu Prostor scény Souřadnicové prostory V V x, y z x, y z z -z x, y Tr. objektu V =V T 1 T n M Tr. modelu Tr. scény x, y Tr. pohledu Tr. scény Tr. pohledu Prostor pozorovatele

Více

Soubory s reklamami musí mít stejný název jako ta výše uvedené. Stávající soubory reklam budou přepsány.

Soubory s reklamami musí mít stejný název jako ta výše uvedené. Stávající soubory reklam budou přepsány. Příloha 5 Výroba a zadávání reklamních obrázků Program umožňuje zobrazovat až 10 reklamních obrázků na monitorech. Obrázky musí splňovat následující parametry: velikost 640 x 480 pixelů formát BMP s 16

Více

Nápověda CADKON Express

Nápověda CADKON Express Nápověda CADKON Express Úvod CADKON Express je nadstavba pro AutoCAD LT 2004 až AutoCAD LT 2014. Má stejné nároky na operační systém počítače jako verze AutoCADu LT, na které je používán. Podporované operační

Více

WINDOWS 7 ZÁKLADY. Na konci roku 2012 přišly na trh nové Windows 8, které revolučně mění ovládání a jsou orientovány především na dotykové ovládání.

WINDOWS 7 ZÁKLADY. Na konci roku 2012 přišly na trh nové Windows 8, které revolučně mění ovládání a jsou orientovány především na dotykové ovládání. WINDOWS 7 ZÁKLADY Microsoft Windows 7 je grafický operační systém a celá rodina operačních systémů Windows je nejrozšířenější operační systém používaný v domácnostech na světě. Jeho předchůdci byli Windows

Více

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: 1. lekce 1. Minimální program do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme: #include #include int main() { printf("hello world!\n"); return 0; 2.

Více

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender

VY_32_INOVACE_INF.19. Inkscape, GIMP, Blender VY_32_INOVACE_INF.19 Inkscape, GIMP, Blender Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Jiří Kalous Základní a mateřská škola Bělá nad Radbuzou, 2011 INKSCAPE Inkscape je open source

Více

Reflections, refractions, interreflections

Reflections, refractions, interreflections :: gs Reflections, refractions, interreflections Odrazy a lomy světla Grafické systémy David Sedláček 2004 :: fyzika Zákon odrazu Lom světla Snellův zákon Fresnelova rovnice poměr prošlého a odraženého

Více

UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Katedra softwarových technologií

UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Katedra softwarových technologií UNIVERZITA PARDUBICE Fakulta elektrotechniky a informatiky Katedra softwarových technologií Softwarový nástroj pro tvorbu a správu genealogických dat Manuál pro uživatele Bc. František Hlaváček Součást

Více

Obsah. Proč právě Flash? 17 Systémové požadavky 17. Jak používat tuto knihu 18 Doprovodný CD-ROM 19

Obsah. Proč právě Flash? 17 Systémové požadavky 17. Jak používat tuto knihu 18 Doprovodný CD-ROM 19 Úvod.............................15 Proč právě Flash? 17 Systémové požadavky 17 Jak používat tuto knihu 18 Doprovodný CD-ROM 19 Část první Začínáme s tvorbou her ve Flashi..............21 1 První kroky........................23

Více

METODICKÉ LISTY. výstup projektu Vzdělávací středisko pro další vzdělávání pedagogických pracovníků v Sokolově

METODICKÉ LISTY. výstup projektu Vzdělávací středisko pro další vzdělávání pedagogických pracovníků v Sokolově METODICKÉ LISTY výstup projektu Vzdělávací středisko pro další vzdělávání pedagogických pracovníků v Sokolově reg. č. projektu: CZ.1.07/1.3.11/02.0005 Sada metodických listů: KABINET INFORMATIKY Název

Více

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007 Úvod do programovacích jazyků (Java) Michal Krátký 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programovacích jazyků (Java), 2006/2007 c 2006 Michal Krátký Úvod do programovacích jazyků

Více

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných

Tematický celek Proměnné. Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace Deklarace proměnných Tematický celek 03 3.1 Proměnné Proměnné slouží k dočasnému uchovávání hodnot během provádění aplikace. 3.1.1 Deklarace proměnných Dim jméno_proměnné [As typ] - deklarace uvnitř procedury platí pouze pro

Více

Vytvoření a úpravy geologického modelu

Vytvoření a úpravy geologického modelu Inženýrský manuál č. 39 Aktualizace 11/2018 Vytvoření a úpravy geologického modelu Program: Stratigrafie Soubor: Demo_manual_39.gsg Úvod Cílem tohoto inženýrského manuálu je vysvětlit základní práci s

Více

Novinky AutoCAD LT 2017

Novinky AutoCAD LT 2017 Novinky AutoCAD LT 2017 www.graitec.cz www.cadnet.cz, helpdesk.graitec.cz, www.graitec.com Novinky AutoCAD LT 2017 PDF dokument obsahuje přehled novinek produktu AutoCAD LT 2017. Obsah: 1. Autodesk aplikace...

Více

Multimediální prezentace MS PowerPoint I

Multimediální prezentace MS PowerPoint I Multimediální prezentace MS PowerPoint I Informatika Multimediální prezentace zažívají v poslední době obrovský rozmach. Jsou používány například k reklamním účelům, k předvedení výrobků či služeb. Velmi

Více

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7 UNIVERZITA TOMÁŠE BATI VE ZLÍNĚ FAKULTA APLIKOVANÉ INFORMATIKY PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 7 Využití knihoven podprogramů, displej Jan Dolinay Petr Dostálek Zlín 2013 Tento studijní materiál vznikl

Více

Scribus. Vypracovali : Hana Bartošová Tomáš Dvořáček

Scribus. Vypracovali : Hana Bartošová Tomáš Dvořáček Scribus Vypracovali : Hana Bartošová Tomáš Dvořáček Seznámení Program Scribus je počítačový program pro profesionální sazbu tzv. Desktop Publisingu (DTP), který byl poprvé předveden v roce 2001. Program

Více

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ]

Aplikované úlohy Solid Edge. SPŠSE a VOŠ Liberec. Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ] Aplikované úlohy Solid Edge SPŠSE a VOŠ Liberec Ing. Jan Boháček [ÚLOHA 27 NÁSTROJE KRESLENÍ] 1 CÍL KAPITOLY V této kapitole si představíme Nástroje kreslení pro tvorbu 2D skic v modulu Objemová součást

Více

pro začátečníky pro pokročilé na místě (dle požadavků zákazníka)

pro začátečníky pro pokročilé na místě (dle požadavků zákazníka) Semináře pro začátečníky pro pokročilé na místě (dle požadavků zákazníka) Hotline telefonická podpora +420 571 894 335 vzdálená správa informační email carat@technodat.cz Váš Tým Obsah Obsah... -2- Úvod...

Více

Fakulta informačních technologíı. IZG cvičení 6. - Zobrazování 3D scény a základy OpenGL 1 / 38

Fakulta informačních technologíı. IZG cvičení 6. - Zobrazování 3D scény a základy OpenGL 1 / 38 IZG cvičení 6. - Zobrazování 3D scény a základy OpenGL Tomáš Milet Ústav počítačové grafiky a multimédíı Fakulta informačních technologíı Vysoké učení technické Brno IZG cvičení 6. - Zobrazování 3D scény

Více

Java - Kresba. 2/28/11 1/8 Java - kresba

Java - Kresba. 2/28/11 1/8 Java - kresba Java - Kresba Základní entity a jejich kresba ve třídě Graphics nemůžeme nastavit linii, šířku a typ, z grafických atributů jí můžeme nastavit pouze barvu Linie (čára)... drawline(int x1, int y1, int x2,

Více

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ

TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ TECHNOLOGIE ELASTICKÉ KONFORMNÍ TRANSFORMACE RASTROVÝCH OBRAZŮ ÚVOD Technologie elastické konformní transformace rastrových obrazů je realizována v rámci webové aplikace NKT. Tato webová aplikace provádí

Více

Kontingenční tabulky v MS Excel 2010

Kontingenční tabulky v MS Excel 2010 Kontingenční tabulky v MS Excel 2010 Autor: RNDr. Milan Myšák e-mail: milan.mysak@konero.cz Obsah 1 Vytvoření KT... 3 1.1 Data pro KT... 3 1.2 Tvorba KT... 3 2 Tvorba KT z dalších zdrojů dat... 5 2.1 Data

Více

Úvod. Program ZK EANPRINT. Základní vlastnosti programu. Co program vyžaduje. Určení programu. Jak program spustit. Uživatelská dokumentace programu

Úvod. Program ZK EANPRINT. Základní vlastnosti programu. Co program vyžaduje. Určení programu. Jak program spustit. Uživatelská dokumentace programu sq Program ZK EANPRINT verze 1.20 Uživatelská dokumentace programu Úvod Základní vlastnosti programu Jednoduchost ovládání - umožňuje obsluhu i málo zkušeným uživatelům bez nutnosti většího zaškolování.

Více

STRUč Ná Př íruč KA pro Windows Vista

STRUč Ná Př íruč KA pro Windows Vista STRUč Ná Př íruč KA pro Windows Vista OBSAH Kapitola 1: SYSTéMOVé POžADAVKY...1 Kapitola 2: INSTALACE SOFTWARU TISKáRNY V SYSTéMU WINDOWS...2 Instalace softwaru pro lokální tisk... 2 Instalace softwaru

Více

CAD Decor 2.0.5.9 - novinky

CAD Decor 2.0.5.9 - novinky CAD Decor 2.0.5.9 - novinky 3D plocha 3D plochami je definován tvar všech prvků vložených do výkresu. Když některý komplexní prvek (deska, stěna, zařizovací předmět apod.) ve výkresu rozložíte nástrojem

Více

Testování. Zadání příkladu. Vytvoření kostry třídy. Obsah:

Testování. Zadání příkladu. Vytvoření kostry třídy. Obsah: Obsah: Testování... 1 Zadání příkladu... 1 Vytvoření kostry třídy... 1 Napsání testů... 2 Testy správnosti... 3 Testy výjimek... 3 Testy vztahů/závislostí... 4 Zdrojový text testu... 4 Spuštění testů...

Více

DUM 06 téma: Tvorba makra pomocí VBA

DUM 06 téma: Tvorba makra pomocí VBA DUM 06 téma: Tvorba makra pomocí VBA ze sady: 03 tematický okruh sady: Tvorba skript a maker ze šablony: 10 Algoritmizace a programování určeno pro: 4. ročník vzdělávací obor: 18-20-M/01 Informační technologie

Více

OPERAČNÍ SYSTÉM. základní ovládání. Mgr. Jan Veverka Střední odborná škola sociální obor ošetřovatel

OPERAČNÍ SYSTÉM. základní ovládání. Mgr. Jan Veverka Střední odborná škola sociální obor ošetřovatel OPERAČNÍ SYSTÉM základní ovládání Mgr. Jan Veverka Střední odborná škola sociální obor ošetřovatel Pár otázek na začátek popište k čemu se používá počítač v jakých oborech lidské činnosti se využívá počítačů?

Více

Windows - základy. Hlavním vypínačem na základní jednotce. K datům uloženým do výchozí složky.

Windows - základy. Hlavním vypínačem na základní jednotce. K datům uloženým do výchozí složky. Práce se soubory a složkami Windows - základy Otázka Jakým způsobem se zapíná počítač? Jaká vstupní pole musí být vyplněna v přihlašovacím panelu Windows? K čemu slouží postup "Nabídka Start" - "Vypnout"

Více

umenugr JEDNOTKA PRO VYTVÁŘENÍ UŽIVATELSKÝCH GRAFICKÝCH MENU Příručka uživatele a programátora

umenugr JEDNOTKA PRO VYTVÁŘENÍ UŽIVATELSKÝCH GRAFICKÝCH MENU Příručka uživatele a programátora umenugr JEDNOTKA PRO VYTVÁŘENÍ UŽIVATELSKÝCH GRAFICKÝCH MENU Příručka uživatele a programátora SofCon spol. s r.o. Střešovická 49 162 00 Praha 6 tel/fax: +420 220 180 454 E-mail: sofcon@sofcon.cz www:

Více

METODICKÝ POKYN PRÁCE S MS PowerPoint - POKROČILÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky.

METODICKÝ POKYN PRÁCE S MS PowerPoint - POKROČILÍ. Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. METODICKÝ POKYN PRÁCE S MS PowerPoint - POKROČILÍ Pozadí snímku Pozadí snímku můžeme nastavit všem snímkům stejné nebo můžeme volit pro jednotlivé snímky různé pozadí. Máme několik možností: Pozadí snímku

Více

15. Projekt Kalkulačka

15. Projekt Kalkulačka Projekt Kalkulačka strana 143 15. Projekt Kalkulačka 15.1. Základní popis, zadání úkolu Pracujeme na projektu Kalkulačka, který je ke stažení na java.vse.cz. Po otevření v BlueJ vytvoříme instanci třídy

Více