Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

Come eseguire il rendering di un cerchio in OpenGL

OpenGL , o Open Graphics Library , è una API grafiche computer ( Application Programming Interface ) per scrivere applicazioni di computer grafica 2D e 3D attraverso linguaggi di programmazione e piattaforme . Esso può essere utilizzato per rendere qualsiasi cosa, da oggetti primitivi , semplici scene 3D complesse . OpenGL è ampiamente usato nel disegno professionale assistita da computer , visualizzazione scientifica , simulazione di volo e videogiochi. Mentre OpenGL non ha metodi per disegnare direttamente un cerchio , un cerchio può essere costruito utilizzando una serie di linee . Avrete bisogno di una conoscenza di base di OpenGL per disegnare un cerchio . Cose che ti serviranno
Computer con supporto OpenGL
editor di testo e linguaggio C o C strumenti di sviluppo ambiente
compilazione Show More Istruzioni
1

Impostare un programma di base che mostra una finestra OpenGL viewport . Se avete poca dimestichezza con questo processo , c'è un tutorial sulle basi di OpenGL
2

Aggiungere il file di intestazione math.h al programma inserendo il codice riportato di seguito all'inizio del programma . : # include Questo vi offre i cos () e sin () funzioni ( seno e coseno ) necessari per calcolare il cerchio .
3

Inizia il tuo metodo di cerchio aggiungendo il seguente codice prima della funzione di callback di visualizzazione : void drawCircle ( GLint x , GLint y , raggio GLint , int num_lines ) { } le variabili \\ " x \\ " e \\ " y \\ " verrà utilizzato per impostare il centro del cerchio nella vostra finestra , mentre \\ " raggio \\ " , naturalmente , imposta raggio del cerchio . L' intero \\ " num_lines \\ " è il numero di linee utilizzate per comporre il cerchio . Più alto è il numero , più uniforme il cerchio sembrerà essere
4

Aggiungere il seguente codice di set-up all'interno delle parentesi : . Angolo galleggiante GO num_lines int VAI glColor3f ( 0.0, 0.0 , 0.0) GO la variabile \\ "angolo \\ " conterrà l'angolo delle linee utilizzate per costruire il cerchio . La chiamata al glColor3f () imposta il colore delle linee al nero , dove la serie di tre 0s corrisponde alla intensità del rosso , verde e blu su una scala da 0 a 1.
5

Aggiungere il codice riportato di seguito il glColor3f ( ) chiamata dal Passo 4 : glBegin ( GL_LINE_LOOP ) GO Questo dice a OpenGL che eventuali linee seguenti riguardano le linee di disegno. In particolare, questo disegna un \\ " GL_LINE_LOOP , \\ ", che disegna una serie di linee collegate
6

Inserisci il seguente codice per -loop dopo l' glBegin ( ) chiamata : . For (int i = 0 , i < num_lines ; i + + ) { angolo = i * 2 * M_PI /num_lines ; glVertex2f ( x + (cos ( angolo) * raggio ) , y + ( sin ( angolo) * raggio ) );} Questo ciclo compie tre cose . Primo, itera num_lines volte, dove num_lines è un numero intero , tracciando una linea in ogni iterazione e conseguente cerchio composto di linee rette num_lines . Secondo , calcola l' angolo delle linee relativo al centro del cerchio in radianti . \\ " M_PI \\" è una variabile costante definita in math.h che rappresenta pi . Infine , il glVertex2f ( ) chiamata calcola la ( x , y) le coordinate dei punti finali delle linee
7

Dopo il ciclo for , immettere la seguente riga di codice : . GlEnd ( ) GO Questo dice a OpenGL si è fatto disegnare linee .
8

per disegnare il cerchio nella vostra scena , aggiungere una chiamata al metodo drawCircle () per la funzione di callback display del programma , che dovrebbe essere stato preparato nella Fase 1 . Specificare i valori per x , y , raggio , e num_lines , dove xey rappresentano un punto entro la scena , un raggio è il raggio del cerchio , e num_lines è il numero di linee che formano il cerchio . Anche in questo caso , se non si ha familiarità con OpenGL e il callback di visualizzazione, fare riferimento al tutorial OpenGL .
9

compilare ed eseguire il programma . Se avete inserito correttamente la funzione , dovrebbe compilare senza errori . Se è stato specificato valori validi per x , y e raggio , si dovrebbe vedere un cerchio nero visualizzati su uno sfondo bianco .

 

Programmazione © www.354353.com