Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class BezierCurveAndItsOutline
public Shared Sub Main
Application.Run(New Form1)
End Sub
End class
public class Form1
Inherits System.Windows.Forms.Form
Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
' Define the Bezier curve's control points.
Dim pts() As Point = { _
New Point(10, 10), _
New Point(200, 10), _
New Point(50, 200), _
New Point(200, 150), _
New Point(250, 50), _
New Point(250, 200), _
New Point(100, 250) _
}
Dim dashed_pen As New Pen(Color.Black, 0)
dashed_pen.DashStyle = Drawing2D.DashStyle.Dash
For i As Integer = 0 To pts.Length - 2
e.Graphics.DrawLine(dashed_pen, pts(i), pts(i + 1))
Next i
' .
e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
Dim bez_pen As New Pen(Color.Black, 3)
e.Graphics.DrawBeziers(bez_pen, pts)
End Sub
Public Sub New()
MyBase.New()
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(292, 273)
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
End Sub
End Class
|