Search - Articles
DevASP.NET for ASP.NET, VB.NET, XML and C# (C-Sharp) Developers Tuesday, March 03, 2009
Dev Articles
Search Directory
ASP.NET
VB.Net
C-Sharp
SQL Server
 

Draw closed Curve on form using Graphics class in vb.net - C #.net.

Author: Maliha Atteeq
Download Source Code : 1023_app_grap.zip

In this simple article you will learn that how to draw closed Curve on the form using Graphics class in vb and C #.net.

 Graphics:

This is the very important class for making graphics of your own using c#. This class cannot be inherited. This class provides us a number of different methods for graphics creation. By using these methods you can create graphics of your own choice.

In this article I will tell you that how can we draw closed Curve using system.drawing.graphics.

Closed Curve draw:

In order to draw closed Curve on the form, firstly you should know the behavior of the form. While playing with the graphics you must keep the following point in your mind:

You can’t draw graphics on simple load event of the form. To create graphics on the form, you must override the onpaint() function of the form.

The syntax of the onpaint() function is:

C#:

protected override void OnPaint (PaintEventArgs e)

{

}

VB:

Dim e As PaintEventArgs

 

Me.OnPaint(e)

Closed Curve draw function:

In order to draw a closed Curve, graphics class provides us a function named as drawClosedCurve(). It is an overloaded function. By using this function you can draw closed Curve on the form. Depending on your requirement you can use any of the overloaded function. I use the following:

This function takes two arguments. The first argument is the object of Pen class. Pen class has the four overloaded constructor. You can use any of the constructors to initialize the object of pen class. I use the following:

C#:

System.Drawing.Pen pen = new System.Drawing.Pen(System.Drawing.Color.Black);

VB:

Dim pen As New System.Drawing.Pen(System.Drawing.Color.Black)

 

The second argument is an array of point class. This class also provides us four overloaded constructor, depending on your requirement you can use any of them. I use the following constructor. This constructor takes two arguments as an parameter which are x,y coordinate. All these are of type int.

C#:

 

            System.Drawing.Point[] points = new Point[5];

            points[0] = new Point(50, 100);

            points[1] = new Point(100, 150);

            points[2] = new Point(200, 250);

            points[3] = new Point(270, 178);

            points[4] = new Point(294, 365);

VB:

Dim points As System.Drawing.Point() = New Point(5) {}

        points(0) = New Point(75, 35)

        points(1) = New Point(85, 35)

        points(2) = New Point(45, 95)

        points(3) = New Point(65, 25)

        points(4) = New Point(65, 55)

 

Pass all these arguments in the DrawClosedCurve() function provided by the graphics class. Once you do this then you have to call the Dispose() method to epose your created arc. The dispose() function takes no argument as a paameter. This function simply expose your graphics on the form. You have to call this function with the object of graphics and also with the object of pen class.

 

C#:

       pen.Dispose();

 

VB:

               pen.Dispose();

 

To demonstrate make a new window application and write the following code on form’s onpaint event:

C#:

protected override void OnPaint(PaintEventArgs e)

        {

            System.Drawing.Pen pen = new System.Drawing.Pen(System.Drawing.Color.BlueViolet);

            System.Drawing.Graphics obj;

            obj = this.CreateGraphics();

            System.Drawing.Point[] points = new Point[5];

            points[0] = new Point(50, 100);

            points[1] = new Point(100, 150);

            points[2] = new Point(200, 250);

            points[3] = new Point(270, 178);

            points[4] = new Point(294, 365);

            obj.DrawClosedCurve(pen, points);

            obj.Dispose();

        }

 

VB:

Protected Overloads Overrides Sub OnPaint(ByVal e As PaintEventArgs)

        Dim pen As New System.Drawing.Pen(System.Drawing.Color.BlueViolet)

        Dim obj As System.Drawing.Graphics

        obj = Me.CreateGraphics()

        Dim points As System.Drawing.Point() = New Point(5) {}

        points(0) = New Point(50, 100)

        points(1) = New Point(100, 150)

        points(2) = New Point(200, 250)

        points(3) = New Point(270, 178)

        points(4) = New Point(294, 365)

        obj.DrawClosedCurve(pen, points)

        obj.Dispose()

    End Sub

Now write the following code on FORM LOAD event:

C#:

private void Form1_Load(object sender, EventArgs e)

        {

            this.Text = "DEVASP CLOSED CURVE DRAW APPLICATION";

           

        }

Vb:

Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)

 

        Me.Text = "DEVASP CLOSED CURVE DRAW APPLICATION"

    End Sub

This simple article tells that how to draw closed Curve using Graphics class in vb and C #.net.

   
Add Article Comment:
Name :
Email Address :
   
Comments :
 
   
<< Draw a Bezier on form using Graphics class vb.net - C #.net.

Disclaimer - Privacy
© 2002-2017 DevASP.net