Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void RysujStozek(double R1, double R2, double H) {
- float x, y, z, fi, OD, DO, OD1, DO1, R = R1;
- const long double PI = 3.14,
- EPS = PODZIAL_X,
- EPS2 = PODZIAL_Y;
- OD1 = 0.0;
- DO1 = 2.0001 * PI;
- OD = 0.0;
- DO = 2.0001 * PI;
- glBegin(GL_TRIANGLE_STRIP);
- for (y = 0;
- (y <= H) && (R >= R2); y += H / EPS, R -=
- ((R1 - R2) / EPS)) {
- for (fi = OD1; fi < DO1; fi += PI / EPS2) {
- x = R * cos(fi);
- z = R * sin(fi);
- glVertex3f(x, y, z);
- x = (R - ((R1 - R2) / EPS)) * cos(fi +
- PI / EPS2);
- z = (R - ((R1 - R2) / EPS)) * sin(fi +
- PI / EPS2);
- glVertex3f(x, (y + H / EPS), z);
- }
- }
- glEnd();
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0.0, 0.0, 0.0);
- for (fi = OD; fi <= DO; fi += PI / EPS2) {
- x = R1 * cos(fi);
- z = R1 * sin(fi);
- glVertex3f(x, 0, z);
- }
- glEnd();
- glBegin(GL_TRIANGLE_FAN);
- glVertex3f(0, H, 0);
- for (fi = OD; fi < DO; fi += PI / EPS2) {
- x = R2 * cos(fi);
- z = R2 * sin(fi);
- glVertex3f(x, H, z);
- }
- glEnd();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement