''' <summary>
''' Draws primitives (rectangle, ellipse, arc, pie, curve) on specified drawing engine.
''' </summary>
''' <param name="drawingEngine">Drawing engine.</param>
''' <param name="area">Area to draw objects in.</param>
Public Shared Sub DrawPrimitivesExample(drawingEngine As DrawingEngine, area As RectangleF)
Using brush As IDrawingBrush = drawingEngine.DrawingFactory.CreateSolidBrush(Color.LightGreen)
Using pen As IDrawingPen = drawingEngine.DrawingFactory.CreatePen(Color.Red, 2F)
' draw rectangle
Dim figureRect As New RectangleF(area.X, area.Y, area.Width * 0.47F, area.Height * 0.47F)
drawingEngine.FillRectangle(brush, figureRect)
drawingEngine.DrawRectangle(pen, figureRect)
' draw ellipse
figureRect = New RectangleF(area.Width * 0.53F, area.Y, area.Width * 0.47F, area.Height * 0.47F)
drawingEngine.FillEllipse(brush, figureRect)
drawingEngine.DrawEllipse(pen, figureRect)
' draw arc
figureRect = New RectangleF(area.X, area.Height * 0.53F, area.Width * 0.47F, area.Height * 0.47F)
drawingEngine.FillArc(brush, figureRect, 90, 140)
drawingEngine.DrawArc(pen, figureRect, 90, 140)
' draw pie
drawingEngine.FillPie(brush, figureRect, -50, 50)
drawingEngine.DrawPie(pen, figureRect, -50, 50)
' create graphics path
Using path As IGraphicsPath = drawingEngine.DrawingFactory.CreateGraphicsPath()
' create curve points
Dim startPoint As New PointF(area.Width * 0.53F, area.Height * 0.53F)
Dim curvePoints As PointF() = New PointF() {startPoint, New PointF(startPoint.X * 1.3F, startPoint.Y * 1.8F), New PointF(startPoint.X * 1.7F, startPoint.Y * 1.2F), New PointF(area.Width * 0.99F, area.Height * 0.99F)}
' add curve to path
path.AddCurve(curvePoints, 0.5F)
' draw path
drawingEngine.FillPath(brush, path)
drawingEngine.DrawPath(pen, path)
End Using
End Using
End Using
End Sub