Садржај
ОпенГЛ или Опен Грапхицс Либрари је графички АПИ (Интерфејс за програмирање апликација) за писање 2Д и 3Д апликација на различитим програмским језицима и платформама. Може се користити за приказивање било чега, од једноставних, примитивних објеката до сложених 3Д сцена. Опен ГЛ се широко користи у рачунарском дизајну, научној визуелизацији, симулацији лета и видео играма. Иако ОпенГл нема методе за директно цртање круга, могуће је направити један помоћу низа линија. Да бисте нацртали круг, мораћете да имате основно знање ОпенГЛ-а.
Корак 1
Направите основни програм с приказом ОпенГЛ. Ако нисте упознати са овим поступком, постоји водич на ОпенГЛ страници.
Корак 2
Додајте датотеку матх.х.хеадер у свој програм уношењем следећег кода на почетку програма: #инцлуде Започните метод круга додавањем следећег кода пре приказивања функције повратног позива: воид дравЦирцле (ГЛинт к, ГЛинт и, радијус ГЛинт, инт нум_линес) {} Променљиве „к“ и „и“ користиће се за дефинисање средишта круга у вашем прозору, док „радијус“ утврђује радијус круга. Цели број "нум_линес" је број линија употребљених за састављање круга. Што је већи овај број, круг ће се појавити глађи. У кључеве додајте следећи код за конфигурацију: плутајући угао ГО инт нум_линес ГО глЦолор3ф (0.0, 0.0, 0.0) ГО. Променљива „угао“ садржаће угао линија коришћених за конструкцију круга. Позивањем функције глЦолор3ф () боја линија се поставља на црну, при чему серија од три 0 одговара интензитету црвене, зелене и плаве боје на скали од 0 до 1. Додајте следећи код испод функције глЦолор3ф () из корака 4: глБегин (ГЛ_ЛИНЕ_ЛООП) ГО То ОпенГЛ-у говори да све наредне линије укључују цртање линија. Конкретно, нацртаће „ГЛ_ЛИНЕ_ЛООП“, што је низ повезаних линија. Унесите следећи код за петљу фор након позива глБегин (): за (инт и = 0; и <број_реда; и ++) {угао = и * 2 * М_ПИ / нум_лине; глВертек2ф (к + (цос (угао) * полупречник), и + (син (угао) * полупречник)); } Ова петља чини три ствари. Прво се итерира према вредности "нум_линес", где је нум_линес цео број, цртајући линију у свакој итерацији и резултирајући кругом који се састоји од равних линија нум_линес. Друго, израчунава угао правих у односу на средиште круга у радијанима. „М_П“ је константа дефинисана у матх.х која представља пи. На крају, позив на глВертек2ф () израчунава координате крајњих тачака линија. Након петље, унесите следећи ред кода: глЕнд () ГО Ово ће рећи ОпенГЛ-у да сте завршили са цртањем линија. Да бисте нацртали круг у сцени, додајте позив из методе дравЦирцле () функцији приказа повратног позива програма, која мора бити припремљена у кораку 1. Наведите вредности к, и, полупречника и нум_лине, где к и и представљају тачку у вашој сцени радијус је полупречник круга, а нум_линес је број линија које чине круг. Опет, ако нисте упознати са ОпенГЛ-ом и приказом повратног позива, погледајте упутство за ОпенГЛ. Саставите и покрените свој програм. Ако сте правилно унели функције, требало би да се компајлира без грешака. Ако сте навели вредности за к, и и радијус, требали бисте видети црни круг приказан на белој позадини.3. корак
4. корак
Корак 5
Корак 6
Корак 7
Корак 8
Корак 9