Saturs
OpenGL jeb Open Graphics Library ir grafiskā API (Application Programming Interface), kas paredzēta 2D un 3D lietojumprogrammu rakstīšanai dažādās programmēšanas valodās un platformās. To var izmantot, lai renderētu jebko, sākot no vienkāršiem, primitīviem objektiem līdz sarežģītām 3D ainām. Open GL tiek plaši izmantots datoru projektēšanā, zinātniskajā vizualizācijā, lidojumu simulācijā un video spēlēs. Pat ja OpenGl nav metožu, kā tieši uzzīmēt apli, ir iespējams to izveidot, izmantojot virknes līniju. Lai uzzīmētu apli, jums būs jābūt pamatzināšanām par OpenGL.
1. solis
Izveidojiet pamata programmu ar OpenGL skatu. Ja jums nav zināms šis process, OpenGL lapā ir apmācība.
2. solis
Pievienojiet Math.h.header failu savai programmai, programmas sākumā ievadot šādu kodu: #include Pirms atzvanīšanas funkcijas parādīšanas sāciet apļa metodi, pievienojot šādu kodu: void drawCircle (GLint x, GLint y, GLint rādiuss, int num_lines) {} Mainīgie "x" un "y" tiks izmantoti, lai definētu apļa centru jūsu logā, savukārt "rādiuss" nosaka apļa rādiusu. Vesels skaitlis "num_lines" ir rindu skaits, ko izmanto apļa sastādīšanai. Jo lielāks šis skaitlis, jo vienmērīgāk parādīsies aplis. Atslēgās pievienojiet šādu konfigurācijas kodu: pludiņa leņķis GO int num_lines GO glColor3f (0.0, 0.0, 0.0) GO. Mainīgais "leņķis" satur to līniju leņķi, kuras izmantoja apļa izveidošanai. Izsaucot funkciju glColor3f (), līniju krāsa tiek iestatīta uz melnu, kur trīs 0 sērija atbilst sarkanās, zaļās un zilās krāsas intensitātei skalā no 0 līdz 1. Pievienojiet šo kodu zem funkcijas glColor3f () no 4. darbības: glBegin (GL_LINE_LOOP) IET Tas norāda OpenGL, ka jebkuras nākamās līnijas ir saistītas ar līniju vilkšanu. Konkrēti, tas uzzīmēs “GL_LINE_LOOP”, kas ir savienotu līniju virkne. Pēc glBegin () izsaukuma ievadiet šādu kodu ciklam for: par (int i = 0; i <rindas_numurs; i ++) {leņķis = i * 2 * M_PI / num_līnija; glVertex2f (x + (cos (leņķis) * rādiuss), y + (sin (leņķis) * rādiuss)); } Šī cilpa veic trīs lietas. Pirmkārt, tas atkārtojas atbilstoši skaitļa "num_lines" vērtībai, kur num_lines ir vesels skaitlis, katrā atkārtojumā ievilkot līniju un iegūstot apli, kas sastāv no taisnām līnijām num_lines. Otrkārt, tas radiānos aprēķina līniju leņķi attiecībā pret apļa centru. "M_P" ir matemātikā h definēta konstante, kas apzīmē pi. Visbeidzot, izsaukums uz glVertex2f () aprēķina līniju gala punktu koordinātas. Pēc saites uz ievadiet šādu koda rindu: glEnd () AIZIET Tas paziņos OpenGL, ka esat pabeidzis līniju zīmēšanu. Lai ainā uzzīmētu apli, pievienojiet zvanu no metodes drawCircle () programmas atzvanīšanas displeja funkcijai, kas jāsagatavo 1. solī. Norādiet x, y, rādiusa un num_lines vērtības, kur x un y apzīmē punktu jūsu ainā rādiuss ir apļa rādiuss, un num_lines ir līniju skaits, kas veido apli. Atkal, ja neesat pazīstams ar OpenGL un atzvanīšanas displeju, skatiet OpenGL apmācību. Sastādiet un palaidiet savu programmu. Ja funkcijas ievadījāt pareizi, tai vajadzētu sastādīt bez kļūdām. Ja esat norādījis vērtības x, y un rādiusam, jums vajadzētu redzēt melnu apli, kas parādīts uz balta fona.3. solis
4. solis
5. solis
6. solis
7. solis
8. solis
9. solis