OpenGL, ou la bibliothèque Open Graphics , est une API graphique de l'ordinateur (interface de programmation d'application ) pour écrire des applications d'infographie 2D et 3D dans votre langue et plates-formes de programmation . Il peut être utilisé pour rendre quelque chose à partir d'objets simples et primitifs à des scènes 3D complexes . OpenGL est largement utilisé dans la conception professionnelle assistée par ordinateur , la visualisation scientifique , la simulation de vol et les jeux vidéo . Alors que OpenGL n'a pas de méthodes pour dessiner directement un cercle, un cercle peut être construit en utilisant une série de lignes . Vous aurez besoin d'une connaissance de base de OpenGL pour dessiner un cercle . Choses que vous devez
ordinateur avec support OpenGL
éditeur de texte et le langage C ou C outils environnement de développement
compilation Afficher plus Instructions
1
Mettre en place un programme de base qui affiche une fenêtre OpenGL fenêtre. Si vous n'êtes pas familier avec ce processus , il ya un tutoriel sur les bases de l' OpenGL
2
Ajoutez le fichier d'en-tête math.h à votre programme en entrant le code suivant au début du programme. : # include Cela vous offrir les cos ( ) et sin () fonctions ( cosinus et le sinus ) nécessaires au calcul du cercle.
3 Commencez votre méthode du cercle en ajoutant le code suivant avant votre fonction de rappel d'affichage : drawCircle vide ( GLint x , y GLint , le rayon de reflet, int nombre_lignes ) {} les variables \\ "x \\" et \\ "y \\" sera utilisé pour régler le centre du cercle dans votre fenêtre , tandis que \\ " rayon \\" , bien sûr, définit le rayon du cercle. L'entier \\ " nombre_lignes \\" est le nombre de lignes utilisées pour composer le cercle. Plus le nombre est élevé, plus lisse le cercle semble être
4
Ajoutez le code d'ouverture de dossier suivant à l'intérieur des parenthèses: . Float angle GO GO int nombre_lignes glColor3f (0.0, 0.0, 0.0 ) GO la variable \\ " angle \\" contiendra l'angle des lignes utilisées pour construire le cercle. L'appel à la glColor3f () fixe la couleur des lignes de noir , où la série de trois 0s correspond à l'intensité de rouge , vert et bleu sur une échelle de 0 à 1.
5 < p> Ajoutez le code suivant en dessous de la glColor3f () d'appel à partir de l'étape 4 : glBegin ( GL_LINE_LOOP ) GO Cela indique à OpenGL que toutes les lignes suivantes comportent des lignes de dessin. Concrètement, cela dessine un \\ " GL_LINE_LOOP , \\ " qui établit une série de lignes connectées
6
Entrez le code ci-dessous pour en boucle après la glBegin () appel : . For (int i = 0; i < nombre_lignes ; i + +) { angle = i * 2 * M_PI /nombre_lignes ; glVertex2f ( x + (cos (angle) * rayon) , y + (sin ( angle) * rayon) );} Cette boucle accomplit trois choses . Tout d'abord, il parcourt nombre_lignes fois , où nombre_lignes est un nombre entier , le dessin d'une ligne à chaque itération , et résultant dans un cercle constitué de lignes droites nombre_lignes . D'autre part, il calcule l' angle des lignes par rapport au centre du cercle, en radians. \\ " M_PI \\" est une variable constante définie dans math.h représentant pi . Enfin, le glVertex2f () appel calcule le ( x , y) coordonnées des points d'extrémité des lignes
7
Après la boucle for , entrez la ligne de code suivante: . GlEnd ( ) GO Cette indique à OpenGL que vous avez terminé tracer les lignes.
8
Pour dessiner le cercle dans votre scène , ajoutez un appel à la méthode drawCircle ( ) à la fonction de rappel d'affichage de votre programme, vous devriez avoir préparé à l'étape 1 . Spécifier des valeurs pour x, y , le rayon et nombre_lignes , où x et y représentent un point dans la scène , un rayon est le rayon du cercle , et nombre_lignes est le nombre de lignes constituant le cercle . Encore une fois, si vous n'êtes pas familier avec OpenGL et le rappel d'affichage , reportez-vous au tutoriel OpenGL.
9
compiler et exécuter votre programme. Si vous avez entré correctement la fonction , il devrait compiler sans erreur. Si vous avez spécifié des valeurs valides pour x, y et de rayon , vous devriez voir un cercle noir s'affiche sur un fond blanc.