Advertisement
Guest User

Untitled

a guest
Apr 24th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.65 KB | None | 0 0
  1. void Pawcio(float r)
  2. {
  3.     GLfloat PI = 3.14f;
  4.     glPushMatrix();
  5.         glBegin(GL_TRIANGLE_FAN);
  6.             for (double i = 0; i <= PI; i += PI / 8.0f)
  7.             {
  8.                 glVertex3d(sin(i) * r, cos(i) * r, 0.0);
  9.             }
  10.         glEnd();
  11.         glBegin(GL_TRIANGLE_FAN);
  12.         for (double i = 0; i <= PI; i += PI / 8.0f)
  13.         {
  14.             glColor3f(1.0f, 1.0f, 1.0f);
  15.             glVertex3d(sin(i) * (r- 0.75), cos(i) * (r- 0.75), 0.1);
  16.         }
  17.         glEnd();
  18.         glColor3f(0.0f, 0.0f, 0.0f);
  19.         glTranslated(-0.4, r, 0.0);
  20.         glLineWidth(2.0f);
  21.         glBegin(GL_LINES);
  22.             glVertex3d(0.0, 0.0, 0.0);
  23.             glVertex3d(0.0, -4*r, 0.0f);
  24.         glEnd();
  25.  
  26.         glTranslated(r + 0.6, -3*r, 0.0f);
  27.  
  28.         glBegin(GL_TRIANGLE_FAN);
  29.             for (double i = 0; i <= 2 * PI; i += PI / 8.0f)
  30.             {
  31.                 glColor3f(0.0f, 0.0f, 0.0f);
  32.                 glVertex3d(sin(i) * r, cos(i) * r, 0.0);
  33.             }
  34.         glEnd();
  35.        
  36.         glBegin(GL_TRIANGLE_FAN);
  37.             for (double i = 0; i <= 2 * PI; i += PI / 8.0f)
  38.             {
  39.                 glColor3f(1.0f, 1.0f, 1.0f);
  40.                 glVertex3d(sin(i) * (r- 0.75), cos(i) * (r- 0.75), 0.1);
  41.             }
  42.         glEnd();
  43.  
  44.         glColor3f(0.0f, 0.0f, 0.0f);
  45.  
  46.         glTranslated(r+0.2, r, 0.0);
  47.  
  48.         glBegin(GL_LINE_STRIP);
  49.             glVertex3d(0.0, 0.0, 0.0);
  50.             glVertex3d(0.0, -2*r, 0.0f);
  51.  
  52.             glVertex3d(0.0, -2 * r, 0.0f);
  53.             glVertex3d(0.25 * r, -2 * r, 0.0f);
  54.         glEnd();
  55.  
  56.         glTranslated(0.25*r, 0.0, 0.0);
  57.  
  58.         glBegin(GL_LINE_STRIP);
  59.             glVertex3d(0.0, 0.0, 0.0);
  60.             glVertex3d(0.5 * r, -2 * r, 0.0);
  61.  
  62.             glVertex3d(0.5 * r, -2 * r, 0.0);
  63.             glVertex3d(r, 0.0, 0.0);
  64.  
  65.             glVertex3d(r, 0.0, 0.0);
  66.             glVertex3d(1.5*r, -2 * r, 0.0);
  67.  
  68.             glVertex3d(1.5*r, -2 * r, 0.0);
  69.             glVertex3d(2*r, 0.0, 0.0);
  70.         glEnd();
  71.  
  72.         glTranslated(3*r, -r, 0.0);
  73.  
  74.         glBegin(GL_TRIANGLE_FAN);
  75.         for (double i = 0; i >= -PI; i -= PI / 8.0f)
  76.         {
  77.             glVertex3d(sin(i) * r, cos(i) * r, 0.0);
  78.         }
  79.         glEnd();
  80.  
  81.         glBegin(GL_TRIANGLE_FAN);
  82.         for (double i = 0; i >= -PI; i -= PI / 8.0f)
  83.         {
  84.             glColor3f(1.0f, 1.0f, 1.0f);
  85.             glVertex3d(sin(i) * (r-0.75), cos(i) * (r-0.75), 0.1);
  86.         }
  87.         glEnd();
  88.  
  89.         glColor3f(0.0f, 0.0f, 0.0f);
  90.  
  91.         glTranslated(0.35 * r, r, 0.0);
  92.  
  93.         glBegin(GL_LINE_STRIP);
  94.             glVertex3d(0.0, 0.0, 0.0);
  95.             glVertex3d(0.0, -2 * r, 0.0);
  96.         glEnd();
  97.  
  98.         glTranslated(0.0, 0.5 * r, 0.0);
  99.  
  100.         glPointSize(2.0f);
  101.        
  102.         glBegin(GL_POINTS);
  103.             glVertex3d(0.0, 0.0, 0.0);
  104.         glEnd();
  105.  
  106.         glTranslated(1.25 * r, -1.5 * r, 0.0);
  107.  
  108.         glBegin(GL_TRIANGLE_FAN);
  109.             for (double i = 0; i <= 2 * PI; i += PI / 8)
  110.             {
  111.                 glVertex3d(sin(i) * r, cos(i) * r, 0.0);
  112.             }
  113.         glEnd();
  114.  
  115.         glBegin(GL_TRIANGLE_FAN);
  116.         for (double i = 0; i <= 2 * PI; i += PI / 8)
  117.         {
  118.             glColor3f(1.0f, 1.0f, 1.0f);
  119.             glVertex3d(sin(i) * (r - 0.75), cos(i) * (r - 0.75), 0.1);
  120.         }
  121.         glEnd();
  122.  
  123.     glPopMatrix();
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement