Fabijan Lukin, Fran Pregernik, Tomislav Sukser

Tehnička dokumentacija za obojivo računarstvo

Povratak

4        Grafička sučelja simulatora

4.1    Grafičko sučelje: PaintableSimulator GUI

PaintableSimulator.GUI je korisničko sučelje za rad na jednom računalu. Objedinjuje razrede GenericSimulator i Visualization i tjera ih da rade zajedno. Program se pokreće izvršavanjem datoteke PaintableComputerSimulator.GUI.exe. Programi moraju biti u podmapi „Plugins“.

PaintableSimulator.Gui grafičko sučelje

Ovo korisničko sučelje podržava spremanje simulacija u obliku slika i filmova u avi formatu. Filmovi mogu biti nekompresirani, ili kompresirani s Intel Indeo 5 ili HuffYUV koderima.

4.1.1       Različita iscrtavanja

Za spremanje slika i filmova, te za samo iscrtavanje simulatora, nužna je biblioteka ProcessSimulator.Visualizations.dll. U njoj se nalaze sljedeći razredi :

4.1.1.1     Razred Visualize

Razred Visualize je apstraktni razred koja sadrži funkcije koje svaki način crtanja mora imati. Sve funkcije i metode koja pruža ovaj razred, konkretni razred koji obavlja crtanje mora naslijediti i prekriti. Na taj način moguće je proširivati načine prikaza. Trenutno se nudi prikaz putem standardnog GDI i novog GDI+ načina iscrtavanja. GDI je posebno učinkovit ukoliko se program pokreće preko RemoteDesktopa (iscrtavanje je brže za 50% u odnosu na GDI+ prikaz).

U budućnosti je moguće ugraditi DirectX ili OpenGL iscrtavanje i tako još više ubrzati crtanje i efikasno napraviti 3D prikaz obojivih računala.

4.1.1.2     Razred AVIExport

Pomoću ovog razreda moguće je izrađivati filmove simulacija u svim kompresijskim formatima  koji su instalirani na računalo, kao i u nekompresiranom avi formatu. Trenutno su, uz spremanje bez kompresije, podržana dva formata: Intel Indeo 5 (kompresija s gubitkom kvalitete) i HuffYUV (kompresija bez gubitka kvalitette).

4.2    Grafičko sučelje - PaintableSimulator.SmartClient

Grafička sučelja, pored simulatora, moraju obavljati rad iscrtavana stanja na ekran. Taj rad je također procesno intenzivan kao i rad samog simulatora. Tako se rodila ideja da se ta dva posla odvoje na različita računala i odmah nakon toga, SmartClient grafičko sučelje. Važno je napomenuti da je SmartClient također moguće izvoditi na jednom računalu, zapravo tada radi najbrže, no također ga je moguće pokrenuti u modu za rad na daljinu.

PaintableSimulator.SmratClient u akciji s potpunim prikazom zida

Dodatna posebnost ovog grafičkog sučelja je u tome da je moguć izbor objekata za bojanje koji nisu isključivo vezani uz programe i senzore i to pomoću alatne trake iznad prikaza zida (Colorizer).

SmartClient ne razlikuje dodavanje senzora od običnih računala te se ispod postavaka simulacije mogu izabrati koja računala želimo dodati na zid. Posebno treba napomenuti da za razliku GenericSimulatora i PaintableSimulator.GUI grafičkog sučelja SmartClient i RemoteSimulator ne registriraju automatski tokove podataka nego to korisnik treba sam učiniti pomoću izbornika ispod postavaka simulacije.

4.2.1       Samostalni način rada

Samostalni način rada je uključen po defaultu. U tom načinu rada simulator radi kao i PaintableSimulator.GUI grafički klijent, možda malo sporije zbog zaštita protiv grešaka koje se mogu dogoditi u načinu rada na daljinu.

Ovaj način rada se pokreće direktno izvršavanjem datoteke PaintableSimulator.SmartClient.exe.

4.2.2       Klijent-server način simulacije

Rad na daljinu se odvija pomoću serverske aplikacije koja se pokreće na jačem računalu kako bi se simulacija mogla odvijati brže. Treba napomenuti da Plugins direktorij sa dodatcima mora biti na svakom od računala kao poddirektorij direktorija gdje se nalaze PaintableSimulator.Server.exe i PaintableSimulator.SmartClient.exe, također je važno da su ti direktoriji po sadržaju identični kako bi se mogli udaljeno pokrenuti programi.

Ovaj način rada se pokreće tako da se prilikom poziva PaintableSimulator.SmartClient.exe datoteke u nastavku navede „/remote“ (bez navodnika).

Za ostvarenje komunikacije je potrebno da server radi na računalu sa poznatom IP adresom i da je klijent „vidi“. Nažalost, zasada je moguće da se klijent i server izvršavaju na Windows XP operacijskim sustavima. Windows Server operacijski sustavi imaju jake sigurnosne mjere i ne omogućavaju izvršavanje bez problema.