當前位置: 首頁>>代碼示例>>VB.NET>>正文


VB.NET Matrix.RotateAt方法代碼示例

本文整理匯總了VB.NET中System.Drawing.Drawing2D.Matrix.RotateAt方法的典型用法代碼示例。如果您正苦於以下問題:VB.NET Matrix.RotateAt方法的具體用法?VB.NET Matrix.RotateAt怎麽用?VB.NET Matrix.RotateAt使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在System.Drawing.Drawing2D.Matrix的用法示例。


在下文中一共展示了Matrix.RotateAt方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的VB.NET代碼示例。

示例1: DrawVerticalStringFromBottomUp

Public Sub DrawVerticalStringFromBottomUp(ByVal e As PaintEventArgs)

    ' Create the string to draw on the form.
    Dim text As String = "Can you read this?"

    ' Create a GraphicsPath.
    Dim path As New System.Drawing.Drawing2D.GraphicsPath

    ' Add the string to the path; declare the font, font style, size, and
    ' vertical format for the string.
    path.AddString(text, Me.Font.FontFamily, 1, 15, New PointF(0.0F, 0.0F), _
        New StringFormat(StringFormatFlags.DirectionVertical))

    ' Declare a matrix that will be used to rotate the text.
    Dim rotateMatrix As New System.Drawing.Drawing2D.Matrix

    ' Set the rotation angle and starting point for the text.
    rotateMatrix.RotateAt(180.0F, New PointF(10.0F, 100.0F))

    ' Transform the text with the matrix.
    path.Transform(rotateMatrix)

    ' Set the SmoothingMode to high quality for best readability.
    e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.HighQuality

    ' Fill in the path to draw the string.
    e.Graphics.FillPath(Brushes.Red, path)

    ' Dispose of the path.
    path.Dispose()

End Sub
開發者ID:VB.NET開發者,項目名稱:System.Drawing.Drawing2D,代碼行數:32,代碼來源:Matrix.RotateAt

示例2: RotateAtExample

Public Sub RotateAtExample(ByVal e As PaintEventArgs)
    Dim myPen As New Pen(Color.Blue, 1)
    Dim myPen2 As New Pen(Color.Red, 1)
    Dim rotatePoint As New PointF(150.0F, 50.0F)

    ' Draw the rectangle to the screen before applying the
    ' transform.
    e.Graphics.DrawRectangle(myPen, 150, 50, 200, 100)

    ' Create a matrix and rotate it 45 degrees.
    Dim myMatrix As New Matrix
    myMatrix.RotateAt(45, rotatePoint, MatrixOrder.Append)

    ' Draw the rectangle to the screen again after applying the
    ' transform.
    e.Graphics.Transform = myMatrix
    e.Graphics.DrawRectangle(myPen2, 150, 50, 200, 100)
End Sub
開發者ID:VB.NET開發者,項目名稱:System.Drawing.Drawing2D,代碼行數:18,代碼來源:Matrix.RotateAt

示例3: MatrixRotateAt

' 導入命名空間
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms

public class MatrixRotateAt
   public Shared Sub Main
        Application.Run(New RotateForm)
   End Sub
End class



Public Class RotateForm
    Inherits System.Windows.Forms.Form

    Public Sub New()
        MyBase.New()

        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(280, 214)
        Me.Name = "RotateForm"
        Me.Text = "RotateForm"

    End Sub

    Sub RotateForm_Paint(ByVal sender As Object, ByVal e As PaintEventArgs) Handles MyBase.Paint
        Dim g As Graphics = e.Graphics
        Dim x As Integer = 400
        Dim y As Integer = 400
        Dim width As Integer = 250
        Dim height As Integer = 250
        Dim textWidth As Single = g.MeasureString("00", Me.Font).Width
        Dim length As Single = 250
        Dim textRect As RectangleF = New RectangleF(x + length, y - Me.Font.GetHeight(g) / 2, length, textWidth)
        Dim format As StringFormat = New StringFormat()
        format.Alignment = StringAlignment.Near
        format.LineAlignment = StringAlignment.Center

        Dim i As Integer
        For i = 0 To 360 Step 5
            Dim matrix As Matrix = New Matrix()
            matrix.RotateAt(i, New PointF(x, y))
            g.Transform = matrix
            g.DrawLine(Pens.Black, x, y, x + length, y)
            g.DrawString(i.ToString(), Me.Font, Brushes.Black, textRect, format)
        Next
    End Sub
End Class
開發者ID:VB程序員,項目名稱:System.Drawing.Drawing2D,代碼行數:49,代碼來源:Matrix.RotateAt


注:本文中的System.Drawing.Drawing2D.Matrix.RotateAt方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。