|
void DiskApprox(int n, double radius, float x, float y)
{
/*
n - hany oldalu szabalyos sokszoggel kozelitunk (n legalább 3)
radius - a sokszog kore irhato kor sugara
x, y - a sokszog kore irhato kor kozeppontjanak koordinatai
*/
int i;
GLfloat angle;
if(n < 3)
n = 3;
glBegin(GL_POLYGON);
for(i = 0, angle = 0.0; i < n; i++, angle += 2.0 * GL_PI / n)
{
glVertex2f(x + radius * cos(angle), y + radius * sin(angle));
}
glEnd();
}
|
Sokszögrajzoló: Készítsünk OpenGL programot szabályos sokszög modellezésére. A kurzormozgató nyilak segítségével interaktívan változtathassuk a szabályos sokszög oldalainak számát és a köré írható kör sugarát. Használjuk ki, hogy a szabályos sokszög csúcsai egy körvonalon helyezkednek el, egyenlő ívekre osztva azt. Az F1 billentyű lenyomásával választhassunk a kitöltött és körvonalas megjelenítési módok között.
![]() |
Windows: shapes.exe glut32.dll Linux: /pub/szgrafika/szamitogepes_grafika/Tutors.linux/shapes Bal egérgomb: paramétermódosítás. Jobb egérgomb: opciók (mindkét panelen!). |