您现在的位置:

时间分割法圆弧插补参考VB程序

圆弧(切线法):

Sub 插补()

Dim 区间符号 As Integer

Dim x, y, z As Double

Dim K

Dim 径向误差, R As Double

    顺逆符号判别

    读数据

    If R < 0.001 Then

    Else

    Ts = Ts / 60000

    步长 = f × Ts:  

    K = 步长 / R

    x动点对圆心 = -x圆心对起点 / 系数: z动点对圆心 = -z圆心对起点 / 系数

    End If

    x = ((x动点对圆心 - x终点对圆心) ^ 2 + (z动点对圆心 - z终点对圆心) ^ 2) ^ 0.5

    y = 3 × 步长 × 系数

    Do Until x <= y

       deltaZ = -顺逆符号 × K × x动点对圆心

       deltaX = 顺逆符号 × K × z动点对圆心

       Line -Step(deltaZ, deltaX), vbRed

       x动点对圆心 = x动点对圆心 + deltaX: z动点对圆心 = z动点对圆心 + deltaZ:

x动点对原点 = x动点对圆心 + x圆心对原点: y动点对原点 = y动点对圆心 + y圆心对原点: z动点对原点 = z动点对圆心 + z圆心对原点:      

       x = ((x动点对圆心 - x终点对圆心) ^ 2 + (z动点对圆心 - z终点对圆心) ^  2) ^ 0.5:

       y = 3 × 步长 × 系数

       R = Sqr(x动点对圆心 ^ 2 + z动点对圆心 ^ 2)

    Loop

End Sub