level 11
一柳掩嘴唇丶
楼主
这是我作业的一道题,旋转公式那是对的,为什么结果图形没有旋转呢
,请赐教,万分感谢!
Private Sub Form_Load()
Me.Scale (-500, 500)-(500, -500)
Line (-500, 0)-(500, 0)
Line (0, 500)-(0, -500)
DrawWidth = 5
Me.Circle (0, 0), 0, vbRed
CurrentX = 0: CurrentY = 0: Print "(0,0)"
Dim x1 As Double
Dim y1 As Double
Dim x2 As Double
Dim y2 As Double
Dim x3 As Double
Dim y3 As Double
x1 = InputBox("输入x1")
y1 = InputBox("输入y1")
x2 = InputBox("输入x2")
y2 = InputBox("输入y2")
x3 = InputBox("输入x3")
y3 = InputBox("输入y3")
Line (x1, y1)-(x2, y2), RGB(0, 0, 255)
Line (x2, y2)-(x3, y3), RGB(0, 0, 255)
Line (x3, y3)-(x1, y1), RGB(0, 0, 255)
Dim q As Double
Dim l As Double
Dim m As Double
Dim a As Double
Dim b As Double
Dim c As Double
Dim d As Double
Dim x4 As Double
Dim y4 As Double
Dim x5 As Double
Dim y5 As Double
Dim x6 As Double
Dim y6 As Double
q = InputBox("输入角度")
l = InputBox("输入X方向平移因子")
m = InputBox("输入Y方向平移因子")
a = InputBox("输入放大系数a")
b = InputBox("输入放大系数b")
c = InputBox("输入放大系数c")
d = InputBox("输入放大系数d")
q = q * PI / 180
x4 = x1 * Cos(q) - y1 * Sin(q)
y4 = x1 * Sin(q) + y1 * Cos(q)
x5 = x2 * Cos(q) - y2 * Sin(q)
y5 = x2 * Sin(q) + y2 * Cos(q)
x6 = x3 * Cos(q) - y3 * Sin(q)
y6 = x3 * Sin(q) + y3 * Cos(q)
x4 = x4 + l
y4 = y4 + m
x5 = x5 + l
y5 = y5 + m
x6 = x6 + l
y6 = y6 + m
x4 = a * x4 + c * y4
y4 = b * x4 + d * y4
x5 = a * x5 + c * y5
y5 = b * x5 + d * y5
x6 = a * x6 + c * y6
y6 = b * x6 + d * y6
Line (x4, y4)-(x5, y5), RGB(0, 255, 0)
Line (x5, y5)-(x6, y6), RGB(0, 255, 0)
Line (x6, y6)-(x4, y4), RGB(0, 255, 0)
End Sub



2020年04月28日 06点04分
1
Private Sub Form_Load()
Me.Scale (-500, 500)-(500, -500)
Line (-500, 0)-(500, 0)
Line (0, 500)-(0, -500)
DrawWidth = 5
Me.Circle (0, 0), 0, vbRed
CurrentX = 0: CurrentY = 0: Print "(0,0)"
Dim x1 As Double
Dim y1 As Double
Dim x2 As Double
Dim y2 As Double
Dim x3 As Double
Dim y3 As Double
x1 = InputBox("输入x1")
y1 = InputBox("输入y1")
x2 = InputBox("输入x2")
y2 = InputBox("输入y2")
x3 = InputBox("输入x3")
y3 = InputBox("输入y3")
Line (x1, y1)-(x2, y2), RGB(0, 0, 255)
Line (x2, y2)-(x3, y3), RGB(0, 0, 255)
Line (x3, y3)-(x1, y1), RGB(0, 0, 255)
Dim q As Double
Dim l As Double
Dim m As Double
Dim a As Double
Dim b As Double
Dim c As Double
Dim d As Double
Dim x4 As Double
Dim y4 As Double
Dim x5 As Double
Dim y5 As Double
Dim x6 As Double
Dim y6 As Double
q = InputBox("输入角度")
l = InputBox("输入X方向平移因子")
m = InputBox("输入Y方向平移因子")
a = InputBox("输入放大系数a")
b = InputBox("输入放大系数b")
c = InputBox("输入放大系数c")
d = InputBox("输入放大系数d")
q = q * PI / 180
x4 = x1 * Cos(q) - y1 * Sin(q)
y4 = x1 * Sin(q) + y1 * Cos(q)
x5 = x2 * Cos(q) - y2 * Sin(q)
y5 = x2 * Sin(q) + y2 * Cos(q)
x6 = x3 * Cos(q) - y3 * Sin(q)
y6 = x3 * Sin(q) + y3 * Cos(q)
x4 = x4 + l
y4 = y4 + m
x5 = x5 + l
y5 = y5 + m
x6 = x6 + l
y6 = y6 + m
x4 = a * x4 + c * y4
y4 = b * x4 + d * y4
x5 = a * x5 + c * y5
y5 = b * x5 + d * y5
x6 = a * x6 + c * y6
y6 = b * x6 + d * y6
Line (x4, y4)-(x5, y5), RGB(0, 255, 0)
Line (x5, y5)-(x6, y6), RGB(0, 255, 0)
Line (x6, y6)-(x4, y4), RGB(0, 255, 0)
End Sub





