Drawing Ellipses and Circles in GDI+


This article has been excerpted from book "Graphics Programming with GDI+ ".

figure-3.5.jpg

FIGURE 3.5: An ellipse

Drawing Ellipses and Circles

An ellipse is a circular boundary within a rectangle, where each opposite point has the same distance from a fixed point, called the center of the ellipse. An ellipse within a square is called a circle. Figure 3.5 shows an ellipse with its height, width, and center indicated.

To draw an ellipse, you need to specify the outer rectangle. GDI+ takes care of the rest. DrawEllipse draws an ellipse defined by a rectangle specified by a pair of coordinates, a height, and a width (an ellipse with equal height and width is a circle). DrawEllipse has four overloaded methods.

public
void DrawEllipse(Pen, Rectangle);
public
void DrawEllipse(Pen, RectangleF);
public
void DrawEllipse(Pen, int, int, int, int);
public
void DrawEllipse(Pen, float, float, float, float);

To draw an ellipse, an application creates a pen and four coordinates (or a rectangle), and then calls DrawEllipse. Listing 3.5 draws ellipses with different options.

LISTING 3.5: Drawing ellipses

private
void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
   
// Create Pens
    Pen redPen = new Pen(Color.Red, 6);
    
Pen bluePen = new Pen(Color.Blue, 4);
    
Pen greenPen = new Pen(Color.Green, 2);
    
// Create a rectangle
    Rectangle rect = new Rectangle(80, 80, 50, 50);
    
// Draw ellipses
    e.Graphics.DrawEllipse(greenPen, 100.0F, 100.0F, 10.0F, 10.0F);
    e.Graphics.DrawEllipse(redPen, rect);
    e.Graphics.DrawEllipse(bluePen, 60, 60, 90, 90);
    e.Graphics.DrawEllipse(greenPen, 40.0F, 40.0F, 130.0F, 130.0F);
    
//Dispose of objects
    redPen.Dispose();
    greenPen.Dispose();
    bluePen.Dispose();
}

Figure 3.6 shows the output from Listing 3.5

fig3.6.gif

FIGURE 3.6: Drawing ellipse

Conclusion

Hope the article would have helped you in understanding drawing Ellipses and Circles in GDI+. Read other articles on GDI+ on the website.

bookGDI.jpg This book teaches .NET developers how to work with GDI+ as they develop applications that include graphics, or that interact with monitors or printers. It begins by explaining the difference between GDI and GDI+, and covering the basic concepts of graphics programming in Windows.


Similar Articles
Mindcracker
Founded in 2003, Mindcracker is the authority in custom software development and innovation. We put best practices into action. We deliver solutions based on consumer and industry analysis.