(图形学)图形旋转-vb
Option Explicit
Dim x(5) As Integer, y(5) As Integer, xx(5) As Integer, yy(5) As Integer
Dim i As Integer, j As Integer, k As Integer
Dim f As Single
Private Sub Command1_Click()
Picture1.Line (-1000, 0)-(1000, 0), vbGreen
Picture1.Line (0, -1000)-(0, 1000), vbGreen
End Sub
Private Sub Command2_Click()
For i = 0 To 4
x(i) = Val(Text1(i).Text)
y(i) = Val(Text2(i).Text)
Next i
For i = 0 To 3
Picture1.Line (x(i), y(i))-(x(i + 1), y(i + 1)), vbRed
Next i
Picture1.Line (x(0), y(0))-(x(2), y(2)), vbRed
End Sub
Private Sub Command3_Click()
For i = 0 To 4
x(i) = Val(Text1(i).Text)
y(i) = Val(Text2(i).Text)
Next i
For i = 0 To 3
Picture1.Line (x(i), y(i))-(x(i + 1), y(i + 1)), vbGreen
Next i
f = 72 * 3.14 / 180
For j = 0 To 4
For i = 0 To 4
xx(i) = x(i) * Cos(f) - y(i) * Sin(f)
yy(i) = x(i) * Sin(f) + y(i) * Cos(f)
x(i) = xx(i)
y(i) = yy(i)
Next i
For k = 0 To 3
Picture1.Line (x(k), y(k))-(x(k + 1), y(k + 1)), vbGreen
Next k
Picture1.Line (x(0), y(0))-(x(2), y(2)), vbRed
Next j
End Sub
Private Sub Command4_Click()
Picture1.Cls
End Sub
Private Sub Form_Load()
With Picture1
.Width = 4000
.Height = 4000
.ScaleTop = 1000
.ScaleHeight = -2000
.ScaleLeft = -1000
.ScaleWidth = 2000
End With
End Sub