Transform PathGradientBrush : PathGradientBrush « 2D Graphics « VB.Net Tutorial






Transform PathGradientBrush
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms

public class TransformPathGradientBrush
   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)
        Dim g As Graphics = Me.CreateGraphics()
        g.Clear(Me.BackColor)
        ' Create a GraphicsPath object
        Dim path As New GraphicsPath
        ' Create a rectangle and add it to path
        Dim rect As New Rectangle(20, 20, 200, 200)
        path.AddRectangle(rect)
        ' Create a path gradient brush
        Dim pgBrush As New PathGradientBrush(path.PathPoints)
        ' Set its center and surrounding colors
        pgBrush.CenterColor = Color.Green
        pgBrush.SurroundColors = New Color() {Color.Blue}
        ' Create matrix
        Dim M As New Matrix
        ' Translate
        M.Translate(20.0F, 10.0F, MatrixOrder.Prepend)
        ' Rotate
        M.Rotate(10.0F, MatrixOrder.Prepend)
        ' Scale
        M.Scale(2, 1, MatrixOrder.Prepend)
        ' shear
        M.Shear(0.05F, 0.03F, MatrixOrder.Prepend)
        ' Apply matrix to the brush
        pgBrush.MultiplyTransform(M)
        ' Use brush after transformation
        ' to fill a rectangle
        g.FillRectangle(pgBrush, 20, 100, 400, 400)
        ' Dispose
        pgBrush.Dispose()
        g.Dispose()



  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








17.58.PathGradientBrush
17.58.1.Create PathGradientBrushCreate PathGradientBrush
17.58.2.Fill a rectangle with PathGradientBrushFill a rectangle with PathGradientBrush
17.58.3.Fill an ellipse setting CenterColor and SurroundColorsFill an ellipse setting CenterColor and SurroundColors
17.58.4.Fill an ellipse using SetBlendTriangularShapeFill an ellipse using SetBlendTriangularShape
17.58.5.Fill an ellipse using SetSigmaBellShapeFill an ellipse using SetSigmaBellShape
17.58.6.Triangular PathGradientBrushTriangular PathGradientBrush
17.58.7.Quad PathGradientBrushQuad PathGradientBrush
17.58.8.Diamond PathGradientBrushDiamond PathGradientBrush
17.58.9.PathGradientBrush by GraphicsPathPathGradientBrush by GraphicsPath
17.58.10.PathGradientBrush and its SurroundColorsPathGradientBrush and its SurroundColors
17.58.11.Transform PathGradientBrushTransform PathGradientBrush
17.58.12.PathGradientBrush.SurroundColorsPathGradientBrush.SurroundColors
17.58.13.PathGradientBrush.BlendPathGradientBrush.Blend
17.58.14.PathGradientBrush.InterpolationColorsPathGradientBrush.InterpolationColors