OpenGL Circle Draw #Web Development #Root #By Sayed Ahmed

in C/C++
// Create the circle in the coordinates origin
const int sides = 20;  // The amount of segment to create the circle
const double radius = 5; // The radius of the circle

glBegin(GL_LINE_LOOP);

  for (int a = 0; a < 360; a += 360 / sides)
  {
    double heading = a * 3.1415926535897932384626433832795 / 180;
    glVertex2d(cos(heading) * radius, sin(heading) * radius);
  }

glEnd();

---

in C# and TAO FrameWork
// Create the circle in the coordinates origin
  for (int a = 0; a < 360; a += 360 / sides)
  {
    heading = a * MathEx.deg2Rad;
    vertices.Add(new Vector3d(Math.Cos(heading) * this.radius, Math.Sin(heading) * this.radius, position.Z));
  }

Rendering
Gl.glBegin(Gl.GL_LINE_LOOP);
  for (int i = 0; i < vertices.Count; i++)
    Gl.glVertex3dv(vertices[i]);
Gl.glEnd();

Reference:
http://www.opengl.org/discussion_boards/showthread.php/169668-How-to-draw-circle



From: http://sitestree.com/?p=951
Categories:Web Development, Root, By Sayed Ahmed
Tags:
Post Data:2014-04-06 01:01:42