当前位置: 首页>>代码示例>>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;未经允许,请勿转载。