Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2020
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. // Parametry walca
  2. lPionowych = 20; // Liczba podzialow pionowych
  3. lPoziomych = 20; // Liczba podzialow poziomych
  4. promien = 3.0; // Promien walca
  5. wysokosc = 3.0; // Wysokosc walca
  6. int zmienna = 5;
  7. int zmienna2 = 5;
  8.  
  9.  
  10. void powBocznaWalca(float R, float r, float y, float h, int n)
  11. {
  12. float alfa;
  13. int i;
  14. float x;
  15. float z;
  16. glColor3f(0,1,1);
  17. glBegin(GL_QUAD_STRIP);
  18.  
  19. alfa = 360.0/n;
  20. for(i=0;i<=n;i++)
  21. {
  22. x = cos(0.0174532925f*i*alfa);
  23. z = sin(0.0174532925f*i*alfa);
  24.  
  25. glVertex3f(x*R,y+0,z*R);
  26. glVertex3f(x*r,y+h,z*r);
  27. }
  28.  
  29.  
  30. x = cos(0.0);
  31. z = sin(0.0);
  32.  
  33. glVertex3f(x*R,y+0,z*R);
  34. glVertex3f(x*r,y+h,z*r);
  35.  
  36. glEnd();
  37. }
  38.  
  39. void RysujKolo(float R, float y, int n)
  40. {
  41. float alfa;
  42. int i;
  43. float x;
  44. float z;
  45.  
  46. glBegin(GL_TRIANGLE_FAN);
  47. //glColor3f(1,0.4,1);
  48. glVertex3f(0,y,0);
  49.  
  50. alfa = 360.0f/n;
  51. for(i=0;i<=n;i++)
  52. {
  53. x = cos(0.0174532925f*i*alfa);
  54. z = sin(0.0174532925f*i*alfa);
  55.  
  56. glVertex3f(x*R,y+0,z*R);
  57. }
  58.  
  59.  
  60. x = cos(0.0);
  61. z = sin(0.0);
  62.  
  63. glVertex3f(x*R,y+0,z*R);
  64.  
  65. glEnd();
  66. }
  67.  
  68.  
  69. void rysowanieWalca(float R, float r, float h, int n, int m) {
  70. int i;
  71. float dR, dr, dh, y, tmp1, tmp2;
  72. dh = h / m;
  73. for (i = 0; i < m; i++)
  74. {
  75. y = dh * i;
  76. tmp1 = y / h;
  77. tmp2 = (y + dh) / h;
  78. dR = R + (r - R) * tmp1;
  79. dr = R + (r - R) * tmp2;
  80. powBocznaWalca(dR, dr, y, dh, n);
  81. }
  82. glColor3f(1, 0.4, 0.6);
  83. RysujKolo(R, 0, n);
  84. glColor3f(1, 1, 0.6);
  85. RysujKolo(r, h, n);
  86.  
  87. }
  88.  
  89. rysowanieWalca(1,1,3,zmienna, zmienna2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement