level 15
是正六边形么?如果是的话,就是六等分一个圆周,把6个等分点依次连线即可;让这6个点在圆周上旋转起来,六边形就绕着中心转了
这个圆的圆心坐标和半径都是已知的,这样6个等分点的坐标都很容易求出来
2023年04月30日 13点04分
2
level 6
感觉更像一道几何题,可以这样:
pi = 4 * Atn(1) '代替派常数
X1 = 4000 + m * Math.Cos(a)
Y1 = 4000 + m * Math.Sin(a)
X2 = 4000 + m * Math.Cos(a - pi / 3)
Y2 = 4000 + m * Math.Sin(a - pi / 3)
.......
2023年05月01日 14点05分
3
level 8
Dim x As Single, Y As Single
Dim xA As Single, yA As Single
Dim xB As Single, yB As Single
Dim xC As Single, yC As Single
Dim xD As Single, yD As Single
Dim xE As Single, yE As Single
Dim xF As Single, yF As Single
Const R = 2000
Const PI = 3.141526
Private Sub Form_Load()
'计算圆心的x轴xx、y轴yy
XX = Me.Width \ 2:YY = Me.Height \ 2
End Sub
Private Sub Timer1_Timer()
Cls
Static t As Integer
xA = XX + R * Cos((0 + t) * PI / 180): yA = YY - R * Sin((0 + t) * PI / 180) 'A点
xB = XX + R * Cos((60 + t) * PI / 180): yB = YY - R * Sin((60 + t) * PI / 180) 'B点
xC = XX + R * Cos((120 + t) * PI / 180): yC = YY - R * Sin((120 + t) * PI / 180) 'C点
xD = XX + R * Cos((180 + t) * PI / 180): yD = YY - R * Sin((180 + t) * PI / 180) 'D点
xE = XX + R * Cos((240 + t) * PI / 180): yE = YY - R * Sin((240 + t) * PI / 180) 'E点
xF = XX + R * Cos((300 + t) * PI / 180): yF = YY - R * Sin((300 + t) * PI / 180) 'F点
Line (xA, yA)-(xB, yB)
Line -(xC, yC)
Line -(xD, yD)
Line -(xE, yE)
Line -(xF, yF)
Line -(xA, yA)
t = t + 1
End Sub
这个是正六边形按逆时针旋转
如果是按顺时针旋转,可改变角度
如果是不规则六边形,则可改变R和角度
旋转速度通过Interval属性改变
2023年05月18日 01点05分
5
level 8
Const R1 = 2000, R2 = 1000
Const PI = 3.1415926
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Cls
xA = X + R1 * Cos(225 * PI / 180): yA = Y - R1 * Sin(225 * PI / 180)
xB = X + R1 * Cos(315 * PI / 180): yB = Y - R1 * Sin(315 * PI / 180)
xC = X + R2 * Cos(45 * PI / 180): yC = Y - R2 * Sin(45 * PI / 180)
xD = X + R2 * Cos(135 * PI / 180): yD = Y - R2 * Sin(135 * PI / 180)
Line (xA, yA)-(xB, yB)
Line -(xC, yC)
Line -(xD, yD)
Line -(xA, yA)
End Sub
2023年05月18日 10点05分
6