逐点比较法直线插补VB程序直线程序
逐点比较法直线插补VB程序直线程序
根据该插补软件框图
Sub 偏差计算()
偏差 = Abs(x终点) × z动点 - x动点 × Abs(z终点)
End Sub
Sub 插补()
Dim c As Integer
Select Case 象限标志
Case 1: '第一象限插补
Do Until x动点 + z动点 >= 总步数
If 偏差 >= 0 Then
x动点 = x动点 + 1:
Line -Step(0, x步长), vbRed
Else
z动点 = z动点 + 1:
Line -Step(z步长, 0), vbRed
End If
偏差计算
Loop
Case 2: '第二象限插补
c = x终点: x终点= z终点: z终点= -c
c = x步长: x步长 = z步长: z步长 = -c
Do Until x动点 + z动点 >= 总步数
If 偏差 >= 0 Then
x动点 = x动点 + 1:
Line -Step(x步长, 0), vbRed
Else
z动点 = z动点 + 1:
Line -Step(0, z步长), vbRed
End If
偏差计算
Loop
Case 3: '第三象限插补
x步长 = -x步长: z步长 = -z步长
Do Until x动点 + z动点 >= 总步数
If 偏差 >= 0 Then
x动点 = x动点 + 1:
Line -Step(0, x步长), vbRed
Else
z动点 = z动点 + 1:
Line -Step(z步长, 0), vbRed
End If
偏差计算
Loop
Case 4: '第四象限插补
c = x终点: x终点= -z终点: z终点 = c
c = x步长: x步长 = -z步长: z步长 = c
Do Until x动点 + z动点 >= 总步数
If 偏差 >= 0 Then
x动点 = x动点 + 1: Line -Step(x步长, 0), vbRed
Else
z动点 = z动点 + 1: Line -Step(0, z步长), vbRed
End If
偏差计算
Loop
End Select
End Sub