Transformácie - Grafické systémy, vizualizácia a multimédia

Úloha

Vytvorte jednoduchý interaktívny nástroj (s grafickým pouzívateľským rozhraním), ktorý:

Ukážka

Podrobnosti zadania

Načítanie vstupu

2D útvar je potrebné načítať zo súboru. V programe sa musí dať zadať, z ktorého súboru sa má 2D útvar načítať. 2D útvar je zadaný postupnosťou bodov. Body budú pozostávať z dvojíc celých čísel. Formát súboru je nasledovný:
[pocet bodov]
[bod_1_x] [bod_1_y]
[bod_2_x] [bod_2_y]
...
	
Štandardný názov súboru je "vstup.txt"

Vykreslenie útvaru

Načítaný 2D útvar vykrelite do zobrazovaného okna. Napríklad cez plátno (canvas) vašej GUI knižnice. 2D útvar vykreslite kreslením čiar. Vždy dva po sebe idúce body sú spojené čiarou. Posledný bod je spojený s prvým. Stačí vykresliť obrys útvaru.

Transformovanie útvaru

Program bude poskytovať tri nástroje: Parametre jednotlivých transformácií sa budú zadávať v kombinácii klávesnica a myš. Za plne interaktívne ovládanie iba myšou je možné získať bonus.

Realizácia

Na realizáciu transformácií použite matice. Transformácie a matice naprogramujte bez použitia hotového kódu (napr. externé knižnice, vstavané funkcie vašeho prostredia, ...)

Prednáška

Hodnotenie

Maximum je 15b udeľovaných nasledovne:

Je možné sískať bonus 5b ak bude nástroj veľmi interaktívny: plne ovládateľný myšou (otáčanie, posúvanie, škálovanie), online bude preklesľovať, keď budeme nastavovať uhol, škálovať, posúvať.

V implementácii nesmiete použiť hotový kód na prácu s maticami a transformáciami. Musíte ich naprogramovať sami.

Strhávať sa bude za:

Odovzdanie

čo sa odovzdáva: