Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Parametry walca
- lPionowych = 20; // Liczba podzialow pionowych
- lPoziomych = 20; // Liczba podzialow poziomych
- promien = 3.0; // Promien walca
- wysokosc = 3.0; // Wysokosc walca
- int zmienna = 5;
- int zmienna2 = 5;
- void powBocznaWalca(float R, float r, float y, float h, int n)
- {
- float alfa;
- int i;
- float x;
- float z;
- glColor3f(0,1,1);
- glBegin(GL_QUAD_STRIP);
- alfa = 360.0/n;
- for(i=0;i<=n;i++)
- {
- x = cos(0.0174532925f*i*alfa);
- z = sin(0.0174532925f*i*alfa);
- glVertex3f(x*R,y+0,z*R);
- glVertex3f(x*r,y+h,z*r);
- }
- x = cos(0.0);
- z = sin(0.0);
- glVertex3f(x*R,y+0,z*R);
- glVertex3f(x*r,y+h,z*r);
- glEnd();
- }
- void RysujKolo(float R, float y, int n)
- {
- float alfa;
- int i;
- float x;
- float z;
- glBegin(GL_TRIANGLE_FAN);
- //glColor3f(1,0.4,1);
- glVertex3f(0,y,0);
- alfa = 360.0f/n;
- for(i=0;i<=n;i++)
- {
- x = cos(0.0174532925f*i*alfa);
- z = sin(0.0174532925f*i*alfa);
- glVertex3f(x*R,y+0,z*R);
- }
- x = cos(0.0);
- z = sin(0.0);
- glVertex3f(x*R,y+0,z*R);
- glEnd();
- }
- void rysowanieWalca(float R, float r, float h, int n, int m) {
- int i;
- float dR, dr, dh, y, tmp1, tmp2;
- dh = h / m;
- for (i = 0; i < m; i++)
- {
- y = dh * i;
- tmp1 = y / h;
- tmp2 = (y + dh) / h;
- dR = R + (r - R) * tmp1;
- dr = R + (r - R) * tmp2;
- powBocznaWalca(dR, dr, y, dh, n);
- }
- glColor3f(1, 0.4, 0.6);
- RysujKolo(R, 0, n);
- glColor3f(1, 1, 0.6);
- RysujKolo(r, h, n);
- }
- rysowanieWalca(1,1,3,zmienna, zmienna2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement