OO2/Lab 3 2022
< ОО2
Pređi na navigaciju
Pređi na pretragu
Treća laboratorijska vežba 2022. godine održana je 31. maja godine zajedno za SI i RTI.
V1
L3
Zadatak se pojavio na junskoj trećoj laboratorijskoj vežbi u oba termina. Postavka osnovnog zadatka je dostupna na stranici predmeta.
Objekat u svemiru se stvara sa zadatim celobrojnim koordinatama centra u dvodimenzionalnom prostoru koje mogu da se dohvate i bojom (Može se odrediti rastojanje između centara dva objekta u svemiru.Color
). Moguće je pojedinačno promeniti svaku od koordinata centra za zadati pomeraj.Moguće je iscrtati objekat u svemiru nad zadatim grafičkim kontekstom (Graphics
).- Letelica je objekat svetlo plave boje (
CYAN
) koji se dodatno stvara dužinom osnovice i visinom. Može se proveriti da li se letelica preklapa sa drugim nebeskim telom. Preklapa se ukoliko je poluprečnik opisane kružnice manji od zbira polovine osnovice i visine. Letelica se iscrtava oko centra kao jednakokraki trougao.[1] Nebesko telo je objekat u svemiru koji se stvara sa dodatno zadatim poluprečnikom opisane kružnice u pikselima.Kometa je nebesko telo sive boje (GRAY
). Kometa se oko centra iscrtava kao pravilni petougao sa nasumičnom orijentacijom.- Planeta je nebesko telo koje se stvara sa jednom od sledećih boja: zelena (
GREEN
), plava (BLUE
), žuta (YELLOW
) ili crvena (RED
), svaka sa 25% verovatnoće. Dodatno planeta može sadržati prsten sa 25% verovatnoće. Planeta se icrtava kao krug oko centra zadate boje. Ukoliko sadrži prsten, on se iscrtava kao kružnica oko istog centra duplo većeg poluprečnika. Svemir je aktivno platno (jednu letelicu i celobrojni identifikator istraženosti svemira.Canvas
) sa crnom (BLACK
) pozadinom koje sadrži proizvoljan broj nebeskih tela,Moguće je dodati nebesko telo. Na svakih 100 milisekundi, svemir iscrtava sva sadržana nebeska tela,letelicu i istraženost svemira,a potom simulira kretanje kroz svemir tako što svim nebeskim telima pomera y-koordinatu za 5 piksela,povećava istraženost za 1 i proverava da li je došlo do preklapanja letelice i nebeskih tela. Ukoliko je došlo do preklapanja sa kometom, svemir se zaustavlja, a ukoliko je došlo do preklapanja sa planetom, istraženost se povećava za još 100.Moguće je pokrenuti,privremeno zaustaviti, nastavitii trajno završiti aktivnost svemira.Aktivni generator nebeskih tela se stvara sa zadatim svemirom. Na svakih 900 milisekundi, generator pravi kometu(75% verovatnoće) ili planetu (25% verovatnoće)čija je x- koordinata centra nasumična vrednost između 0 i 200, y-koordinata centra 0, a poluprečnik opisane kružnice nasumična vrednost između 10 i 30, a potom je dodaje u svemir. Moguće je pokrenuti,privremeno zaustaviti, nastaviti itrajno završiti aktivnost generatora.Simulator je glavni prozor aplikacije širine 200 i visine 400 piksela koji sadrži svemir, panel sa komandama i generator nebeskih tela. Panel sa komandama sadrži dugme sa natpisomdugme sa natpisomPokreni!
,Zaustavi
i dugme sa natpisomNastavi
.Pritiskom na dugmePritiskom na dugmePokreni!
pokreću se svemir i generator nebeskih tela, nakon čega je dugme onemogućeno.Zaustavi
privremeno se zaustavljaju svemir i generator. Pritiskom na dugmeNastavi
, generator i svemir nastavljaju sa radom. Pri stvaranju prozora omogućeno je samo dugmePokreni!
. Pritiskom na dugme pokreni omogućava se dugmeZaustavi
, dok su ostala dva onemogućena. Pritiskom na dugmeZaustavi
, omogućava se dugmeNastavi
, dok su ostala dva onemogućena. Pritiskom na dugmeNastavi
, omogućava se dugmeZaustavi
dok su ostala dva onemogućena.
Klasa/Grupa | Opis funkcionalnosti | Poeni |
---|---|---|
Letelica | Odgovarajuća boja | 5 |
Odgovarajući oblik | 10 | |
Odgovarajući položaj | 5 | |
Generalno se pomera | 10 | |
Ne pomera se van granica ekrana | 5 | |
Pomeranje pri zaustavljenoj/nekativnoj igri | 5 | |
Planeta | Pravilno iscrtavanje uz različite boje | 10 |
Neke planete imaju prsten | 5 | |
Postoji više kometa nego planeta | 5 | |
Svemir | U slučaju kolizije sa planetom istraženost se povećava za 100 | 5 |
U slučaju kolizije sa kometom kraj igre | 5 | |
Ispisivanje teksta za istraženost | 5 | |
Tekst se ažurira na svakih 100ms | 5 | |
Simulator | Postoje dugme za zaustavljanje i nastavljanje | 5 |
Simulacija se zaustavlja | 5 | |
Simulacija se nastavlja | 5 | |
Aktivno je jedno dugme u jednom trenutku | 5 |
LP
Zadatak se pojavio na popravnoj laboratorijskoj vežbi. Postavka osnovnog zadatka je dostupna na stranici predmeta.
Objekat u svemiru se stvara sa zadatim celobrojnim koordinatama centra u dvodimenzionalnom prostoru koje mogu da se dohvate i bojom (Može se odrediti rastojanje između centara dva objekta u svemiru.Color
). Moguće je pojedinačno promeniti svaku od koordinata centra za zadati pomeraj.Moguće je iscrtati objekat u svemiru nad zadatim grafičkim kontekstom (Graphics
).Nebesko telo je objekat u svemiru koji se stvara sa dodatno zadatim poluprečnikom opisane kružnice u pikselima.- Metak je objekat crvene boje (
RED
) koji se dodatno stvara poluprečnikom. Može se proveriti da li je metak uradirio u neko nebesko telo. Udario je ukoliko je rastojanje između njih manje od većeg poluprečnika. Metak se iscrtava kao krug crvene broje. [2] Kometa je nebesko telo sive boje (GRAY
). Kometa se oko centra iscrtava kao pravilni petougao sa nasumičnom orijentacijom.- Zvezda je nebesko telo koje se icrtava kao petokraka zvezda oko centra. Boja je nasumična između žute i crvene[3].
- Aktivno oružje se stvara maksimalnim celobrojnim brojem municije, a sadrži i trenutni broj municije koji može da se dohvati. Trenutni broj municjije pri stvaranju je jednak maksimalnom broju municije. Može da se ispaliti 1 metak dok god ima municije. Na svakih 2 sekunde dodaje se po jedan metak (povećava se broj) u oružje dok god ima mesta. Oružje se može pokrenuti, zaustaviti, nastaviti i trajno zaustaviti.
Svemir je aktivno platno (oružje kapaciteta 3 i proizvoljni broj metaka.Canvas
) sa crnom (BLACK
) pozadinom koje sadrži proizvoljan broj nebeskih tela,Moguće je dodati nebesko telo.Klikom na miš, ispaljuje se metak sa dna svemira, a po x-osi je jednak mestu klika. Metak se može ispaliti samo ako oružje ima municije.Na svakih 100 milisekundi, svemir iscrtava sva sadržana nebeska tela, a potom simulira kretanje kroz svemir tako što svim nebeskim telima pomera y-koordinatu za 5 piksela,dok metke pomera za po 10 piksela po y-osi nagore. Ako se metak sudari sa kometom, uništavaju se i metak i kometa. Ako se metak sudari sa zvezdom, završava se igra. U gornjem levom uglu iscrtava se broj metaka:Municija:
, a zatim onoliko krugova koliko ima metaka. Ako je neki metak ispaljen, crta se prazan krug (bez popune). Prazni meci se predstavljaju na kraju. U slučaju pauziranja, preko trenutnog stanja ekrana se ispisujePAUZA
na centru ekrana, a u slučaju sudara zvezde i metka, na sredini ekrana se ispisujeKRAJ
.Moguće je pokrenuti,privremeno zaustaviti, nastavitii trajno završiti aktivnost svemira.Aktivni generator nebeskih tela se stvara sa zadatim svemirom. Na svakih 900 milisekundi, generator pravi kometu(50% verovatnoće) ili zvedzu (50% verovatnoće)čija je x- koordinata centra nasumična vrednost između 0 i 200, y-koordinata centra 0, a poluprečnik opisane kružnice nasumična vrednost između 10 i 30, a potom je dodaje u svemir. Moguće je pokrenuti,privremeno zaustaviti, nastaviti itrajno završiti aktivnost generatora.Simulator je glavni prozor aplikacije širine 200 i visine 400 piksela koji sadrži svemir, panel sa komandama i generator nebeskih tela. Panel sa komandama sadrži dugme sa natpisomPritiskom na dugmePokreni!
. Pritiskom na dugmePokreni!
pokreću se svemir i generator nebeskih tela, nakon čega je dugme onemogućeno.p
program treba da se pauzira. Ponovnim klikom program se nastavlja. Ukoliko se igra završila usled sudara sa zvezdom, klik je bez efekta.
V2
Zadatak nije došao na laboratorijskim vežbama. Postavka se može naći na stranici predmeta.
Napomene
Sve informacije pisane su po sećanju studenata.