Advertisement
TheVarins

stozek

Feb 3rd, 2020
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.73 KB | None | 0 0
  1. void RysujStozek() {
  2.     float temp_r = R;
  3.     float podzial_r = (R-r) / podzialp;
  4.     float temp_h = 0;
  5.     float podzial_h = h / podzialp;
  6.  
  7.  
  8.     glBegin(GL_TRIANGLE_FAN);
  9. //dolna podstawa
  10.     glVertex3f(0, 0, 0);
  11.     for (int b = 0; b * dAlfa <= 360.0; b++)
  12.     {
  13.         glVertex3f(R * cos(DEG2RAD(b * dAlfa)), 0.0, R * sin(DEG2RAD(b * dAlfa)));
  14.     }
  15.     glEnd();
  16.     for (int a = 0; a < podzialp; a++) {
  17.        
  18.         float i = 0;
  19.         glBegin(GL_QUADS);
  20.         glVertex3f(temp_r * cos(DEG2RAD(i * dAlfa)), temp_h, temp_r * sin(DEG2RAD(i * dAlfa))); //wierzchołek dolny, r obecne
  21.         glVertex3f((temp_r - podzial_r) * cos(DEG2RAD(i * dAlfa)),  // wierzchołek dolny, r następne
  22.             temp_h + podzial_h, (temp_r - podzial_r) * sin(DEG2RAD(i * dAlfa)));
  23.         for (i = 1; i * dAlfa < 360; i++)
  24.         {
  25.             glVertex3f((temp_r - podzial_r) * cos(DEG2RAD(i * dAlfa)), // wierzchołek górny, r następne
  26.                 temp_h + podzial_h, (temp_r - podzial_r) * sin(DEG2RAD(i * dAlfa)));
  27.             glVertex3f(temp_r * cos(DEG2RAD(i * dAlfa)), temp_h, temp_r * sin(DEG2RAD(i * dAlfa))); //wierzchołek górny, r obecne
  28.  
  29.             glVertex3f(temp_r * cos(DEG2RAD(i * dAlfa)), temp_h, temp_r * sin(DEG2RAD(i * dAlfa)));
  30.             glVertex3f((temp_r - podzial_r) * cos(DEG2RAD(i * dAlfa)),
  31.                 temp_h + podzial_h, (temp_r - podzial_r) * sin(DEG2RAD(i * dAlfa)));
  32.         }
  33.         glVertex3f((temp_r - podzial_r) * cos(DEG2RAD(360)),
  34.             temp_h + podzial_h, (temp_r - podzial_r) * sin(DEG2RAD(360)));
  35.         glVertex3f(temp_r * cos(DEG2RAD(360)), temp_h, temp_r * sin(DEG2RAD(360)));
  36.  
  37.  
  38.         temp_r -= podzial_r;
  39.         temp_h += podzial_h;
  40.         glEnd();
  41.     }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement