VB.Net Tutorial/2D Graphics/Point PointF — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
|
Текущая версия на 12:54, 26 мая 2010
Содержание
Add first point and size to another point
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class MainClass
public Shared Sub Main
Dim sz As New Size(12, 12)
" Create a Point
Dim pt As New Point(20, 20)
" Add poitn and size and copy to point
pt.X += sz.Width
pt.Y += sz.Height
Console.WriteLine("Addition :" + pt.ToString())
End Sub
End class
Addition :{X=32,Y=32}
Draw line using PointF structure
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class DrawLineUsingPointFStructure
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 blackPen As New Pen(Color.Black, 4)
"
"
Dim ptf1 As New PointF(20.0F, 20.0F)
Dim ptf2 As New PointF(200.0F, 200.0F)
e.Graphics.DrawLine(blackPen, ptf1, ptf2)
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
Draw line using Point structure
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class DrawLineUsingPointStructure
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 blackPen As New Pen(Color.Black, 4)
"
"
Dim pt1 As New Point(20, 20)
Dim pt2 As New Point(20, 200)
e.Graphics.DrawLine(blackPen, pt1, pt2)
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
Point.Ceiling
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class MainClass
public Shared Sub Main
Dim pt1 As New PointF(30.6F, 30.8F)
Dim pt4 As Point = Point.Ceiling(pt1)
Console.WriteLine(pt4.ToString())
End Sub
End class
{X=31,Y=31}
PointF and PointDouble
Imports System.Drawing
Imports System.Drawing.Drawing2D
Public Class Tester
Public Shared Sub Main
" ----- Original PointF version.
Dim singlePoint As New PointF(1 / 17, Math.PI)
Console.WriteLine("PointF: " & singlePoint.ToString())
Console.WriteLine("X: " & singlePoint.X)
" ----- New Point2D version.
Dim doublePoint As New Point2D(1 / 17, Math.PI)
Console.WriteLine("Point2D: " & doublePoint.Tostring())
Console.WriteLine("X: " & doublePoint.X)
End Sub
End Class
Public Class Point2D
Public X As Double
Public Y As Double
Public Sub New(ByVal xPoint As Double, _
ByVal yPoint As Double)
Me.X = xPoint
Me.Y = yPoint
End Sub
Public Overrides Function Tostring() As String
Return "{X=" & X & ",Y=" & Y & "}"
End Function
End Class
PointF: {X=0.05882353, Y=3.141593} X: 0.05882353 Point2D: {X=0.0588235294117647,Y=3.14159265358979} X: 0.0588235294117647
Point.Round
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class MainClass
public Shared Sub Main
Dim pt1 As New PointF(30.6F, 30.8F)
Dim pt4 As Point = Point.Round(pt1)
Console.WriteLine(pt4.ToString())
End Sub
End class
{X=31,Y=31}
Point.Truncate
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class MainClass
public Shared Sub Main
Dim pt1 As New PointF(30.6F, 30.8F)
Dim pt4 As Point = Point.Truncate(pt1)
Console.WriteLine(pt4.ToString())
End Sub
End class
{X=30,Y=30}
Subtract point and size
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class MainClass
public Shared Sub Main
" Create a Size
Dim sz As New Size(12, 12)
" Create a Point
Dim pt As New Point(20, 20)
" Subtract point and size
pt.X -= sz.Width
pt.Y -= sz.Height
Console.WriteLine("Subtraction :" + pt.ToString())
End Sub
End class
Subtraction :{X=8,Y=8}
Use Point
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class UsePoint
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 pt As New Point(50, 50)
Dim newPoint As Point = Point.Empty
newPoint.X = 100
newPoint.Y = 200
Dim g As Graphics = Graphics.FromHwnd(Me.Handle)
Dim pn As New Pen(Color.Blue, 4)
g.DrawLine(pn, pt, newPoint)
pn.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
Use PointF
Imports System.Drawing
Imports System.Drawing.Drawing2D
Imports System.Windows.Forms
public class UsePointF
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 pt As New PointF(50.0F, 50.0F)
Dim newPoint As PointF = PointF.Empty
newPoint.X = 100.0F
newPoint.Y = 200.0F
Dim g As Graphics = Graphics.FromHwnd(Me.Handle)
Dim pn As New Pen(Color.Blue, 4)
g.DrawLine(pn, pt, newPoint)
pn.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