永发信息网

VB编程实现:将一个半径为r的圆周等分为n 份,然后用直线将这些点两两相连。--请高手解答一下

答案:3  悬赏:20  手机版
解决时间 2021-02-10 22:49
VB编程实现:将一个半径为r的圆周等分为n 份,然后用直线将这些点两两相连。--请高手解答一下
最佳答案
Private Type POINTAPI
x As Long
y As Long
End Type

Const PI = 3.1415926

Private Sub Form_Click()
Dim x#, y#, i%, j%, k%, n%, r%
Dim P() As POINTAPI
Me.Cls
k = Me.ScaleWidth / Me.ScaleHeight
r = Val(InputBox("请输入圆半径", , 100))
n = Val(InputBox("请输入等分数", , 10))
x = 2 * PI / n
Me.Scale (-150, 150 / k)-(150, -150 / k)
Me.Circle (0, 0), r, vbRed
ReDim P(n - 1)
For i = 0 To n - 1
y = (i - 1) * x
P(i).x = r * Cos(y)
P(i).y = r * Sin(y)
Next i
For i = 0 To n - 2
For j = i + 1 To n - 1
Me.Line (P(i).x, P(i).y)-(P(j).x, P(j).y), vbGreen
Next j, i

End Sub

Private Sub Form_Load()
Me.Height = Me.Width
End Sub
全部回答
你让蜘蛛教你吧,反正出来是个蜘蛛网!!!呵呵呵
半径为r的圆周上第i个等分点的坐标为 Xi=r*cos(i*t)+X0 Yi=r*sin(i*t)+Y0 其中t为等分角 t=360/n 连线的话用两个for循环 for(i=0,i
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯