Hvad er en OpenGL® -cirkel?
Der er ingen reel indbygget form primitiv til et grundlæggende åbent grafikbibliotek (OpenGL®) cirkel, så tegning af en cirkel involverer at følge en simpel algoritme for at bestemme placeringen af punkterne, hvorefter punkterne kan forbindes med linjer for at danne cirklen. I de fleste tilfælde er en OpenGL®-cirkel til en realtidsudgivelsesapplikation tilnærmelsesvis og er faktisk sammensat af en række lige linjer, der ligner en cirkel, når afstanden mellem slutpunkterne på linjerne er kort nok. Et trick, der kan hjælpe med at gøre en cirkel glat, er at muliggøre blanding og bruge den glatte linjetegningstilstand til at reducere udseendet af vinklerne, hvor to linjer forbinder på cirkelens omkreds. En anden måde at tegne en cirkel på er at bruge OpenGL®-værktøjsform primitiv kendt som en disk, som i det væsentlige er en to-dimensionel (2D) cirkel, der har en yderligere indre cirkel, der kan indstilles til at matche den ydre kantdiameter for at få noget ineffektivt tegne en OpenGL®Cirkel.
Den enkle definition af en cirkel er en 2D -form, hvor hvert kantpunkt er nøjagtigt den samme afstand fra et givet midtpunkt. Den mest basale algoritme til tegning af en OpenGL® -cirkel er at plottepoint fra en centerkoordinat ved hjælp af sinus- og kosinusfunktionerne i en løkke, der træder gennem graderne i en vinkel op til 360 °. Trin 1 grad ad gangen er imidlertid ret ineffektiv, så trinnene udføres normalt i større trin. Jo større trin er, jo mere kantet vil cirklen se ud, idet det ultimative eksempel er en cirkel trukket med kun fire punkter, hvilket ville gøre en firkant.
Under hvert trin i bestemmelsen af koordinaten for et punkt på kanten af en OpenGL® -cirkel kan der trækkes en linje fra det sidste punkt til det aktuelle punkt. Det er generelt hurtigere at bruge en linjestrimmel til at fremstille en komplet cirkel end at trække separate linjer individuelt. En gang thE -punkter, der omfatter cirklen, er blevet beregnet, de kan opbevares i en matrix og oversættes ligesom ethvert sæt OpenGL® vertices.
En OpenGL® -disk er en formprimitiv, som OpenGL® Utility Library kan trække naturligt. Det er lavet af en ydre cirkel og en indre cirkel, hvor området mellem de indre og ydre cirkler er solide og fyldt. OpenGL® -disken kan bruges til at tegne en OpenGL® -cirkel ved at indstille den indre radius til at matche den ydre radius, selvom denne teknik betyder, at cirklen virkelig trækkes to gange på grund af de indre og ydre kanter og kunne efterlade nogle grafiske artefakter, når de roteres i forskellige vinkler.