Vježbe 5

Uvod u OpenGL

Primjer: Rješenje zadatka 2.5. uz pomoć OpenGL rutina -   GLelipse.c
2.5. Kombiniranjem odgovarajućih geometrijskih transformacija nacrtajte sljedeće elipse:
  1. Poluosi a = 6, b = 3, velika os elipse je pod kutem od -30° prema osi x, a središte je u točki (4, 0) (nacrtajte crvenom bojom);
  2. Isto kao i gore, ali promijenite poredak transformacija: prvo pomaknite, pa rotirajte (nacrtajte plavom bojom);
  3. Poluosi a = 4, b = 1, elipsa je najprije zarotirana za 75°, potom pomaknuta za 3 u desno, te zrcaljena na osi y (zelena boja).
  Primjer:   applet
Uputa: U prozoru prikažite xy ravninu u rasponu od -10 do 10 po x koordinati, te pripadajući raspon po y koordinati, tako da je omjer x prema y 1 : 1. Neka je y = 0 na polovici visine prozora.
5.1. Riješite prvi zadatak s kolokvija korištenjem OpenGL rutina.
K.1. Na zaslonu prikažite dio ravnine tako da je u donjem lijevom uglu koordinata (-5, -4), a u gornjem desnom (9, 4) i crvenom bojom nacrtajte pravac y(x) = -2 x + 4. Crnom bojom nacrtajte elipsu s poluosima a = 3 i b = 1 i središtem u ishodištu, te ju zrcalite na zadanom pravcu i nacrtajte u plavoj boji.   Primjer:   applet
Primjer: Rješenje zadatka 3.5 uz pomoć OpenGL rutina -   GLkocka.c
3.5. Animirajte rotaciju kocke i to tako da se kocka istovremeno okreće oko sve tri koordinatne osi (koristite ortogonalno projiciranje).
5.2. Nacrtajte stožac kojem je baza u xz ravnini, vrh na y-osi, a visina mu je tri puta veća od polumjera baze - plašt treba prikazati sa 16 linija. Animirajte rotaciju stožca oko osi koja prolazi kroz obod baze i vrh stožca (tj. leži na plaštu), a nalazi se u xy ravnini - koristite ortogonalno projiciranje. Nacrtajte pravac na kojem leži os rotacije.